Linux忘记root密码解决方案
忘记Linux root密码时,只需重启Linux系统,然后引导进入Linux的单用户模式(init 1),由于单用户模式不需要输入登陆密码,因此,可直接登陆系统,修改root密码即可解决问题。需要说明的是,CentOS6和CentOS7下修改root密码的方式是不同的。
一、RHEL/CentOS6.x及之前修改root密码
操作步骤如下:
1.重启系统,待系统启动到grub引导菜单时,按Esc键,找到当前系统引导项。如果有多个可用内核,则会有多个引导选项。
2.通过方向键定位到需要使用的系统引导内核选项上,然后按键盘e键,进入编辑状态。
3.然后通过上下方向键,选中带有kernel指令的一行,继续按e键,编辑该行,在行末尾价格空格,然后添加single。
4.修改完成后,按Enter键,返回到刚才的界面。
5.最后按b键,系统开始引导。
这样就切换到单用户模式下,单用户模式与Windows的安全模式类似,只启动最基本的系统,网络以及应用服务均不启动。单用户模式启动完毕,系统自动进入命令行状态下,输入passwd,系统提示输入两次新的密码,就可修改密码。
如果需要正常启动系统,只需输入init 3,切换到多用户模式下。用root登陆系统即可。
二、RHEL/CentOS7中修改root密码
在CentOS7.0版本之后,Linux的机制发生了变化。在系统引导方面,使用grub2代替了之前的grub的引导,init初始化程序也更换成了systemd初始化程序,随之而来,root密码重置的方法也发生了变化。
操作步骤如下:
1.重启系统,待系统启动到grub2引导菜单时,找到当前系统引导选项(如果有多个可用内核,则会有多个引导选项),按e键,进入编辑模式。
2.然后通过上下方向键将光标定位到kernel引导行所在行尾,然后添加以下内容
init=/bin/sh

3.添加完成,按Ctrl+x组合键启动shell引导,最后进入单用户模式
4.要挂载根分区为可读写模式,执行如下命令
mount -o remount,rw /
5.这里需要注意,如果系统已开启了SELinux,还需要在根分区中创建autorelabel文件,否则系统无法正常启动。
查看SELinux是否开启
/usr/sbin/sestatus
(如果SELinux开启),创建autorelabel文件(我在操作时,检测到SELinux未开启,但也进行了下面的操作,否则最后一步可能无法重启。不知道不能重启的原因是不是这里)
touch /.autorelabel
6.然后就可以执行passwd命令重置密码了。
passwd
提示输入两次新密码即可。
7.密码修改完后,需要重启
直接执行reboot命令已经无效,需要输入全路径命令
exec /sbin/init
或
exec /sbin/reboot
这样就完成了密码重置,正常登陆系统,查看密码是否修改成功。
(注意:我在输入exec /sbin/init命令后,虚拟机中centos一直没反应,等了差不多一两分钟后才有反应。)
参考:
《循序渐进Linux》第2版 10.1.2章节 P326
Linux忘记root密码解决方案的更多相关文章
- openSUSE Linux 忘记root密码的解决方法
openSUSE Linux 忘记root密码的解决方法 : 对于大部分linux发行版本,忘记root密码的时候,是可以通过单用户模式来重设密码的. 如在redhat/fedora 下,可以通过在启 ...
- Linux忘记root密码怎么办?
开篇前言:Linux系统的root账号是非常重要的一个账号,也是权限最大的一个账号,但是有时候忘了root密码怎么办?总不能重装系统吧,这个是下下策,其实Linux系统中,如果忘记了root账号密码, ...
- Linux忘记 root密码的解决办法
很多朋友经常会忘记Linux系统的root密码,linux系统忘记root密码的情况该怎么办呢?重新安装系统吗?当然不用!进入单用户模式更改一下root密码即可. 步骤如下: 重启linux系统 重启 ...
- Linux 忘记root密码
1 将系统重启,读秒的时候按下任意键就会出现如下图菜单界面 2 进入上图菜单界面之后,按e键就可以进入grub的编辑模式 3 选择第二行 kernel开头,再按 e 键进入该行的编辑界面中,然后在出现 ...
- linux忘记root密码怎么办
如何找回root密码,如果我们不小心,忘记root密码,怎么找回? 思路:进入到单用户模式,然后修改root密码.因为进入单用户模式,root不需要密码就可以登录. 详细过程: 1.打开虚拟机 2.开 ...
- Linux忘记root密码,密码找回,图片展示
忘记root密码 CentOS 7参考地址如下:https://www.baidu.com/s?wd=CentOS7+%E6%89%BE%E5%9B%9Eroot%E5%AF%86%E7%A0%81& ...
- linux中忘记root密码解决方案
方法一: 如果用户具有sudo权限,那么直接可以运行如下命令: #sudo su root #passwd #更改密码 或者直接运行sudo passwd root命令就可以直接更改root密码. 有 ...
- linux 忘记root密码怎么处理。
这个是不少人纠结的地方.一台服务器,太久没使用,然后又没有一个文件txt,excel记录那些密码相关的东西.所以导致很多信息忘记了. 参考文章:https://blog.csdn.net/cranky ...
- Linux忘记root密码后如何在grub界面中以单用户模式进入系统并重置密码的方法
本文将介绍在Linux系统中忘记root用户密码的情况下,如何在gurb界面进入单用户模式并重置root用户密码.在单用户模式下,用户不需要输入任何密码即可进入系统并可以修改密码.实验步骤如下: 1. ...
随机推荐
- find查找多种文件后缀
find命令最常用的是查找某个文件,如: find ./ -name "test.txt" 则会在当前目录及子目录下查找test.txt文件 更常用的是查找某一类型的文件,如: f ...
- 高级软件测试技术(测试管理工具实践day1)
今天进行了班级内部各小组选择测试工具,选择各自需要进行测试管理工具.我们小组暂定选择 禅道 但是班级内其他小组选择的工具还没确定,还没进行
- Flask框架—flask_sqlalchemy组件使用
一.flask_sqlalchemy组件 我们之前学过SQLAlchemy,一个独立的数据库关系对象映射,其实在flask中也有官方认可的第三方SQLAlchemy组件,用于处理flask中对象关系映 ...
- VMware 虚拟机的虚拟磁盘编程知识点扫盲之二
目录 目录 前文列表 VDDK 安装 VDDK VixDiskLib VADP 前文列表 VMware 虚拟机的虚拟磁盘编程知识点扫盲之一 VDDK 摘自官方文档:The Virtual Disk D ...
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_06 Properties集合_3_Properties集合中的方法load
键值对文件,读取到集合中来使用 分隔符也可以用空格 读出来乱码
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_06 Properties集合_1_使用Properties集合存储数据,遍历取出集合中的数据
map下面的实现类叫做Hashtable Properties是唯一和IO流相结合的 讲解 代码
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_02 递归_1_递归概念&分类&注意事项
a方法里面调用自己,但是没有停止的条件 方法没有停止的条件. 栈内存溢出的异常. 只有栈,没有堆内存 先执行main方法压栈执行 main方法里面调用a方法.a方法就会压栈 改成20000
- SoapUI学习之SOAP和REST的区别
一.Soap和Rest的定义 SOAP(Simple Object Access Protocol 简单对象访问协议),用于在Web Service中把远程调用和返回封装成机器可读的格式化数据,事实上 ...
- SpringCloud启动Eureka server时报错 java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not present
SpringBoot打开Eureka server时出现以下错误: java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext ...
- 应用安全-Web安全-注入篇
asp站点 ()and = 和 and =)服务器类型判断(ACCESS MSSQL) http://URL.asp?id=24 and (select count(*) from sysobject ...