**RHEL7.4進入單使用者方式和重置密碼方式發生了較大變化,GRUB由b引導變成了ctrl+x引導。
重置密碼主要有rd.break和init兩種方法。(經過測試RHEL7.4 通過)**
rd.break方法:
1、啟動系統後,會出現下面這種情況,我們按(e)進入grub模式;
2、進入後,找到linux16開頭這行,按“end”鍵到最後輸入rd.break,按ctrl+x組合鍵繼續;3、進去後輸入如下指令:
mount -o remount,rw /sysroot #挂載/sysroot
chroot /sysroot #切換至系統
passwd root #更改密碼
touch /.autorelabel #更新系統資訊檔案(touch /.autorelabel 這句是為了使得selinux生效,否則将無法正常啟動系統)
至此,密碼修改完成
那我們要怎麼防止被别人進入grub破解root密碼呢?
就是在grub加密。gurb2密碼有明文跟密文。我們一一示範一下.
進入系統後,輸入 vim/etc/grub.d/10_linux
添加以下指令:
cat <<EOF
set superusers="laotang6"
password laotang6 123456
EOF
#(laotang6是使用者名,123456是密碼,這個大家根據自己設定)
grub2-mkpasswd-pbkdf2 #生成新的grub檔案
重新開機電腦,按e進入grub模式,發現被加密了,要帳号密碼才能進入。
密文加密就是先把自己的密碼轉化為一串加密的字元串
grub2-mkpasswd-pbkdf2 #生成密碼加密
vim /etc/grub.d/10_linux
cat <<EOF
set superusers="laotang6"
password_pbkdf2 laotang6 生成的密碼加密
EOF
- 在linux16所在參數行ro更改為rw rd.break init=/sysroot/bin/sh
- 按Ctrl+x啟動到shell。
- 挂載檔案系統為可寫模式:mount –o remount,rw /sysroot (如果沒有改成rw執行這一步)
- 換根 chroot /sysroot
-
運作passwd,并按提示修改root密碼。
7.如何之前系統啟用了selinux,必須運作以下指令,否則将無法正常啟動系統:touch /.autorelabel (必須做,我未做時,密碼沒有修改成功)
8、exit退出
9、reboot 重新開機