LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 907|回复: 8

如何用脚本判断当前的系统是用lilo启动还是用grub启动的?

[复制链接]
发表于 2005-7-22 17:10:53 | 显示全部楼层 |阅读模式
如何用脚本判断当前的系统是用lilo启动还是用grub启动的? 困扰好几天了...
发表于 2005-7-22 18:40:54 | 显示全部楼层
#!/bin/bash

if [ -e /boot/grub ]
then
   echo "The boot loader is grub"
else
   echo "The boot loader is lilo"
fi
回复 支持 反对

使用道具 举报

发表于 2005-7-22 21:24:26 | 显示全部楼层
这个怎么可能?即使没有装grub,有的linux也有/boot/grub目录
lilo的配置文件可以和grub的一起存在,关键看mbr里面是什么
应该用另外的方法把
Post by whlmylove
#!/bin/bash

if [ -e /boot/grub ]
then
   echo "The boot loader is grub"
else
   echo "The boot loader is lilo"
fi
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-23 08:25:30 | 显示全部楼层
严重同意 断翅蝴蝶 的看法...... 有一点疑惑的是: 引导信息一定在MBR吗? 不会在分区吗?
回复 支持 反对

使用道具 举报

发表于 2005-7-23 09:36:17 | 显示全部楼层
本来想用strings硬盘的mbr,但发现其中既有LILO,又有GRUB,奇怪了。

不过这办法还是可行的;用LILO作bootloader的话其中不会有GRUB字符吧

  1. if dd if=/dev/hda bs=446 count=1 | strings | grep -q GRUB; then
  2. echo "Your bootloader is GRUB"
  3. elif dd if=/dev/hda bs=446 count=1 | strings | grep LILO; then  
  4. echo "Your bootloader is LILO"
  5. else  
  6. echo "Unknown bootloader"
  7. fi                              
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-23 11:00:30 | 显示全部楼层
我试了一下, 在boot loader = grub时, 可以! 不过还没有在boot loader = lilo时测试...
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-7-23 11:26:31 | 显示全部楼层
在bootlodaer=lilo的机器上测试了.....完全正确...谢谢troll, 断翅蝴蝶 , whlmylove 的回答!
回复 支持 反对

使用道具 举报

发表于 2005-7-23 13:42:51 | 显示全部楼层
Post by troll
本来想用strings硬盘的mbr,但发现其中既有LILO,又有GRUB,奇怪了。

不过这办法还是可行的;用LILO作bootloader的话其中不会有GRUB字符吧

  1. if dd if=/dev/hda bs=446 count=1 | strings | grep -q GRUB; then
  2. echo "Your bootloader is GRUB"
  3. elif dd if=/dev/hda bs=446 count=1 | strings | grep LILO; then  
  4. echo "Your bootloader is LILO"
  5. else  
  6. echo "Unknown bootloader"
  7. fi                              
复制代码



GOOD~~~ :2cool
回复 支持 反对

使用道具 举报

发表于 2005-7-23 14:46:32 | 显示全部楼层
Post by troll
本来想用strings硬盘的mbr,但发现其中既有LILO,又有GRUB,奇怪了。

不过这办法还是可行的;用LILO作bootloader的话其中不会有GRUB字符吧

  1. if dd if=/dev/hda bs=446 count=1 | strings | grep -q GRUB; then
  2. echo "Your bootloader is GRUB"
  3. elif dd if=/dev/hda bs=446 count=1 | strings | grep LILO; then  
  4. echo "Your bootloader is LILO"
  5. else  
  6. echo "Unknown bootloader"
  7. fi                              
复制代码



GOOD~~~ :2cool
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表