RHEL更改和重置根密码
如果需要更改现有的根密码,可以以 root 用户或一个非 root 用户重置它。
1、作为 root 用户更改 root 密码:
您可以使用passwd命令以root用户身份更改root密码。
先决条件:
'root' 访问权限
流程:
要更改'root'密码,使用:
# passwd
在修改前,会提示您输入您当前的密码。
2、以非 root 用户的身份更改或重置根密码
您可以使用 passwd 命令以非 root 用户更改或重置 root 密码。
先决条件:
您可以以非 root 用户身份登录。
您是管理 wheel 组的成员。
流程:
以wheel 组中的非 root 用户身份修改或重置 root 密码,请使用:
# sudo passwd root
此时会提示您输入当前的非 root 密码,然后才能更改 root 密码。
3、在引导时重置'root'密码
如果您无法以非 root 用户身份登录或者不属于管理 wheel 组,则可以通过切换到一个特殊的 chroot jail 环境在引导时重置 root 密码。
流程:
3.1重启系统,在 GRUB 2 引导屏幕上按 e 键中断引导过程。
此时会出现内核引导参数。
load_video
set gfx_payload=keep
insmod gzio
linux ($root)/vmlinuz-5.14.0-70.22.1.e19_0.x86_64 root=/dev/mapper/rhel-root ro crash\
kernel=auto resume=/dev/mapper/rhel-swap rd.lvm.lv/swap rhgb quiet
initrd ($root)/initramfs-5.14.0-70.22.1.e19_0.x86_64.img $tuned_initrd
3.2进入以 linux 开头的行的末尾。
linux ($root)/vmlinuz-5.14.0-70.22.1.e19_0.x86_64 root=/dev/mapper/rhel-root ro crash\
kernel=auto resume=/dev/mapper/rhel-swap rd.lvm.lv/swap rhgb quiet
按 Ctrl+e 键跳到这一行的末尾。
3.4在以 linux 开头的行的最后添加 rd.break。
linux ($root)/vmlinuz-5.14.0-70.22.1.e19_0.x86_64 root=/dev/mapper/rhel-root ro crash\
kernel=auto resume=/dev/mapper/rhel-swap rd.lvm.lv/swap rhgb quiet rd.break
3.5按 Ctrl+x 使用更改的参数启动系统。
此时会出现 switch_root 提示符。
3.6将文件系统重新挂载为可写:
# mount -o remount,rw /sysroot
文件系统以只读模式挂载到 /sysroot 目录中。将文件系统重新挂载为可写才可以更改密码。
3.7进入 chroot 环境:
# chroot /sysroot
此时会出现 sh-4.4# 提示符。
3.8重置 root 密码:
# passwd
按照命令行中的步骤完成 root 密码的更改。
3.9在下次系统引导时启用 SELinux 重新标记进程:
# touch /.autorelabel
3.10退出 chroot 环境:
# exit
3.11退出 switch_root 提示符:
# exit
3.12等待 SELinux 重新标记过程完成。请注意,重新标记一个大磁盘可能需要很长时间。系统会在这个过程完成后自动重启。