在Linux系统中,忘记root密码的时候怎么解决呢?不需要重装系统,进入单用户模式改下root密码就可以了。前提是需要对物理机进行操作,远程不行。
了解重启命令
#reboot
#init 6
#shutdown -r now
了解重启命令
#init 0
#poweroff
单用户模式操作流程
手动重启客户机
来回按 ↑↓ 键以免这个界面消失接着往下走
按 e 键接着往下走,进入到grub(启动工具,帮助我们找到系统里的启动盘)
按 ↓ 键往下翻,找到linux16这行
更改 ro 为 rw init=/sysroot/bin/sh ,按下 ctrl+x 启动
(ro 是 read only 缩写,表示只读;rw 是 read write 缩写,表示可读写;sysroot 原系统所在的目录)
在这个界面就可以使用一些命令了,这只是进入到了安全模式,还没到原来的系统
查看路径(目的为了确认并切换到原来系统)
#ls
这里面有个sysroot,这才是我们原来的系统
通过检验看这个目录里的文件,判断是否是我们原来的系统
#ls /sysroot/
#ls /sysroot/root/
#cat /sysroot/root/.ssh/authorized_keys
通过这个路径可以看到之前电脑上的公钥文件
切换原来系统
想更改密码需要切换到原来的系统里面
#chroot /sysroot/
#cat /root/.ssh/authorized_keys
切换到原来系统后,就可以直接查看 /root/.ssh/authorized_keys 了
更改密码
#passwd root
输入两次新密码就OK了
特别提醒
必须要再做下这个操作,不做的话,没办法登录(如果系统开启了selinux,必须要创建更新该目录)
#touch /.autorelabel
重启,使用新密码登录