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

误将Linux引导系统的启动菜单破坏之后。。。

2011-04-22 22:26 344 查看
我的笔记本电脑装的是WindowsXP和OpenSUSE11.3双系统。平时都是用装在linux下的GRUB启动。今天不知怎么的,一次开机时突然选择进入哪个系统的启动菜单不见了,取而代之的是grub命令行。现在好了,什么系统都进不去了。

在网上找了一下,是grub的menulist之类的文件丢失或背破坏造成的。其实用grub的命令行启动系统并不是很麻烦。

主要就是指定好启动所需要的两个文件:kernel 和 initrd。

1 root (hd0,2)

2 kernel /vmlinuz-2.6.26.5-28.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet

3 initrd /initrd-2.6.26.5-28.fc8.img

4 boot

这样四条命令

第一条指定分区(非必须,就好像cd到某目录下之后再操作就可以用相对路径了一样,为了后面简便而已)

如果不知道应该在哪个分区里,可以在打完“root (hd0,”时按Tab,就会有提示,一个个试下来也行,反正也不多。

第二条指定kernel,敲完“kernel /”之后,同样可以Tab出所有的可选项,kernel一般是“vmlinuz-xxx”这样的文件

第三条指定initrd,方法同第二条。文件名都是“initrd-xxx”这样的

第四条不用说,就是开始启动啦~

这样大功告成之后,系统就启动起来了。我跑到/boot目录下看了一下

我的OpenSUSE11.3中的文件如下

-rw------- 1 root root 512 04-22 21:06 backup_mbr

lrwxrwxrwx 1 root root 1 04-22 20:57 boot -> .

-rw-r--r-- 1 root root 1236 04-22 21:03 boot.readme

-rw-r--r-- 1 root root 115961 04-22 20:57 config-2.6.34.7-0.7-default

drwxr-xr-x 2 root root 1024 04-22 21:32 grub

lrwxrwxrwx 1 root root 27 04-22 20:57 initrd -> initrd-2.6.34.7-0.7-default

-rw-r--r-- 1 root root 11685967 04-22 20:57 initrd-2.6.34.7-0.7-default

drwx------ 2 root root 1024 04-22 20:57 lost+found

-rw-r--r-- 1 root root 423936 04-22 21:06 message

-rw-r--r-- 1 root root 190301 04-22 20:57 symvers-2.6.34.7-0.7-default.gz

-rw-r--r-- 1 root root 1505387 04-22 20:57 System.map-2.6.34.7-0.7-default

lrwxrwxrwx 1 root root 28 04-22 20:57 vmlinuz -> vmlinuz-2.6.34.7-0.7-default

-rw-r--r-- 1 root root 3791424 04-22 20:57 vmlinuz-2.6.34.7-0.7-default

不明白为什么要有一个指向自身的链接boot

boot.readme是个说明文件

grub目录下放着grub启动所需的文件menu.lst device.map等。

initrd是指向当前启动所需initrd实际文件的软链接

vmlinuz类似

特别提一下这些文件:

message是启动菜单的图形界面所需的文件。我尝试把它删掉之后,grub的菜单就是黑背景命令行式的了

而symvers-2.6.34.7-0.7-default.gz

和System.map-2.6.34.7-0.7-default

应该是YaST配置时候需要的文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: