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 以更新安全上下文,否则可能导致无法登录
相关推荐
好评12424 分钟前
Linux入门:软件包管理、Vim、GCC、Makefile、Git 与 GDB
linux·运维·服务器
可爱又迷人的反派角色“yang”1 小时前
ansible剧本编写(三)
linux·网络·云计算·ansible
石像鬼₧魂石6 小时前
内网渗透靶场实操清单(基于 Vulhub+Metasploitable 2)
linux·windows·学习·ubuntu
Danileaf_Guo7 小时前
256台H100服务器算力中心的带外管理网络建设方案
运维·服务器
橘子真甜~8 小时前
C/C++ Linux网络编程15 - 网络层IP协议
linux·网络·c++·网络协议·tcp/ip·计算机网络·网络层
拾贰_C9 小时前
【Linux | Windows | Terminal Command】 Linux---grep | Windows--- findstr
linux·运维·服务器
阿华hhh9 小时前
Linux系统编程(标准io)
linux·开发语言·c++
虹科网络安全10 小时前
艾体宝洞察 | 利用“隐形字符”的钓鱼邮件:传统防御为何失效,AI安全意识培训如何补上最后一道防线
运维·网络·安全
石像鬼₧魂石10 小时前
Kali Linux 网络端口深度扫描
linux·运维·网络
alengan10 小时前
linux上面写python3日志服务器
linux·运维·服务器