破解centos7密码及shell基础

今日内容

1、操作系统相关

单用户模式破解root密码

​ 用户概念是由操作系统提供的

​ bios>>>mbr>>>grub>>>内核

​ 用户概念介于grub与内核之间

单用户模式

​ 1、开机时进入如下界面,(按下方向键盘,阻止系统自动继续)

​ 2.按e键出现下面界面

3 .按方向键下,定位到最后,找到“ro”一行,ro的意思是read only,将“ro”替换成 rw init=/sysroot/bin/sh,如下图

4.按Ctrl-x 保存并进入单用户模式

5.执行chroot /sysroot。其中chroot命令用来切换系统,/sysroot/目录就是原始系统

6.如果要修改root密码

passwd是修改root密码的命令,touch /.autorelabel 执行这行命令作用是让SELinux生效(或者干脆关闭SELinux) 如果不行,密码不会生效。按Ctrl+D,执行reboot重启生效。

grub加密

centos7.2 + 中引入了新的实用程序“ grub2-setpassword ”

1) 执行 grub2-setpassword 命令
# grub2-setpassword
Enter password:
Confirm password:
2)如果现在重新启动系统并尝试修改引导条目,系统将要求提供凭据,但是可以在没有凭据的情况下修改引导条目。为了阻止未经授权的修改和未经授权的启动,我们需要对 /boot/grub2/grub.cfg 文件进行更改

打开文件并使用密码搜索需要保护的启动条目,它以menuentry开头。找到条目后,从中删除 --unrestricted 参数

3) reboot 重启验证,只有当输入正确的用户名和密码时,才能进入 grub 菜单或者修改引导条目。

光盘修复模式/救援模式

bios>>>mbr>>>grub>>>内核
在bios>>>mbr之间,选择其他的系统盘对进行修复

#1、进入bios、从光盘启动
#2、点击Troubleshooting
#3、进入到Troubleshooting界面
选择:Rescue a CentOS Linux system
​
#4、三:进入到Rescue选项   按 ENTER键 选1 ,其他选项意思如下
1)continue:救援模式程序会自动查找系统中已有的文件系统,并可读写挂载到/mnt/sysimage目录下。
2)Read-Only:会以只读的方式挂载已有的文件系统。
3)Skip to shell: 手动挂载
    
#5、sh切换bash模式
chroot /mnt/sysimage/
​
#6、执行命令
passwd root

# 7.退出
	exit
# 8.重启
	reboot




bios加密

按F2进入bios界面,找到security下的set supervisor password 回车,输入密码即可,F10保存并退出

1624347723903

shell

一、什么是shell

Shell 中文意思贝壳,寓意类似内核的壳。Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务,简而言之就是只要能够操作应用程序的接口都能够称为SHELL。狭义的shell指的是命令行方面的软件,广义的SHELL则包括图形界面。
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。

二、shell交互式环境

登录用户后进入解释器bash的交互式环境,可以敲命令,交互式环境的命令提示符如下

[root@xxx ~]#       #号代表超级管理员用户对应的命令行
[root@xxx ~]$       $号代表普通用户对应的命令行
​
root==>当前登录的用户
@=====>分隔符
xxx==>主机名
~====>当前所在的路径
​
​
// 创建普通系统用户
useradd wuxie
// 交互式设置密码
passwd 123
// 非交互式设置密码
echo "123" | passwd --stdin wuxie

三、shell命令语法

三部分组成

1、命令:要执行的操作(必选)
2、选项:如何具体执行操作,通常以 -, --, +开头(可选)
3、参数:具体操作的对象(可选)

ps:unix认为命令运行完毕后没有提示便是最好的提示,即结果正确,linux继承unix的优良传统


四、shell基本命令

# ls 常见选项
  ls -a all,查看目录下的所有文件,包括隐藏文件
  ls -l 长列表显示
  ls -h human以人性化方式显示出来
  ls -d 只列出目录名,不列出其他内容
  ls -t 按修改时间排序
  ls -r 逆序排列
  ls -i 显示文件的incode号
  
 
 时间
 查看时间
  date
 设置时间
  date -s "2021-06-18 09:26:33"
  或者
 timedatectl set-time '16:10:40 2022-11-12 13:14:15' 
 设置时区
 查看
 timedatectl status
 列出可用时区
 timedatectl list-timezones
 设置
 timedatectl set-timezone "Asia/Shanghai"
 timedatectl set-timezone UTC
 
 重启
shutdown -r 10 // 10分钟后重启
shutdown -r 0 // 立即重启
shutdown -r now // 立即重启
shutdown -r 11:30 // 定点重启
init 6 // 立即重启
reboot // 立即重启

关机
shutdown -h 10 // 10分钟后关机
shutdown -h 0 // 立刻关机
shutdown -h now // 立刻关机
shutdown -h 11:30 // 定点关机
halt // 立即停止系统,需要人工关闭电源
poweroff // 立即停止系统,并且关闭电源(慎重)

查看历史命令
history
清空历史指令
history -c
历史命令保存文件
cat~/.bash_history
历史记录默认保存1000条 可以修改/etc/profile中的HISTSIZE=2000
查找历史命令并运行
(1)光标上下键
(2)^r //搜索历史命令(输入一段某条命令的关键字:必须是连续的)3)!220 //执行历史命令中第220条命令4)!字符串 //搜索历史命令中最近一个以xxxx字符开头的命令,例如!ser5)!$ //引用上一个命令的最后一个参数

cd  /etc/sysconfig/network-scripts/  # 切换文件夹
pwd  # 查看当前所在的文件夹

别名
# alias //查看系统当前的别名
ll='ls -l --color=tty'
# alias egon='ls /etc/sysconfig/network-scripts/' //建立别名
# unalias egon
​
[root@xxx ~]# grep root /etc/passwd // 默认有颜色
[root@xxx ~]# alias grep
alias grep='grep --color=auto'  


快捷键

1.命令和文件名自动补全<tab>注意:Tab只能补全命令和文件
2. ctrl + c 终止前台运行的程序
   ctrl + d 退出.等价exit
   ctrl + l 清屏
   ctrl + a 光标移动到命令最前端
   ctrl + e 光标移动到命令的后端
   ctrl + r 搜素历史命令 ,利用关键字
   Alt + . 引用上一个命令的最后一个参数,等价于$
bash shell查找命令顺序:
==>以路径(绝对路径,相对路径)开始命令,例如:/bin/ls  或 cd /bin; ./ls
    ==> alias
      ==> Compound Commands
        ==> function
          ==> build_in,如cdkillpwdaliasecho等,可以用"type -a 命令"查看
            ==> hash
              ==> $PATH,环境变量,查看环境变量echo $PATH,例如/bin/ls
                ==> error: command not found
​
复合命令例如
for((i=0;i<=3;i++))do echo 123;done
函数例如
function f(){ echo 123; },注意{}左右两边有空格
posted on   zhifwu  阅读(304)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示