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 以更新安全上下文,否则可能导致无法登录
相关推荐
小阳睡不醒37 分钟前
小白成长之路-部署Zabbix7(二)
android·运维
mCell38 分钟前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记40 分钟前
GPU运维常见问题处理
linux·运维·gpu
caolib1 小时前
无需云服务器的内网穿透方案 -- cloudflare tunnel
运维·服务器·内网穿透·tunnel·cloudflared
奇舞精选1 小时前
k8s基本概念初探
运维
誰能久伴不乏2 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔2 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula2 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-2 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw3 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器