目的
在 RHEL7/CentOS7/Scientific Linux 7 中重设 root 密码。
要求
RHEL7 / CentOS7 / Scientific Linux 7
指导
RHEL7 的世界发生了变化,重置 root 密码的方式也一样。虽然中断引导过程的旧方法(init=/bin/bash)仍然有效,但它不再是推荐的。“Systemd” 使用 “rd.break” 来中断引导。让我们快速浏览下整个过程。
启动进入最小模式
重启系统并在内核列表页面在系统启动之前按下 e。你会进入编辑模式。
中断启动进程
在内核字符串中 - 在以 linux 16 /vmlinuz- ect 结尾的行中输入 rd.break。接着 Ctrl+X 重启。系统启动进入初始化内存磁盘,并挂载在 /sysroot。在此模式中你不需要输入密码。
重新挂载文件系统以便读写
1
|
switch_root:/ # mount -o remount,rw /sysroot/ |
使 /sysroot 成为根目录
1
|
switch_root:/ # chroot /sysroot |
命令行提示符会稍微改变。
修改 root 密码
1
|
sh-4.2 # passwd |
加载 SELinux 策略
1
|
sh-4.2 # load_policy -i |
在 /etc/shadow 中设置上下文类型
1
|
sh-4.2 # chcon -t shadow_t /etc/shadow |
注意:你可以通过如下创建 autorelabel 文件的方式来略过最后两步,但自动重建卷标会花费很长时间。
1
|
sh-4.2 # touch /.autorelabel |
因为这个原因,尽管它更简单,它应该作为“懒人选择”,而不是建议。
退出并重启
退出并重启并用新的 root 密码登录。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://linux.cn/article-8212-1.html