运维之路—linux忘记密码修改(rd.breake 方式)
RedHat 7 rd.break方式破解root密码
1.开机进入grub界面, 开机按两次e键
2.找到linux16这一行,如果是物理机,添加:rd.break,如果是虚拟机,添加:rd.break console=tty0,这里末尾添加 rd.break console=tty0
3.ctrl + x 进入switch_root
4.输入命令mount,发现根为/sysroot/,并且不能写,只有ro=readonly权限
5. 重新挂载已经挂载了的根文件系统(以读写权限挂载 )
执行命令:mount -o remount,rw /sysroot
-o <选项> 指定挂载文件系统时的选项
defaults 使用所有选项的默认值(auto、nouser、rw、suid)
auto/noauto 允许/不允许以 –a选项进行安装
dev/nodev 对/不对文件系统上的特殊设备进行解释
exec/noexec 允许/不允许执行二进制代码
suid/nosuid 确认/不确认suid和sgid位
user/nouser 允许/不允许一般用户挂载
codepage=XXX 代码页
iocharset=XXX 字符集
ro 以只读方式挂载
rw 以读写方式挂载
remount 重新安装已经安装了的文件系统
loop 挂载“回旋设备”以及“ISO镜像文件”
6.挂载好后将根改成sysroot。(执行命令:chroot /sysroot)并在根下创建.autorelabel文件(selinux标签验证,即允许你修改密码),再给root设置新密码。
7.exit退出,reboot重启后新密码登录
方法二
如果不知道旧密码,则需要重启系统,通过如下方式修改
重启系统,在开机过程中,快速按下键盘上的方向键和。目的是告知引导程序,我们需要在引导页面选择不同的操作,以便让引导程序暂停。
按键盘 e 键,进入编辑模式,找到 linux16 的那一行。将光标一直移动到 LANG=en_US.UTF-8 后面,空格,再追加 init=/bin/sh。这里特别注意,需要写在UTF-8后,保持再同一行,并注意空格。由于屏幕太小,会自动添加\换行,这个是正常的。
二 按下Ctrl+X 进行引导启动(单用户模式启动),成功后进入该界面。然后输入以下命令
1 挂载根目录
mount -o remount, rw /
2 选择要修改密码的用户名,这里选择root用户进行修改,可以更换为你要修改的用户
passwd root
3 输入2次一样的新密码,注意输入密码的时候屏幕上不会有字符出现。
如果输入的密码太简单,会提示警告BAD PASSWORD:The password fails the dictionary check - it is too simplistic/systematic),可以无视它,继续输入密码,不过建议还是设置比较复杂一些的密码,以保证安全性
4 更新系统信息 touch /.authorelabel
touch /.authorelabel
5 最后输入以下命令重启系统即可
exec /sbin/init 或exec /sbin/reboot
更多修改密码方式: 转载自 https://www.cnblogs.com/volac/p/9810552.html