如何登录root账户?

Linux系统中,更改root密码是系统管理的基础操作,以下是详细方法,涵盖不同场景(已知当前密码/忘记密码),请根据实际情况选择,操作涉及系统核心权限,务必谨慎执行。


前提条件

  1. 权限要求
    • 方法1-2:需已知当前root密码或拥有sudo权限的用户。
    • 方法3-4:需物理接触服务器或虚拟机控制台。
  2. 风险提示
    • 误操作可能导致系统无法启动,操作前建议备份数据。
    • 生产环境建议在维护窗口操作。

方法1:已登录root用户时(最简单)

输入当前root密码
# 2. 执行密码修改命令
passwd
# 3. 按提示输入两次新密码
New password: 
Retype new password: 

✅ 提示:passwd命令会强制要求密码复杂度(长度8+字符,含大小写/数字)。


方法2:通过sudo权限用户修改

适用于拥有sudo权限的普通用户(如Ubuntu初始用户):

# 1. 终端执行命令
sudo passwd root
# 2. 先输入当前用户密码(验证sudo权限)
[sudo] password for user: 
# 3. 再设置root新密码
New password for root: 
Retype new password: 

方法3:单用户模式(忘记root密码)

适用场景:无法通过常规方式修改密码。
步骤

  1. 重启系统,在GRUB菜单界面(启动时按ShiftEsc键)选择内核行,按 e 进入编辑模式。
  2. 修改启动参数
    • 找到 linuxlinux16 开头的行,将 ro 改为 rw init=/bin/bash(或末尾添加 single)。
    • Ctrl+XF10 启动到单用户模式。
  3. 挂载文件系统并改密
    mount -o remount,rw /  # 重新挂载根目录为可写
    passwd root            # 输入新密码
    touch /.autorelabel    # SELinux系统需执行(如CentOS/RHEL)
    exec /sbin/init        # 正常重启系统

方法4:Live CD/USB救援模式

适用场景:无法进入GRUB菜单或单用户模式失败。
步骤

  1. 用Linux Live USB/CD启动系统,选择”Try without installing”。
  2. 挂载原系统根分区:
    sudo -i                          # 获取临时root权限
    fdisk -l                         # 查看原系统分区(如/dev/sda2)
    mount /dev/sda2 /mnt             # 挂载根分区
    mount --bind /dev /mnt/dev       # 挂载设备文件
    mount --bind /proc /mnt/proc
    mount --bind /sys /mnt/sys
  3. 切换环境并改密:
    chroot /mnt                      # 切换到原系统环境
    passwd root                      # 修改密码
    exit                             # 退出chroot
    reboot                           # 重启并移除Live介质

安全建议

  1. 密码强度:使用12位以上混合字符(字母+数字+符号),避免常见词汇。
  2. 定期更新:每3个月更换一次密码,使用passwd -S root检查密码状态。
  3. 限制root登录
    • 禁用SSH root登录:编辑/etc/ssh/sshd_config,设置 PermitRootLogin no
    • 通过普通用户+sudo管理,降低风险。
  4. 审计日志:通过grep 'passwd' /var/log/auth.log 监控密码修改记录。

常见问题

  • Q:修改后提示“Authentication token manipulation error”
    A:文件系统只读导致,执行 mount -o remount,rw / 解除只读状态再操作。

  • Q:单用户模式要求输入root密码?
    A:编辑GRUB时在内核参数末尾添加 init=/bin/bash 绕过密码验证。

  • Q:云服务器无法物理操作怎么办?
    A:阿里云/酷盾等提供VNC控制台,可通过方法3操作;或使用救援模式(类似方法4)。


引用说明参考Linux官方文档(kernel.org)、Ubuntu Manpage(manpages.ubuntu.com)及Red Hat Enterprise Linux系统管理指南,操作命令已在CentOS 7/8、Ubuntu 20.04/22.04验证通过。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8326.html

(0)
酷番叔酷番叔
上一篇 2025年7月23日 14:36
下一篇 2025年7月23日 14:47

相关推荐

  • Ubuntu+Deepin双系统获官方支持?

    在Linux系统上安装搜狗输入法需要经过以下详细步骤,作为官方支持的输入法方案,搜狗为Linux用户提供了流畅的中文输入体验,尤其适合基于Debian的发行版(如Ubuntu、Deepin),操作前请确保系统已更新(sudo apt update && sudo apt upgrade),其他D……

    2025年7月26日
    16200
  • Linux不用浏览器怎么查看网页?

    命令行工具(高效/无图形界面)适用于服务器环境或快速文本提取,无需打开浏览器,curl 获取网页源码基础用法:curl https://example.com保存到文件:curl -o page.html https://example.com跟随重定向:curl -L https://example.com仅……

    2025年7月1日
    15300
  • Linux如何实现IO持续输出?

    在Linux系统中,“一直输出io”通常指持续生成I/O负载或实时监控I/O状态,常见于性能测试、系统调试或长期监控场景,以下从工具使用、参数调整和注意事项三方面详细介绍实现方法,使用dd命令持续生成I/O负载dd是Linux基础的数据复制工具,通过循环调用可模拟持续读写操作,基本语法为:while :; do……

    2025年9月18日
    13300
  • 如何构造linux panic

    Linux系统中,通过执行非法操作或引发内核错误(如除以零、访问无效内存)可导致系统panic。

    2025年8月16日
    14100
  • linux如何进入系统状态

    Linux中,通常在开机后通过登录界面输入用户名和密码,或在启动引导界面

    2025年8月10日
    17000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信