You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fedora 14服务器root被重命名为qroot无法切换,如何恢复?

恢复root用户的分步解决方案

嘿,这个情况确实有点棘手——UID 0的超级用户被改成了qroot,还导致su命令无法正常切换到root。不过好在你的系统采用纯/etc/passwd认证,不需要依赖/etc/shadow,我们可以通过单用户模式或者救援模式来修复,具体步骤如下:

方法一:单用户模式修复(优先尝试)

如果你的服务器能正常进入GRUB启动菜单,这是最快的方法:

  1. 重启服务器,在GRUB界面选中你平时使用的内核,按下e进入编辑模式
  2. 找到以linux开头的内核参数行,在行的末尾添加 init=/bin/bash(部分发行版可能需要用rd.break,比如CentOS/RHEL)
  3. 按下Ctrl+X启动,此时会进入一个只读的单用户shell,先把根文件系统挂载为可写:
    mount -o remount,rw /
    
  4. 编辑/etc/passwd文件,把qroot的条目改回root:
    • 用vi或者nano打开文件:vi /etc/passwd
    • 找到类似 qroot:x:0:0::/root:/bin/bash 的行,把开头的qroot改成root,保存退出
  5. 修复/etc/passwd的属主(目前它属于qroot,我们需要改回root):
    chown root:root /etc/passwd
    
  6. 顺便检查/etc/group文件,如果有qroot:x:0:这样的组条目,同样改成root:x:0:
  7. 最后把根文件系统改回只读,重启系统:
    mount -o remount,ro /
    exec /sbin/init
    

方法二:救援模式修复(单用户模式无法进入时)

如果是远程服务器,可能需要联系服务商开启KVM控制台或者进入救援模式:

  1. 进入救援模式后,先找到你的系统根分区(可以用fdisk -l查看),然后挂载到/mnt/sysimage:
    mount /dev/sda1 /mnt/sysimage  # 这里替换成你的根分区路径
    
  2. 切换到系统的根环境:
    chroot /mnt/sysimage
    
  3. 重复方法一中的步骤4-6:修改/etc/passwd的用户条目、修复文件属主、检查/etc/group
  4. 退出chroot环境,卸载分区并重启:
    exit
    umount /mnt/sysimage
    reboot
    

后续验证与建议

  • 重启后执行id root,应该显示UID为0的root用户;执行su -可以正常切换到root
  • 因为系统用纯/etc/passwd认证,/etc/shadow的问题暂时不影响登录,之后可以用passwd root重新设置密码,再修复/etc/shadow的权限(chmod 600 /etc/shadow)和属主
  • 一定要排查出现这个问题的原因,比如是否存在恶意入侵或者误操作,及时做好服务器安全加固(比如禁用root直接SSH登录、配置防火墙、定期更新系统等)

内容的提问来源于stack exchange,提问作者Aravindh Sathish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 04:07:53