您的位置:首页 > 运维架构 > Linux

linux的root密码找回

2009-05-08 16:54 253 查看
常常有些朋友在设定好了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

设置新密码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: