HCRM博客

快速重置CentOS系统root密码指南

在日常的服务器运维工作中,遇到 CentOS 系统 root 密码遗忘或丢失的情况并不罕见,虽然这种情况可能令人一时无措,但通过正确的操作步骤,完全可以高效且安全地恢复系统访问权限,以下将详细介绍在 CentOS 7 及 CentOS 8 环境下重置 root 密码的具体方法。

重要前提: 进行以下操作需具备物理服务器接触权限或虚拟平台的控制台访问权限,如果系统处于云服务器环境,部分操作可能需通过云服务商提供的控制台界面完成。

快速重置CentOS系统root密码指南-图1

CentOS 7 系统 root 密码重置步骤

  1. 重启系统并中断启动过程
    重启 CentOS 7 服务器,在 GRUB 启动菜单出现时,快速按下键盘上的 e 键,进入编辑模式。

  2. 修改启动参数
    在编辑界面中,找到以 linux16linuxefi 开头的行,将光标移动至该行末尾,删除原有参数 rhgb quiet,并添加以下内容:

    rw init=/sysroot/bin/sh

    这一操作的意义在于将系统以可读写方式挂载,并将初始进程设置为 Shell 环境。

  3. 进入救援模式
    按下 Ctrl + XF10 启动系统,此时会直接进入命令行环境,系统根分区实际上挂载在 /sysroot 下。

  4. 切换根环境并修改密码
    依次执行以下命令:

    chroot /sysroot
    passwd root

    根据提示输入两次新密码,如果系统启用了 SELinux,还需执行以下命令创建标记文件:

    快速重置CentOS系统root密码指南-图2
    touch /.autorelabel

    这一步是为了保证 SELinux 上下文在下次启动时自动重置,避免权限异常。

  5. 完成重启
    退出 chroot 环境并重启系统:

    exit
    reboot -f

    系统重启后,新密码即可生效。


CentOS 8 系统 root 密码重置步骤

CentOS 8 采用了较新的 GRUB 引导机制,操作略有差异。

  1. 进入启动编辑模式
    重启系统,在 GRUB 菜单界面按 e 键进入编辑模式。

  2. 调整启动参数
    找到 linux 开头的行,在行末追加以下内容:

    快速重置CentOS系统root密码指南-图3
    rd.break enforcing=0

    此处 enforcing=0 用于临时关闭 SELinux,便于后续操作。

  3. 进入紧急模式
    Ctrl + X 启动,系统会进入紧急模式并暂停启动过程。

  4. 重新挂载并重置密码
    执行以下命令:

    mount -o remount,rw /sysroot
    chroot /sysroot
    passwd root

    输入新密码后,为确保 SELinux 安全上下文正确,必须执行:

    load_policy -i
    touch /.autorelabel
    exit
    reboot

    此处的 load_policy -i 用于加载 SELinux 策略,确保安全标签正确重建。


操作注意事项与安全建议

  • 在执行密码重置操作前,务必确认是否有其他用户正在连接系统,避免突然重启造成数据丢失。
  • 如果系统使用了全盘加密或特殊的分区方案,上述操作可能需要进行额外调整。
  • 完成密码重置后,建议立即检查系统日志,确认无异常登录行为或安全风险。
  • 对于生产服务器,强烈建议定期备份并采用密钥认证等更安全的登录方式,减少对密码依赖。

密码是系统安全的第一道防线,虽然重置 root 密码在技术层面并不复杂,但从运维管理角度,更应建立规范的口令管理策略和应急访问机制,避免频繁依赖强制重置手段,良好的权限管理和操作审计,才是保障系统长期稳定运行的根本所在。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/39513.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~