您的位置:首页 > 运维架构 > Linux

rhel6.0及centos6.0 忘记root密码解决办法

2012-05-07 14:42 246 查看
前一段日子安装了CentOS6.0的系统,今天突然想进去看看,结果发现忘记了root的密码。于是乎重启,修改grup进入单用户模式,输入 passwd来更改root密码,结果意外的发现无论我怎么输都没反应,不能修改密码。后来通过百度找到了原因。原来在6.0以后的版本中,直接输入 passwd是无效的!这点与之前rhel 5是不同的!一共有四种方法可以修改密码。

1,进入单用户模式后,关闭selinux,再输入passwd即可修改密码。

2,修改/etc/passwd文件,将里面root行代表有密码的"x"删掉。

3,修改/etc/shadow文件,将里面root行加密的密文删掉。

4,通过光盘引导进入修复模式来修改。

由于没有centos镜像,我只做了前三项试验,结果均成功。下面附图:

先修改grub,将第二行行尾加上“1”或“single”





进入单用户模式后,在未关闭selinux之前,输入passwd,会发现没有任何反应。





进入单用户模式后,用“setenforce 0”来关闭grub。可以看到可以输入passwd来更改密码了。





搞了半天,原来是selinux在搞鬼......

如果不关闭selinux,是否也能修改密码呢?答案是肯定的。那么就需要更改shadow或passwd即可。

删除/etc/passwd密码栏:





或删除/etc/shadow密码栏:





删除后所得结果如下,由普通用户切换到超级用户,就不需要输入密码了:





这个问题很简单,只是由于之前修改密码知识的影响,让我苦恼了很久。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: