随着企业中使用Linux系统的数量越来越多,在Linux系统中root是超级管理员,相当于Windows系统的administrator。拥有绝对的权限。当管理员遗忘root密码时(当然几率很小)所采取的必要措施:

修改root密码的三种方法:

一、第一种方法:

第1步:开机后在内核上按“e”。

遗忘Linux系统root密码所采取的必要措施_第1张图片

第2 步:将光标移动到linux16开始的行,添加内核参数rd.break,并按Ctrl+x启动

遗忘Linux系统root密码所采取的必要措施_第2张图片

第3步,依次执行以下命令,重启系统

遗忘Linux系统root密码所采取的必要措施_第3张图片

touch /.autorelabel #//如果你系统没有开启selinux,那么可以不做这一步

经过本人亲自测试,没有问题!

二、第二种方法:

第1步:开机后在内核上按“e”。

遗忘Linux系统root密码所采取的必要措施_第4张图片

第2步:将光标移动到linux16开始的行,改为rw init=/sysroot/bin/sh,并按Ctrl+x启动

遗忘Linux系统root密码所采取的必要措施_第5张图片

第3步:依次输入以下命令,重启系统

遗忘Linux系统root密码所采取的必要措施_第6张图片

touch /.autorelabel #//如果你系统没有开启selinux,那么可以不做这一步

经过本人亲自测试,没有问题!

三、第三种方法:

类似于修复GRUB引导菜单可以参考博客:Linux修复MBR和GRUB引导菜单
进入急救模式输入“passwd root”即可!

这样轻易的修改root用户密码显然是不安全,为了提高安全性,我们可以设置进入GRUB菜单时,设置密码方法如下:

[root@localhost ~]# grub2-mkpasswd-pbkdf2                              //根据提示输入密码
输入口令:
Reenter password: 
PBKDF2 hash of your password is 
//“is”之后是经过加密的密码字串符(由于限制,不可发布)
[root@localhost ~]# cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
[root@localhost ~]# cp /etc/grub.d/00_header /etc/grub.d/00_header.bak
//建议做个备份(实验环境,无所谓)
[root@localhost ~]# vim /etc/grub.d/00_header                 //这是通过密钥工具生成密码的配置文件
                   ……………………                         //省略部分内容
cat << EOF
set superusers="root"                                      //设置用户名
password_pbkdf2 root                                    
//填写刚才通过密钥工具生成的密钥文件(就是刚才生成密钥文件“is”之后的内容,由于限制不可发布)
//设置用户名的密码 
EOF
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
//重新生成配置文件

重新计算机测试,按“e”键进入GRUB菜单时,将提示:
遗忘Linux系统root密码所采取的必要措施_第7张图片
输入正确的用户名和密码方可进入(实验用的是 root,跟系统中的root没有任何关系,而是配置文件设置的root及用加密算法生成的密码)!

———————— 本文至此结束,感谢阅读 ————————