单用户模式与找回root密码

1、运行级别

运行级别说明备注
0关机
1单用户找回丢失密码
2多用户状态没有网络服务
3多用户状态有网络模式生产用
4系统未使用保留给用户
5图像界面模拟使用
6系统重启
利用init切换级别
-------------
举例:init 3

2、指定运行级别

centos7之前,位于/etc/inittab
​
centos7
-----------------
[root@localhost ~]# systemctl get-default   #查看当前运行级别
graphical.target    #级别5         #multi-user.target 级别3
​
[root@localhost ~]# systemctl set-default multi-user.target   #切换级别3
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.

3、找回root密码

3.1、按"e"进入编辑模式

在所选内核上按 e 更新其启动选项,编辑内核参数

3.2、进入单用户模式

向下滚动到内核引导行,并在行尾添加 init=/bin/bash,利用ctrl+x启动

解释:
当计算机启动时,它会运行一个名为“init”的程序,通常位于 /bin/init 或 /sbin/init。该程序负责所有系统启动并创建可用的环境。指定 init=/bin/bash 会告诉内核运行 /bin/bash(这是一个 shell)

3.3、挂载模式改为可写

输入mount -o remount,rw /

解释:
进入shell后,根分区的挂载模式默认是只读,我们要将其改为可写,否则不能更改root密码
-------------------
指定 rw 会告诉内核以读写模式而不是只读模式引导硬盘。传统上,内核从只读模式的磁盘开始,稍后的进程会在切换到读写之前检查磁盘的完整性。

3.4、更改密码

新一行输入passwd

3.5、让SELinux放行

输入touch /.autorelabel

解释
--------------------------------
⛅为了让 SELinux 生效
⛅SELinux 它是一个安全增强系统, 其内部有许多安全策略
⛅针对一些操作, 如果你做了这些操作, 没有得到策略的放行, 它会给你禁止掉
⛅比如你使用单用修改root密码是不被策略放行的
⛅怎么让 SELinux 策略放行呢?
      "touch /.autorelabel" 创建这样一个文件其实就是在告诉SELinux放行这个策略,
       就是通知一下直接关闭掉SELinux

3.6、重启命令

输入exec /sbin/init等待系统自动修改密码,并重启

重启命令 reboot 现在已经不生效了, 直接使用绝对路径去执行 : exec /sbin/init 或 exec /sbin/reboot
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值