@font-face { font-family: "Times New Roman";}@font-face { font-family: "宋体";}p.MsoNormal { margin: 0 0 0; text-align: justify; font-family: "Times New Roman"; font-size: 14px; }p.p { margin: 7px 0; text-align: left; font-family: "Times New Roman"; font-size: 16px; }span.msoIns { text-decoration: underline; color: blue; }span.msoDel { text-decoration: line-through; color: red; }div.Section0 { page: Section0; }
测试环境:Virtualbox+Ubuntu 15.10
软件版本:VirtualBox Graphical User Interface
Version 5.0.12 r104815
虚拟机运行发行版:centos-6.7-i386
时间:2015-12-30 22:20
测试过程:模拟/boot/grub/grub.cfg文件损坏,具体操作为删除/boot/grub/grub.cfg这个文件,然后重启。
解决方案:以下为成功的案例,第2步可不加enforcing=0这个选项
1、root (hd0,0)
2、kernel /vmlinuz-2.6.32-573.e16.8686 ro root=/dev/dm-0 quiet rhgb #后面可加enforcing=0
3、inid /initramfs-2.6.32-573.e16.i686.img
4、boot
a) 关于第2步中的参数解释
i. ro 将分区挂载为只读模式
ii. root=/dev/dm-0 为指定挂载根目录的位置,由于我安装虚拟机系统的时候选择的是LVM,所以而不是普通的/dev/sda2(当然你如果是先分/boot分区的话,这个看具体的情况了)
iii. quiet 表示只显示重要的信息,而还是全部的,类似于硬件自检的消息不回显示
iv. rhgb redhat graghic boot,会看到图片代替启动过程中的显示文件信息,这些信息可以在系统启动后通过dmesg看到,当然也可以在启动的时候按esc或者是上、下方向键来查看
rhgb = redhat graphical boot - This is a GUI mode booting screen with mnost of information hidden while the user sees a rotating activity icon snipping and brief information as to the computer is doing.
quiet = hides the majority of boot messages before rhgb starts. These are supposed to make the common user more comfortable. They get alrmed about seeing the kernel and initializing messages, so they hide them for their comfort.
详细配置如下:
测试中遇到的问题:
1、在配置内核领导文件以及根目录位置的时候出现问题,配置完显示Kernel panic - not syncing: Attempted to kill init!
解决方案:由于之前有备份的,所以查看了原来的grub.cfg中的内容,原来配置文件中的根目录的挂载位置为/dev/mapper/vg_server-LogVol01,因此我在grub界面直接把这个路径改为root=/dev/mapper/vg_server_LogVol01 quiet rhgb,然后按照之前做的,重启就没有问题了。
如下图,下面是我根目录的挂载位置
2、在配置kernel /vmlinuz-2.6.32-573.e16.8686 ro root=/dev/sda2 quiet rhgb,inid /initramfs-2.6.32-573.e16.i686.img,boot后,重启提示FATAL: Could not load /lib/moudles/2.6.32-573.12.1.316.i686/moudles.dep:no such file no directory
解决方案:由以上的提示信息可以猜测,是因为内核文件对应的驱动文件找不到,所以导致系统加载不正常。
由于之前没有手动编译升级内核,所以我boot目录下的那个文件应该是我在执行yum update时生成的,但是由于当时强制中止了yum的运行所以yum生成的新内核对应的库文件找不到,所以自然就加载不成功了。
因为我目前系统上有一个可用的内核版本,所以我就编辑了/boot/grub/grub.cfg文件,把里面相关新内核的引导直接干掉,然后再把相应的内核文件以及相应的驱动文件删除,就可以正常的启动系统了。
rm -f /boog/vmlinuz-2.6.32-573.12.1.e16.i686
rm -rf /lib/modules/2.6.32-573.12.1.e16.i686/
/boot/grub/grub.cfg文件修改为下图即可
特别声明:要养成良好的习惯,操作之前请备份你认为重要的数据!!!
本文出自 “履霜而坚冰至” 博客,转载请与作者联系!