Centos7下忘记 root密码的修改方法
Centos7下忘记 root密码的修改方法
首先来看看一个centos下一个重要的文件
/etc/passwd 这个文件存放了用户的详细信息,包括root密码,也就是说,我们通过一种方式来修改这里面属于root的密码数据。
使用more命令来查看 /etc/passwd下的内容,我们发现root用户就在第一条。
其中root用户的密码就是上面的第二项:x,虽然我们不知道这个x确定,但是我们可以删除掉x这样第二型就没有值,密码就为空了。接下来,我将介绍两种办法来修改这个地方。
以下均在虚拟机测试,系统为centos7
Solution one:
step 1:进入到这个界面后,我们按e
step 2:按e后,我们进入到下面界面。然后通过上下键来移动。
step 3:完成下面两步后,按ctrl + x
step 4: 我们就进入到sh模式,如下图
这里,我们敲两段命令
#mount -o remount,rw /
#vi /etc/passwd //enter以后,我们就进入到用户信息文件,如下图
step 5:我们按i,进入编辑模式,然后光标移动到root那里,删除那个x
然后esc退出编辑模式,shitf + : 进入命令模式
然后在命令行输入wq即可。
完成操作后,结果如上图。然后我们重启即可。进入系统后,别忘记在给Root设置一个密码!
Solution 2:大致思路就是,用另一个系统作为启动盘,那么该系统就获得root权限,而当初那个root密码被忘记的系统,就沦为该系统的一个文件。我们在到该系统下去找到/etc/passwd这个文件,修改原来root的密码。修改完成后,我们在重新设置启动项,将原来系统作为主启动,用我们修改的密码登录即可。
step 1:在BIOS里面设置了CD-ROM启动项后,保存出现如下界面
我们点击Troubleshooting选型进去
step 2:进入到如下界面,我们选择第二项,回车
step 3: 点击continue
step 4:单击OK
step 5:进入到如下界面
step 6:这里与上面有点不同,我们来看看step 4 图中的英文:if you would like to make your system the root enviroment,run the commad:
chroot /mnt/sysimage。这里意思是说:如果你想让这个系统作为你的根目录,那么原先你运行的那个系统文件都会存放到/mnt/sysimage这个目录中,也就是说,我们要修改的/etc/passwd文件被移动到了/mnt/sysimage下的一个子目录里。在接下来的操作中,你有两种方式来选择:第一种,我们来改变根目录,还是选择原来的系统作为根目录,那么我们之前的操作都一样;如果你要改变根目录,那么相应的操作,你得修改一下。我们这里按照默认方式进行修改,也就不改变根目录。我们用cd命令进入到该目录下,就行操作。
将root密码置空,然后保存退出。
step 7:重启之后,我们要进入到BIOS里面,将启动项设置为硬盘启动(也就是,存放你原先系统的磁盘)
step 8:保存退出就OK啦