CentOS 7&RHEL 7與之前的5,6不同的是,當忘記root密碼,並采用GRUB2為啟動器時,將無法通過單用戶模式重置root密碼。下面將介紹如何重置CentOS7的root密碼。
1. 啟動系統,並在GRUB2啟動屏顯時,按下e鍵進入編輯模式。
2. 在linux16/linux/linuxefi所在參數行尾添加以下內容:
init=/bin/sh
3. 按Ctrl+x啟動到shell。
4. 掛載文件系統為可寫模式:
mount -o remount,rw /
5. 運行passwd,並按提示修改root密碼。
6. 如何之前系統啟用了selinux,必須運行以下命令,否則將無法正常啟動系統:
touch /.autorelabel
7. 運行命令exec /sbin/init來正常啟動,或者用命令exec /sbin/reboot重啟。
-------------------------------------分割線-------------------------------------
CentOS 7&RHEL 7進入單用戶方式和重置密碼方式發生了較大變化,GRUB由b引導變成了ctrl+x引導。
重置密碼主要有rd.break和init兩種方法。
rd.break方法:
1、啟動的時候,在啟動界面,相應啟動項,內核名稱上按“e”;
2、進入後,找到linux16開頭的地方,按“end”鍵到最後,輸入rd.break,按ctrl+x進入;
3、進去後輸入命令mount,發現根為/sysroot/,並且不能寫,只有ro=readonly權限;
4、mount -o remount,rw /sysroot/,重新掛載,之後mount,發現有了r,w權限;
5、chroot /sysroot/ 改變根;
(1)echo RedHat|passwd –stdin root 修改root密碼為redhat,或者輸入passwd,交互修改;
(2)還有就是先cp一份,然後修改/etc/shadow文件
6、touch /.autorelabel 這句是為了selinux生效
7、ctrl+d 退出
8、然後reboot
至此,密碼修改完成
init方法:
1. 啟動系統,並在GRUB2啟動屏顯時,按下e鍵進入編輯模式。
2. 在linux16/linux/linuxefi所在參數行尾添加以下內容:init=/bin/sh
3. 按Ctrl+x啟動到shell。
4. 掛載文件系統為可寫模式:mount –o remount,rw /
5. 運行passwd,並按提示修改root密碼。
6. 如何之前系統啟用了selinux,必須運行以下命令,否則將無法正常啟動系統:touch /.autorelabel
7. 運行命令exec /sbin/init來正常啟動,或者用命令exec /sbin/reboot重啟
更多CentOS相關信息見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14