linux忘记root密码怎么办?

# cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)
修复模式:进入的是原来的系统。
1,特权模式:决大部分的服务不会开机启动,不需要root密码,直接以root账户身份登陆。
破解密码时特权模式。
1.重起系统,进入grub菜单
2.选择要使用的内核
3.按e

4.找到linux16那一行,把光标移动到最后,添加 init=/bin/sh
5.ctrl+x #保存退出

6.进入系统后,以rw方式重新挂载/分区
#mount -o remount,rw   /
7.永久关闭selinux
#vim /etc/sysconfig/selinux
8.修改密码

9.关机
# cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)

重启centos8,在这个界面按上下键选中第一行按’e’键

编辑启动文件进入如下界面,移动向下方向键至“linux”开头的行。然后按向右的方向键移动,找到“ro”并将其修改为“rw init=/sysroot/bin/bash”。(rw后边有空格,\是系统自己添加的)

同时按住Ctrl和x键,系统进入如下界面,即emergency(紧急情况)模式

运行命令“chroot /sysroot/ ”切换到根目录,然后即可修改密码,修改完密码运行命令“touch /.autorelabel”,使SELinux生效,密码生效。如下图。(如果出现如下方块乱码,将当前终端语言临时设置为英文即可)。
/# chroot /sysroot/ 指定根目录
/# LANG=en 把语言改为英文

/# passwd 修改密码

/# touch /.autorelabel

同时按住Ctrl和d键,输入reboot,回车,系统重新启动。

重启系统后,输入新设置的密码就可正常登录系统了。

posted @   Sureing  阅读(1138)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示