Linux忘记root密码

本文详细介绍了在Linux系统中忘记root密码时,如何通过GRUB2的编辑模式进入系统恢复模式,重置密码,以及设置和加密GRUB菜单密码以增强安全性。包括两个主要方法和一个扩展部分,确保系统安全重启。
摘要由CSDN通过智能技术生成

linux一旦忘记root密码,就无法执行任何面向整个系统的变更工作

如果忘记root密码了怎么办?

目录

重启操作系统

方法一:

1.启动系统进入GRUB2界面后,按下键进入GRUB编辑模式

2.按向下箭头找到linux开头的那一行,在行尾输入一个空格,再输入"rd.break console=tty0"。

3.按+组合键启动系统,执行以下命令重新挂载文件系统

4.执行以下命令改变系统目录为临时挂载目录

5.执行passwd命令修改root密码

6.在根目录下创建相关文件(用于重新标记SELinux环境值)

7.执行exit命令推出chroot环境,再执行exit重启系统

8.查看是否成功(我设置的是5678,输入5678成功进入root用,说明更改成功)

方法二:

1.启动系统进入GRUB2界面后,按下键进入GRUB编辑模式

2.按向下箭头找到linux开头的那一行,在行尾删掉 rhgb quiet再输入一个空格,再输入“init=/bin/bash”或“init=/bin/sh”。(这里以“init=/bin/bash”为例,可自由选择)

3.按+组合键启动系统,执行以下命令以可写方式重新挂载根目录

4.执行以下命令修改root密码

5.如果系统启动了SELinux,必须执行以下命令,否则无法正常启动系统

6.执行以下命令重新启动系统,并查看是否成功

扩展

方法如下:

1.编辑/etc/grub.d/00_header文件,在末尾行添加以下内容并保存。(以下是我设置的,供参考使用)

2.执行以下命令重新生成grub.cfg文件。

测试

4.以上设置密码是明文的,GRUB可对这个密码进行加密,具体方法先执行以下命令生成加密的的密码

5.将/etc/grub.d/00_header文件中的password语句改成上述以grub.pbkdf2.sha开头的密文。最后执行以下命令即可

6.测试(我设置的是密码是1234567,成功进入了,验证成功)


 

重启操作系统

方法一:

1.启动系统进入GRUB2界面后,按下<e>键进入GRUB编辑模式

47568b80f2204d3ca2224f00fe5c48ab.png

2.按向下箭头找到linux开头的那一行,在行尾输入一个空格,再输入"rd.break console=tty0"。

rd.break console=tty0

9dbabcd3d037408f953f3adc211ff99f.png

3.按<Crtl>+<x>组合键启动系统,执行以下命令重新挂载文件系统

mount -o remount,rw /sysroot

14c893872cb74d90af632a73d76dc805.png

4.执行以下命令改变系统目录为临时挂载目录

chroot /sysroot

90e94af037784bd186df11e6c786c56b.png

5.执行passwd命令修改root密码

d003da4b812547129d75d468e274a5d0.png

6.在根目录下创建相关文件(用于重新标记SELinux环境值)

touch /.autorelabel

2139c8e970f44003b7743680d87b90be.png

7.执行exit命令推出chroot环境,再执行exit重启系统

f414256224ed491888ef4afd24bacaaa.png

8.查看是否成功(我设置的是5678,输入5678成功进入root用,说明更改成功)

5cbdb8c75d2c4aa9a6c2cb692877326b.png

方法二:

1.启动系统进入GRUB2界面后,按下<e>键进入GRUB编辑模式

47568b80f2204d3ca2224f00fe5c48ab.png

2.按向下箭头找到linux开头的那一行,在行尾删掉 rhgb quiet再输入一个空格,再输入“init=/bin/bash”或“init=/bin/sh”。(这里以“init=/bin/bash”为例,可自由选择)

init=/bin/bash
init=/bin/sh

 562b5de20ac3444b95a4cb85c85f7ad6.png

3.按<Ctrl>+<x>组合键启动系统,执行以下命令以可写方式重新挂载根目录

mount -o remount,rw /

ef6354f9b1304262a335052387fd170e.png

4.执行以下命令修改root密码

passwd root

50d5658515af4f9fba423ddf44cab101.png

5.如果系统启动了SELinux,必须执行以下命令,否则无法正常启动系统

touch /.autorelabel

71c30a5d75ad4cfc9ace5f0fd610fdcf.png

6.执行以下命令重新启动系统,并查看是否成功

exec /sbin/reboot

2f26f5c9a80f469ba5ad38ccf47a4d65.png

或者执行以下命令重启系统

exec /sbin/init

扩展

说明
为防止通过修改Grub启动菜单方式来达到破解root账户密码等操作,设置Grub菜单密码。

方法如下:

1.编辑/etc/grub.d/00_header文件,在末尾行添加以下内容并保存。(以下是我设置的,供参考使用)

vim /etc/grub.d/00_header
cat << EOF
set superusers='admin'
password admin 123456
EOF

dabf17f92c674cec87a421b992fc6bf6.png

2.执行以下命令重新生成grub.cfg文件。

grub2-mkconfig -o /boot/grub2/grub.cfg

2c1a4506c5ec49de899a518b287be096.png

测试

重启系统按<e>进入GRUB会发现已加密。

184a56e5212a41c79dcfb5752f3939ec.png

4.以上设置密码是明文的,GRUB可对这个密码进行加密,具体方法先执行以下命令生成加密的的密码

grub2-mkpasswd-pbkdf2

a2824363421a457b8237e5057437ccd6.png

5.将/etc/grub.d/00_header文件中的password语句改成上述以grub.pbkdf2.sha开头的密文。最后执行以下命令即可

grub2-mkconfig -o /boot/grub2/grub.cfg

e37f756af4814fcab74850de83b3e029.png

6.测试(我设置的是密码是1234567,成功进入了,验证成功)

45bf14156f0d487dbcff17740e761ccc.png

6358765060e54c0598b6bf5b9d95039f.png

 

  • 12
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值