- 论坛徽章:
- 0
|
我升级2.6.9到2.6.15
我是先编译,然后打包成rpm包,然后执行rpm安装
再mkinitrd /boot/initrd-2.6.15.img 2.6.15 后,但grub.conf不会自动改变
我就自己手动去修改grub.conf,可以起来2.6.15
但是有一个问题是我每次要手动启动,比较麻烦。我做了一个脚本去自动修改grub.conf
# set the first boot kernel edition
sed '/default/d' /boot/grub/grub.conf > /tmp/a.out
sed '9adefault=2' /tmp/a.out > /tmp/b.out
rm -f /tmp/a.out
echo "title Red Hat Enterprise Linux ES (2.6.15)" >> /tmp/b.out
echo " root (hd0,0)" >> /tmp/b.out
echo " kernel /vmlinuz-2.6.15 ro root=LABEL=/" >> /tmp/b.out
echo " initrd /initrd-2.6.15.img" >> /tmp/b.out
mv /boot/grub/grub.conf /boot/grub/grub_back_conf
mv /tmp/b.out /boot/grub/grub.conf
但是出现一个问题,就是每次重装系统的话,2.6.9kenerl的root=LABEL=后面的值会变,但我装系统是通过kickstart自动安装的,所以分区格式是一样的。因为LABEL后面的值会变,搞的我脚本上写死kernel /vmlinuz-2.6.15 ro root=LABEL=/ 这句后,有时装某些机子时会启动不起来,比如有些时候kernel /vmlinuz-2.6.9-5.EL ro root=/1 . 请教此问题应该如何解决?
或者有没什么命令可以自动更新grub.conf的呢? 另外如果不能更新,请教能否通过grep命令去读取LABEL=的后面的那个值呢? |
|