<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/ DTD/wml_1.1.xml">

<wml>
<head>
<meta http-equiv="cache-control" content="max-age=180,private" />
</head>
<card title="linux 各种发行版-忘记root密码的对应措施">
<p>
作者:<a href="index.php?action=showuser&amp;userid=1&amp;hash=">admin</a><br />时间:2022-11-28 17:23<br />分类:<a href="index.php?action=list&amp;cid=3&amp;hash=">电脑技术</a><br />内容:
linux 各种发行版-忘记root密码的对应措施



fedora

忘记了进入linux的所有的用户密码，连root的都忘记了，只能取消root的密码使之为空才能登陆了。
对于grub启动管理程序，方 法如下：

修复方法：
(1)在进入grub 启动界面时选择linux,并按键盘上的e键
2)可以看到如下四个选项：

比如： 


XML/HTML代码


    root (hd0,0)

    module /vmlinuz-2.6.18-1.2798.fc6xen ro root=/dev/volgroup00/logvol00 rhgb

    quiet




修改其中的（可能是第三行） module /vmlinuz-2.6.18-1.2798.fc6xen ro

root=/dev/volgroup00/logvol00 rhgb quiet

在 module /vmlinuz-2.6.18-1.2798.fc6xen ro root=/dev/volgroup00/logvol0 后面加
空格和single 或者(空格和 linux s) 或者(空格和 init 1)

变成：module /vmlinuz-2.6.18-1.2798.fc6xen ro root=/dev/volgroup00/logvol00
single rhgb quiet

(3)按回车退出修改界面。

(4)按键盘上的&quot;b&quot;键，启动系统，进入命令行界面。

(4)vim /etc/passwd 取消root用户的密码，

即修改第一行：root:x:0:0:root:/root:/bin/bash

去掉或者删除第一个&ldquo;冒号&rdquo;后面的&quot;x&quot;,使之变成：root::0:0:root:/root:/bin/bash

(5)保存修改（直接输入 冒号 : ，进入命令行模式，接着输入 wq，回车保存退出 ），reboot即可。再次启动登陆时root密码即为空了。

 redhat

redhat默认安装方式下用的是grub引导的，所以在出现启动菜单时（就是选择引导菜单的时候），就可以按&ldquo;e&rdquo;键进入编辑状态，具体操作如 下：

1.在出现grub画面时，用上下键选中你平时启动linux的那一项，然后按e键

2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro
root=label=/)，然后按e键

3. 修改你现在见到的命令行，加入空格single，结果如下： kernel /boot/vmlinuz-2.4.18-14 ro
root=label=/ single

4. 回车返回，然后按b键启动，即可直接进入linux命令行

5. 在#提示符下直接输入命令：passwd root 然后写入你的新密码

6. #提示符下输入reboot 重启

debian

现在我们一般使用grub作为系统的引导程序，而lilo进入单用户的方法很简单，这里就不提了。

对于一些版本的os（如redhat）来说，编辑grub，在后面加上&ldquo;single&rdquo;即可进入单用户模式。但是对于debian来说，这种方式是
无效的，因为debian进入单用户模式也需要你输入root用户的密码。

下面介绍一个在所有版本linux的grub上均可以使用的方法：

1、在grub的引导装载程序菜单上，选择你要进入的条目，键入 &ldquo;e&rdquo; 来进入编辑模式。
2、在第二行（类似于kernel /vmlinuz-2.6.15 ro root=/dev/hda2 ），键入&rdquo;e&rdquo;进入编辑模式；
3、在句末加上&rdquo;init=/bin /bash&rdquo;，回车；
4、按&ldquo;b&rdquo;启动系统。

这样我们即可获得一个bash的shell。

进入shell后，根分区的挂载模式默认是只读，我们要将其改为可写，否则不能更改root密码:


XML/HTML代码


    mount -no remount,rw /

    passwd root

    sync

    mount -no remount,ro /

    reboot





 这样即可成功更改debian的root用户的密码。

gentoo

登录gentoo服务器。发现忘记了root密码。没办法直接single模式登录吧。

在引导装载程序菜单上，键入 [e] 来进入编辑模式。


XML/HTML代码


    你会面对一个引导项目列表。查找其中类似以下输出的那一行：

    kernel /vmlinuz root=/dev/sda2    

    按箭头键直到这一行被突出显示，然后按 [e] 。

    按一下空格键来添加一个空格，然后添加 single 来通知 grub 引导单用户 linux 模式。

    按 [enter] 键来使编辑结果生效。你会被带回编辑模式屏幕，从这里，按 [b]

    grub 就会引导单用户 linux 模式,却发现single模式登录也要密码,我晕。





 single模式不行，直接就grub下修改 


XML/HTML代码


    kernel /vmlinuz root=/dev/sda2 init=/bin/bash

    按b重启进入了系统后，passwd root修改密码。。发现修改不了。原来默认的




权限是read only的。没办法。继续重复grub 操作，修改

 


XML/HTML代码


    kernel /vmlinuz root=/dev/sda2 init=/bin/bash rw





 按b重启，终于进入了shell。修改root密码，搞定。。。。

centos

很简单，两步就搞定：

1.在开机启动的时候能看到引导目录，用上下方向键选择你忘记密码的那个系统，然后按&ldquo;e&rdquo;。

2.接下来你可以看到如下图所示的画面，然后你再用上下键选择最新的内核，然后在按&ldquo;e&rdquo;。

3.执行完上步操作后可以看到下面的画面，在rhgb quiet最后加&ldquo;空格&rdquo;，然后键入&ldquo;single&rdquo;，或者直接输入数字的&ldquo;1&rdquo;并回车确定。

4.按&ldquo;b&rdquo;键，重新引导系统。

5.进入到系统后就可以用熟悉的passwd root来更改root的密码了。改完后reboot即可

aix

 忘记root密码后，重设root密码步骤：
 1、 插入系统启动光盘（就是aix 安装光盘的 cd 1），重启系统。
 2、 在系统启动界面出现时，按1键，进入sms menu模式。
 3、 选择7（select boot options）并回车。
 选择 1（select install or boot device）并回车。
 选择3（cd/dvd）并回车。
 选择6（list all device）并回车。
 选择12（cd-rom）并回车。
 选择2（normal mode boot）并回车。
 选择1（yes） 并回车。
 4、 系统提示&ldquo;starting softwoare please wait...&rdquo;。
 5、 输入 1 选择系统终端，并回车。
 6、 选择1（type 1 and press enter to have
 english during install），并回车。
 7、 选择3（start maintenance mode for system
 receovery）， 并回车。
 8、 选择1（access a root volume group），并回车。
 9、 选择0（continue），并回车。
 10、
 选择1（volume
 group），并回车。
 11、
 选择1（access
 this volume group and start a shell），并回车，进入root用户提示符&ldquo;#&rdquo;。
 12、
 执行passwd，输入密码&ldquo;root&rdquo;，再次 确认密码&ldquo;root&rdquo;，重启系统。
 13、
 在系统启动界面出现时，按1键，进入menu模式。
 14、
 选择7（select
 boot options）并回车。
 选择1（select install or boot device）并回车。
 选择5（hard drive）并回车。
 选择6（list all device）并回车。
 选 择10（scsi 73gb harddisk）并回车。
 选择2（normal mode boot）并回车。
 选择1（yes）并回车。
 15、
 系统提示&ldquo;starting softwoare please
 wait...&rdquo;。
 16、
 系统启动完成，使用root用户和修改后的密码登录。
 17、
 取出系统光 盘，密码修改完成。

solaris

可以有如下两种情况
1. 工作站只有root用户，无其他用户。
2. 工作站除了root用户以外，还有其他的用户
1. 如果连接了网络，我们可以采用远程缓冲溢出的方法，但是这样的方法不属于&ldquo;经典&rdquo;方法，且有的远程缓冲溢出具有一定的破坏性，不建议使用。还有一种方法就
是采用sun公司自带的光盘采取引导,建议采取这种方法：
1. boot cdrom -s
2. fsck /dev/dsk/c0t0d0s0 (取决于根分区的设备)
3. mount -f ufs /dev/dsk/c0t0d0s0 /mnt
4. term=ansi; export term
5. 编辑/mnt/etc/shadow文件，把root对应的口令去掉。
6. 重启后的root的口令为空。

2. 如果还有普通用户，方法可以采用本地缓冲溢出，这种方法虽然破坏性小，但是也有损毁硬盘引导区的危险，建议采用&ldquo;文件连接&rdquo;错误是获得root权限，这种
方法没有什么危险性。


</p><p>
<a href="index.php?action=login&amp;hash=">立即登陆发表评论</a><br />
</p>
<p><a href="index.php?action=list&amp;hash=">返回日志列表</a><br /><a href="index.php?action=index&amp;hash=">返回主页</a></p>
</card>
</wml>
