常常有些朋友在設定好了linux之後,結果root密碼給他忘記了!要重新安裝嗎?答案是不需要的~。
一般來說有兩種方法可以修改root密碼:
1. 進入單用戶模式修改密碼
對於lilo,在啟動時輸入
代碼:
boot: linux single
對於grub, 在啟動時輸入“e”編輯啟動項,在“kernel xxx”行末尾加“single”
代碼:
kernel /boot/lfskernel-2.6.8.1 root=/dev/hda2 ro single
啟動後root將不會提示密碼,輸入passwd可以重新設置密碼
但是有一些特殊的 init 使得這一方法可能不那麼順利,比如會出現以下提示(或其他古怪信息):
代碼:
Give root password for maintenance
(or type Control-D for normal startup)
那麼就需要直接使用 bash 而不是系統的 init :
代碼:
#對於lilo:
boot: linux init=/bin/bash
對於grub:
kernel /boot/lfskernel-2.6.8.1 root=/dev/hda2 ro init=/bin/bash
啟動後會得到一個 root shell , 但硬盤是只讀的, 需要重新加載:
代碼:
# mount -o remount,rw /
.... 做你想做的事吧, 比如 vi /etc/passwd ....
# mount -o remount,ro /
可以重新啟動了
2.:加載系統分區修改密碼(適用於啟動管理器有密碼保護的情況)
可以使用其他linux LiveCD(如Knoppix和RedHat安裝盤的rescue模式)啟動,加載系統所在的分區:
代碼:
mount /dev/hda2 /mnt
然後直接修改/mnt/etc/passwd,清空其中的password項
或
代碼:
chroot /mnt
passwd
設置新密碼