在使用 linux 中如果忘记了 root 密码或者入侵别人的系统,修改别人的 root 密码,获取相关的数据等,下面介绍如何在不知道密码的情况下,修改 linux 系统密码。
首先,开机在进入启动阶段, 在启动页面按下 e 键, 进入编辑模式(类似 windows 下进入BIOS)如图-1所示:
image-20220522093515897.png
然后,在如 图-2 所示:的位置录入 rd.break 中断启动
image-20220522093936149.png
接着, 按 ctrl + x 保存并重启, 并进入紧急模式, 有点慢,请耐心等待, 如图-3
image.png
然后,执行 mount 命令, 查看当前挂载, 结果如图-4所示,此时的 /dev/sda3 挂载了 /sysroot,且文件处于只读模式(ro)修改密码需要读写(rw)的权限。需要重新挂载新分区
image.png
接着, 重新挂载分区执行如下命令 mount -o remount,rw /sysroot, 执行后结果如图-5所示,挂载目录可以读写了。
image.png
然后,更新根目录,执行 chroot /sysroot ,重新挂载后的根目录并不是当前的根目录, 所以需要更新根目录。如图-6所示:
image.png
最后, 修改密码, 执行如下命令即可。如图-7所示, 修改成功,退出重启,就可以使用新密码登录了。

  1. passwd # 如果出现提示出现乱码, 请设置 LANG=en
  2. # 需要开启 selinux 需要在跟目录下创建 .autorelabel, 一般情况 selinux 都是关闭的
  3. touch /.autorelabel
  4. exit # 退出编辑模式
  5. reboot # 重启电脑

image.png

附录

创作不易,欢迎打赏。你的支持,是我持续创作的动力哦。如果文章表述不清或错误,欢迎大家留言。我会及时反馈给大家,希望帮助到大家。

打赏二维码.png