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 以更新安全上下文,否则可能导致无法登录
相关推荐
qq_2153978977 小时前
docker 安装 opengauss 高斯数据库
运维·docker·容器
s***46987 小时前
linux 设置tomcat开机启动
linux·运维·tomcat
xu_yule7 小时前
网络和Linux网络-3(套接字编程)TCP网络通信代码
linux·网络·tcp/ip
r***F2627 小时前
若依部署Nginx和Tomcat
运维·nginx·tomcat
HalvmånEver8 小时前
Linux:进程的切换与调度(进程四)
linux·运维·服务器
运维有小邓@9 小时前
实时日志关联分析工具:智能检测潜在安全威胁
运维·网络·安全
谷隐凡二9 小时前
Docker 的核心理念及技术的简单说明
运维·docker·容器
LCG元9 小时前
终端里的"黑客帝国":htop, glances, bpytop 系统监控工具横评
linux
L***B5689 小时前
如何安装linux版本的node.js
linux·运维·node.js
LCG元9 小时前
终极武器:用 systemd 管理你的自定义应用服务(附配置文件)
linux