忘記root密碼怎麼辦
以前阿銘忘記windows的管理員密碼,由於不會用光盤清除密碼最後只能重新安裝系統。現在想想那是多麼愚笨的一件事情。同樣Linux系統你也會遇到忘記root密碼的情況,如果遇到這樣的情況怎麼辦呢?重新安裝系統嗎?當然不用!進入單用戶模式更改一下root密碼即可。如何進入呢。
1. 重啟系統
3秒鐘內,按一下回車鍵。此時你會看到如下提示信息:
GNU GRUB version 0.97 .......
CentOS (2.6.32-358.el6.i686)
阿銘沒有寫完全提示信息,相信你肯定能進入到這一界面。此時CentOS (2.6.32-358.el6.i686) 這一行是高亮的,即我們選中的就是這一行,這行的意思是Linux版本為CentOS,後面小括號內是內核版本信息。另外在這個界面裡,我們還可以獲取一些信息,輸入 ‘e’ 會在啟動前編輯命令行;輸入 ‘a’ 會在啟動前更改內核的一些參數;輸入 ‘c’ 則會進入命令行。而我們要做的是輸入 ‘e’.
2. 進入單用戶模式
輸入 ‘e’ 後,界面變了,顯示如下信息:
root (hd0,0)
kernel /vmlinuxz-2.6.32-358.el6.i686 ro root=UUID=......(此處省略)
initrd /initramfs-2.6.32-358.el6.i686.img
暫時你不用管這些都代表什麼意思,你只要跟著阿銘做即可。按一下向下的箭頭鍵,選中第二行,輸入 ‘e’,出現如下提示:
<_NO_DM rhgh quiet
你只需要在後面加一個 “single” 或者 “1” 或者 “s”
<_NO_DM rhgh quiet single
然後先按回車然後按 ‘b’,啟動後就進入單用戶模式。
3. 修改root密碼
輸入修改root密碼的命令 ‘passwd’:
[root@localhost /]# passwd
Changeing password for user root.
New password:
Retry new password:
passwd: all authentication tokens updated successfully.
修改後,重啟系統
[root@localhost /]# reboot
使用系統安裝盤的救援模式
救援模式即rescue ,這個模式主要是應用於,系統無法進入的情況。如,grub損壞或者某一個配置文件修改出錯。如何使用rescue模式呢?
1. 光盤啟動
阿銘做實驗用的是vmware虛擬機,設置光盤啟動的步驟也許和你的不一樣,但道理是一樣的,相信聰明的你一定不會在這裡出問題。開機啟動,按F2進入bios設置,按方向鍵選擇 “Boot” 那一項,然後使用上下方向鍵和+/-號來移動,最終讓CD-ROM Drive 挪動到最上面一行。最後按F10, 再按回車進入光盤啟動界面。
2. 進入rescue模式
光盤啟動後,使用上下方向鍵選擇 ‘Rescue installed system’ 回車
§ 語言我們默認,直接回車
§ 鍵盤類型,也默認,直接回車
§ Rescue Method 也保持默認,因為我們使用的就是光驅裡的光盤,回車
§ 這一步問我們是否在使用rescue模式的時候啟用網絡,這個根據實際情況,在這裡阿銘選擇NO(使用tab鍵) 回車
§ 接下來這一步,提示我們Rescue 環境將會找到我們已經安裝的Linux系統,並將其掛載到/mnt/sysimage 下,這一步阿銘將會選擇 ‘Continue’ 然後回車
§ 回車後,將會看到一個小提示框,它告訴我們Linux系統掛載到了 “/mnt/sysimage” . 如果想獲得root 環境,需要執行命令 “chroot /mnt/sysimage” 繼續回車
§ 繼續回車
§ 此時又出現一個框,有三種模式可以選擇:shell 模式會直接進入命令行,可以進行的操作有編輯文件、修改用戶密碼等; fakd 是診斷模式; reboot 會直接重啟;這一步阿銘選擇第一個shell模式,然後回車
3. 進入root環境
此時還不能操作Linux系統上的文件,因為目前還在光盤上的系統上,你有沒有使用過windows PE系統?其實目前我們所在的環境就類似於windows上的PE系統。要想修改原來Linux系統上的文件還需要執行一個命令:
bash-4.1# chroot /mnt/sysimage
sh-4.1#
你會發現命令行前後有一處變化:原來的 “bash-4.1” 變成了 “sh-4.1”, 此時我們才可以像在原來的Linux系統上做一些操作,比如更改root密碼或者修改某個文件等等。
Linux下的目錄其實就是windows裡的文件夾,但通常我們都叫做目錄,而不叫文件夾,希望你也要改一下這個習慣。
Linux下的隱藏文件是通過文件名來控制的,所有的隱藏文件的文件名都是以.開頭的,比如 .1.txt 這樣1.txt就是隱藏文件了。
為了您的系統安全,請再為您的系統添加一道防護層。,及時有人接觸您的物理區,沒有密碼,也進不了系統。
[root @ hero root]#vi /etc/grub.conf
設置grub.conf
在沒設置密碼以前:
# boot=/dev/sda
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Enterprise Linux AS (2.4.2-15.EL)
root (hd0,0)
kernel /vmlinuz-2.4.21-15.EL or root=LABEL=/
initrd /initrd-2.4.21-15.EL.img
修改後的
# boot=/dev/sda
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
password=abc
title Red Hat Enterprise Linux AS (2.4.2-15.EL)
lock
root (hd0,0)
kernel /vmlinuz-2.4.21-15.EL or root=LABEL=/
initrd /initrd-2.4.21-15.EL.img
注:這樣GRUB密碼設置為abc,lock的意思是進入linux時需要輸入密碼
給grub加密碼
GRUB有兩種加密方式,一種是lock,一種是利用非明文加密,也就是md5 128位加密。
明文lock方式
CODE:
#cat /boot/grub/grub.conf
default 0
timeout=1
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title Linux
root (hd0,0)
kernel /boot/vmlinuz-2.6.20 ro root=LABEL=/
initrd /boot/initrd-2.6.20.img
.
.
.
. . .
title WindowsVista
rootnoverify (hd0,8)
chainloader +1
上面是原grub.conf
注意: password密碼是明文的,加有一個lock,別人進grub也可以改的:)
改成如下改grub.conf
CODE:
default 0
timeout=1
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
password=333
title linux
lock
root (hd0,0)
kernel /boot/vmlinuz-2.6.20 ro root=LABEL=/
initrd /boot/initrd-2.6.20.img
.
.
.
. . .
title WindowsVista
rootnoverify (hd0,8)
chainloader +1
md5加密方式
運行
# /sbin/grub-md5-crypt (在grub中用: md5crypt)
輸入你的密碼,如333
生成一串東東,是隨即產生的,要記下來.
然後添加到 grub.conf
改grub.conf成如下
CODE:
default 0
timeout=1
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
password --md5 $akflKLUYG003hjue87tw320j(記下來的那串東東)
title linux
lock
root (hd0,0)
kernel /boot/vmlinuz-2.6.20 ro root=LABEL=/
initrd /boot/initrd-2.6.20.img
.
.
.
. . .
title WindowsVista
rootnoverify (hd0,8)
chainloader +1