今天我们来聊一聊,如果在 Linux 系统上忘记密码时,应该如何重置密码。这里以 RHEL7
系统为例,相应的衍生版系统重置步骤大致相仿。
好了,废话不多说,正文开始:
查看是否为 RHEL7 系统
# 查看内核版本
cat /etc/redhat-release
# 如果信息为以下内容,则可以采用此方法重置 root 密码
Red Hat Enterprise Linux Server release 7.0 (Maipo)
重启 Linux 系统主机,并出现引导界面时,按下键盘上的 e
键进入内核编辑界面

在 linux16
参数这行的最后面(即LANG=en_US.UTF-8
尾部)先敲一个空格
然后添加\rd.break
参数,然后按下Ctrl + X
组合键来运行修改过的内核程序
这里需要注意的是:
页面内容一般情况下是显示不全的,需要按住上下箭头滚动。 添加 \rd.break 参数的时候,你也可以不用添加 '\反斜杠' 但是必须要先在 linux16 末尾处敲击一个空格之后写入 rd.break 参数

稍后即可进入系统的紧急救援模式

依次输入以下命令,等待系统重启操作完毕,然后就可以使用新密码来登录 Linux 系统了。
以可读写的权限重新挂载硬盘上真实系统根目录( sysroot )目录
# -o remount:将一个已经挂下的档案系统重新用不同的方式挂上。
# 例如原先是唯读的系统,现在用可读写的模式重新挂上。
# -o rw:用可读写模式挂上。
# 可以合并参数写,即 mount -o remount,rw
mount -o remount,rw / /sysroot
# 同样也可以直接写成这样 (直接省略掉根目录 / )
mount -o remount,rw /sysroot
把环境切换到真实系统根目录 sysroot
chroot /sysroot
修改 root 账户密码
# 输入 passwd 命令时,是交互式界面。
# 同样也可以直接输入 echo "redhat" | passwd --stdin root 命令,直接将 root 密码,修改为 redhat
passwd
告诉系统下次启动将对文件进行 selinux 上下文重新打标。这也就造成了下次重启的时候时间会很长,autorelabel 是一个隐藏文件,需要注意的是前面有一个点
touch /.autorelabel
退出真实系统根目录环境
exit
重启系统
reboot

修改密码后,首次重启的时间将会比较长,因为系统将对所有文件进行 SeLinux 打标,请耐心等待,整个过程并非死机,请勿在打标过程中手动强制再次重启,否则系统将会永久性损坏导致无法开机。
最后说个事
公号算法变了,为防止看不到我的更新
大家可以加个星标
点击上方的公众号卡片
再点右上角三个点
就能看到设为星标
算我跪下来求你们
往期精选:
文章转载自蒲东平,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




