有许多原因可能导致用户口令的遗失,这对系统管理员而言,可能不是一个问题,只要以root账号登录,再用passwd命令更改用户口令就可以了。可是,如果丢失的是root口令,这又怎么办?难道就束手无策、重装系统?这样不仅费时费力,而且还可能造成重要数据的丢失和应用程序的破坏。显然这种做法并不可取。
其实,恢复Linux口令并不是一件很难的事情。Linux口令的恢复有2个方面: 一是给用户产生一个新的口令,使用户能够重新登录系统; 二是找出用户原来的口令,而不是以新口令代替旧口令。一般情况下,用户只希望能够再次登录进入系统即可,而不是获得原口令,也就是这里所说的第一个方面,相对而言,这方面要容易实现得多。我们知道,Linux系统有两个引导程序:LILO和GRUB,口令恢复方式也有所不同。
先说LILO,在出现 lilo: 界面时,按下Ctrl+x 进入命令行模式,在boot:提示符下输入Linux 1 进入单用户维护模式,单用户模式是指系统运行在惟一用户——root用户模式下,进入此模式时,系统只是加载了可运行的最低软硬件配置,以root直接进入,没有口令验证。使用命令passwd root 修改root密码,或直接使用命令passwd –d root 清除root密码,再reboot重新登录系统之后就不需要输入密码了。如果是使用GRUB引导,那么在出现出现引导界面时,然后按e键,用上下键选中你平时启动Linux的那一项(类似于kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/),然后按e键,修改你现在见到的命令行,空格后加入single,结果如下:
kernel/boot/vmlinuz-2.4.20-8 ro root=LABEL=/ single,回车返回,然后按b键启动,即可直接进入Linux命令行,使用命令passwd root 修改root密码,或直接使用命令passwd –d root 清除root密码,再reboot重新登录系统之后就同样不需要输入密码了。
目前相当多的用户安装了Windows和Linux 双系统,当windows出毛病重新安装后,会破坏MBR中的grub导致无法引导系统, 这时需要恢复grub。修复步骤如下:
a.把Linux安装光盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导。
b.等安装界面出来后,按[F5]键,也就是Linux rescue模式。
c. 这里输入Linux rescue 以进入救援模式;
d.然后会出现这样的提示符:
# chroot /mnt/sysimage 改变你的根目录
e.我们就可以操作GRUB了.输入grub:
sh#grub
会出现这样的提示符:
grub>
我们就可以在这样的字符后面,输入: grub>root (hdX,Y)
grub>setup (hd0)
如果成功会有一个successful……
这里的X,如果是一个盘,就是0,如果你所安装的Linux的根分区在第二个硬盘上,那X就是1了;Y,就是装有Linux系统所在的根分区。 setup (hd0)就是把GRUB写到硬盘的MBR上。再重新启动系统,OK, 熟悉的GRUB引导界面又出来了。