linux centos 忘记root密码拯救

在CentOS 7中,如果忘记root密码,可以通过修改系统启动参数进入单用户模式或紧急模式进行重置。以下是两种常用方法,适用于物理机或虚拟机环境:

方法一:通过rd.break参数重置密码

步骤

  1. 重启系统并进入GRUB菜单 在开机界面出现时,按任意键停止自动启动,按方向键选择默认启动项(通常为第一行),按 e 进入编辑模式

  2. 修改启动参数 找到以 linux16linux 开头的行,在行末添加 rd.break(注意与前后参数用空格隔开),按 Ctrl+X 启动系统

  3. 挂载文件系统并切换环境

    复制代码
    mount -o remount,rw /sysroot # 挂载根目录为可读写
    chroot /sysroot # 切换到系统根目录环境
  4. 重置密码

    passwd root # 输入两次新密码
    touch /.autorelabel # 若系统启用SELinux需执行此命令
    exit # 退出chroot环境
    reboot # 重启系统

方法二:通过init=/bin/sh参数重置密码

步骤

  1. 进入GRUB编辑模式 同样在开机界面按 e 键编辑启动项,找到 linux16 行,将 ro 改为 rw init=/bin/sh(或直接在行末追加 init=/bin/sh),按 Ctrl+X 启动

  2. 挂载根目录并重置密码

    复制代码
    mount -o remount,rw / # 确保根目录可写
    passwd root # 输入新密码
    touch /.autorelabel # 处理SELinux标签
    exec /sbin/init # 或直接输入reboot 重启

注意事项

  1. SELinux处理 若系统启用了SELinux,必须执行 touch /.autorelabel 以更新安全上下文,否则可能导致无法登录
相关推荐
LH_R3 小时前
OneTerm开源堡垒机实战(四):访问授权与安全管控
运维·后端·安全
用户31187945592183 小时前
Kylin Linux 10 安装 glib2-devel-2.62.5-7.ky10.x86_64.rpm 方法(附安装包)
linux
Raymond运维3 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
涛啊涛4 小时前
Centos7非LVM根分区容量不足后扩容,对调硬盘挂载/
linux·磁盘管理
JuiceFS20 小时前
从 MLPerf Storage v2.0 看 AI 训练中的存储性能与扩展能力
运维·后端
CYRUS_STUDIO1 天前
用 Frida 控制 Android 线程:kill 命令、挂起与恢复全解析
android·linux·逆向
熊猫李1 天前
rootfs-根文件系统详解
linux
chen9451 天前
mysql 3节点mgr集群部署
运维·后端
LH_R1 天前
OneTerm开源堡垒机实战(三):功能扩展与效率提升
运维·后端·安全
dessler1 天前
Hadoop HDFS-高可用集群部署
linux·运维·hdfs