在 CentOS 7 中重置 root 密码

在 CentOS 7 中重置 root 密码

在运行 CentOS7 的 1&1 专用服务器上重置 root 密码时遇到了一些问题。

能够通过终端访问 GRUB 并可以显示以下内容,但这看起来与许多示例不同。

setparams 'CentOS Linux, with Linux 3.10.0-327.28.2.el7.x86_64'

load_video
set gfxpayload=keep                                                    
insmod gzio                                                            
insmod part_msdos                                                      
insmod diskfilter mdraid09                                             
insmod ext2                                                            
set root='hd0,msdos1'   

linux16 /boot/vmlinuz-3.10.0-327.28.2.el7.x86_64 rd.driver.pre=raid1,ahci,dm_mod root=/dev/md1 domdadm dolvm rd.lvm.vg=vg00 rd.lvm.lv=vg00/usr ro console=ttyS0,57600 console=tty0 net.ifnames=0 biosdevname=0
initrd16 /boot/initramfs-3.10.0-327.28.2.el7.x86_64.img    

我尝试将 ro 行更改为 rw 并添加 init=/sysroot/bin/sh 但这没有帮助。

在执行加载过程时,我收到错误

[FAILED] Failed to start Switch Root.
See 'systemctl status initrd-switch-root.service' for details.     

答案1

尝试将“systemd.unit=rescue.target”添加到“linux16”行,如中所述https://fedoraproject.org/wiki/Systemd#Boot_Kernel_Command_Line

答案2

以下是在 CentOS 7 和 RHEL 7 中重置 root 密码的方法:

  1. 打开系统电源,然后在 GRUB 2 引导屏幕上按E编辑当前条目。
  2. 使用 编辑该行linux16,删除rhgbquiet参数并rd.break在末尾添加。
  3. CTRL+ X;系统将在 initramfsswitch_root提示符下启动。
  4. 将文件系统重新挂载为可写:mount -o remount,rw /sysroot
  5. 更改文件系统根目录:chroot /sysroot
  6. 修改root密码:passwd root
  7. 强制 SELinux 在下次启动时重新标记上下文:touch /.autorelabel
  8. 将文件系统重新挂载为只读:mount -o remount,ro /sysroot
  9. 退出chroot环境:exit
  10. 恢复系统启动:exit

来源:指引我前段时间写的。

相关内容