如果谁说他的Linux从来没有遇到“疑难杂症”,我觉得是不可信的,就算是操作界面最友好的WindowXP也时常遇到各种各样的问题,有的问题实在蹊跷到只有更换硬件才能解决!Linux也是这样的,而且他的自由性,更是加大出问题的频繁程度。当然也是因为Linux开源的特点,不管出了什么问题,你都可以在源代码级找到症结所在,这正是Linux魅力所在。
1、在不登录情况下,获得root权限
如果没有设置GRUB密码,那我们可以使用最简单的方法,首先启动电脑,等待GRUB菜单,如果GRUB菜单隐藏,可以按Esc调出,选择Ubuntu, kernel 2.6.12-*-* (recovery mode),也就是“恢复模式”按Enter启动就可以了。
另外一个办法是用Ubuntu安装盘获得root权限,用Ubuntu安装盘启动电脑,当显示“boot:”时,输入“rescue”
boot: rescue
按屏幕提示操作就可以了。
2、通过改变内核启动参数获得根权限
启动电脑,等待GRUB菜单,如果GRUB菜单隐藏,可以按Esc调出,如果设置了GRUB密码,按p来解锁,比如我们选择了Ubuntu, kernel 2.6.12-8-386,按e在启动前编辑启动参数,选择kernel /boot/vmlinuz-2.6.12-8-386 root=/dev/hda2 ro quiet splash,按e编辑选定的启动菜单项,在参数最后添加rw init=/bin/bash,即改为如下命令行:
grub edit> kernel /boot/vmlinuz-2.6.12-8-386 root=/dev/hda2 ro quiet splash rw init=/bin/bash
按b启动即可。
3、忘记了root用户/主用户密码
按照第一项:在不登录情况下,获得root权限后,在命令行输入:
passwd root
按照提示,输入两次密码就可以设定root用户密码了,如图一所示。
图1
要更改主用户密码:
passwd system_main_username
按照提示,输入两次密码就可以了。
4、忘记了GRUB菜单密码
在命令行输入
grub
等提示符变为grub> 后,输入:
md5crypt
这是计算密码的md5值,也就是加密值,然后在提示Password:后,输入新密码:
Password: ****** (ubuntu)
系统会计算出加密值:
Encrypted: $1$ZWnke0$1fzDBVjUcT1Mpdd4u/T961
按quit退出,如图二所示:
quit
图2
然后备份并编辑文件menu.lst:
sudo cp /boot/grub/menu.lst /boot/grub/menu.lst_backup
sudo gedit /boot/grub/menu.lst
找到
...
password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
...
替换为
password --md5 $1$ZWnke0$1fzDBVjUcT1Mpdd4u/T961 (这是我们上面计算出的加密值)
保存文件即可。
5、在安装Windows后恢复GRUB启动菜单
经常出现的情况是,我们想重装一下windows系统,但是重装会把启动Linux的菜单冲掉,这是个让人头疼的问题,我们这样来解决它:
首先按照第一项,用Ubuntu安装盘获得root权限,我们假定 /dev/hda 为 /boot 所在分区,然后在提示符输入:
# grub-install /dev/hda
这样grub-install程序会为我们安装grub菜单。
6、在Windows中读取Linux分区(ext2, ext3)
我们用软件Ext2fs可以在Windows中读取Linux分区,软件官方首页:http://www.fs-driver.org/index.html,下载地址是:http://www.fs-driver.org/download/Ext2IFS_1_10b.exe 程序界面如图三所示:
图3