共计 1467 个字符,预计需要花费 4 分钟才能阅读完成。
一、忘记 root 密码
日常生活中,我们会接触到很多账号和密码,而这些账号和密码我们不能都很好的记忆,对于 linux 也是一样的,如果 root 密码忘记了怎么办?岂不是都无法登陆使用 Linux 了?现在我就教各位,在不知道 root 密码的前提下,如何给 root 设置一个新的密码
step 1 重启你的 linux 系统,在下图这个界面中按“E”
step 2 将光标移动到开头为 linux 这行的行位,删除 rhgb quiet 并添加 rd.break
step 3 按键盘上的 ctrl+ x 组合键继续启动 linux,等待出现提示符后执行 mount 命令
step 4 执行 chroot 命令将根目录切换为 /sysroot(因为硬盘上的数据都存放在 /sysroot 目录中)
step 5 看到提示符发生变化后执行 passwd 命令修改 root 密码
注:由于字符编码问题可能会出现不能正常显示的情况,如:
![image-20200112154028844](第九章 启动流程.assets/image-20200112154028844.png) 没有关系,不影响密码的设置
step 6 修改完密码之后,建立 autorelabel 文件
step 7 输入两次 exit 退出,系统会继续启动
启动完成之后就可以用我们刚才设置的账号及密码进行登录了
二、GRUB2 加密
前面我们知道了,如果不知道 root 密码的话,也是可以以 root 身份登录系统,那这样岂不是很危险?所以 GRUB2 又提供了一种保护机制,这种保护机制就是为 grub2 设置密码,如果用户不知道这个密码,是无法编辑启动时所看到的那个菜单的,这样也就组织了 root 密码被修改的问题,那么如何为 grub2 加密呢?
setp 1 以 root 用户的身份登录系统并打开终端,在终端中输入 grub2-setpassword 命令,系统就会提示我们设置一个密码,这个密码就是 grub2 的密码
step 2 重启系统,验证是否加密成功
step 3 在启动菜单界面按 ”E” 编辑内容时,系统会提示输入用户名和密码,这个用户名是 root,密码就是我们前面设置的 grub2 密码
注意:密码在输入的时候是不会显示任何信息的
step 4 如果密码输入错误就会返回启动菜单界面
三、删除 / 修改 GRUB2 密码
前面我们学会了如何为 grub2 设置密码,这样能有效的避免 root 用户密码被修改,但是如果我忘记了 grub2 的密码怎么办呢?
如果忘记了 grub2 密码,你可以让系统正常启动,然后用 root 用户登录系统,登录完成后使用 grub2-setpassword 命令重新设置一个 grub2 密码,或者删除 /boot/grub2/user.cfg 文件将密码删除。
但是如果连 root 密码也不知道呢?这个时候,我们就需要用到修复模式了
step 1 插入系统光盘,选择从光盘启动
step 2 选择故障排除(troubleshooting)
step 3 选择修复系统
step 4 启动完成后,系统提示我们,修复模式会查找硬盘上是否安装有 Linux 系统,并将其挂载到 /mnt/sysimage 目录下,我们希望它如何操作,选择 1 是以读写的形式挂载,选择 2 是以只读的形式挂载,选择 3 是直接获取一个 shell,选择 4 是重启,这里面我们选择 1
step 5 稍微等一下之后系统会提示我们已经挂载到 /mnt/sysimage 目录下了,按“enter”会得到一个 shell
step 6 执行 chroot /mnt/sysimage 将工作目录切换到硬盘中
step 7 接下来就像没有忘记 root 密码一样,可以重新设置 grub2 密码,或者删除 user.cfg 文件了,然后输入两次 exit 重启