root密码丢失的解决方法

2 views
Skip to first unread message

兰永

unread,
Sep 19, 2006, 9:34:48 AM9/19/06
to chu...@googlegroups.com

一般来说有两种方法可以修改root密码:

1. 进入单用户模式修改密码
对于lilo,在启动时输入

CODE:boot: linux single 


对于grub, 在启动时输入“e”编辑启动项,在“kernel xxx”行末尾加“single”

CODE:kernel /boot/lfskernel-2.6.8.1 root=/dev/hda2 ro single 


启动后root将不会提示密码,输入passwd可以重新设置密码

但是有一些特殊的 init 使得这一方法可能不那么顺利,比如会出现以下提示(或其他古怪信息):

CODE:Give root password for maintenance
(or type Control-D for normal startup) 


那么就需要直接使用 bash 而不是系统的 init :

 

#对于lilo:

CODE:boot: linux init=/bin/bash 


#对于grub:

CODE:kernel /boot/lfskernel-2.6.8.1 root=/dev/hda2 ro init=/bin/bash 


启动后会得到一个 root shell , 但硬盘是只读的, 需要重新加载:

CODE:# mount -o remount,rw /
.... 做你想做的事吧, 比如 vi /etc/passwd ....
# mount -o remount,ro / 


可以重新启动了

 

2.:加载系统分区修改密码(适用于启动管理器有密码保护的情况)

可以使用其他linux LiveCD(如Knoppix和RedHat安装盘的rescue模式)启动,加载系统所在的分区:

CODE:mount /dev/hda2 /mnt 


然后直接修改/mnt/etc/passwd,清空其中的password项

CODE:chroot /mnt
passwd 


设置新密码

 
 
 
 







小 资 女 人 的 最 爱 ( 图 )
女 友 喜 欢 这 些 , 他 统 统 给 了 , 大 家 看 看 是 啥 ( 组 图 )
Reply all
Reply to author
Forward
0 new messages