无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 9957|回复: 21
打印 上一主题 下一主题

grub4dos是否可以判断哪个硬盘有操作系统并自动引导呢?

[复制链接]
跳转到指定楼层
1#
发表于 2015-12-25 16:30:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fly9902 于 2015-12-26 10:18 编辑

现在有这样一个问题,购买了一个Gen8作为Nas使用,机箱自带四个硬盘抽取位(sata1~sata4),还有一个sata5端口可以挂载一个硬盘,bios设置从硬盘引导只能从sata1引导,没有办法选择引导顺序,现在的办法是用u盘使用grub4dos来引导sata5硬盘上的windows启动,但问题来了,sata1~stat4数量发生变化,u盘的启动菜单就要修改一次,有没有办法让grub4dos来判断哪个硬盘里有操作系统呢?

u盘里的menu.lst命令是这样的:有什么办法来判断哪个硬盘有windows server,我想让硬盘数量无论怎么变都可以顺利无干预的实现从sata5启动,请高手帮忙

# This is a sample menu.lst file. You should make some changes to it.
# The old install method of booting via the stage-files has been removed.
# Please install GRLDR boot strap code to MBR with the bootlace.com
# utility under DOS/Win9x or Linux.

color blue/green yellow/red white/magenta white/magenta
timeout 5
default /default

title boot--001
root (hd1,0)
chainloader /bootmgr

title boot--002
root (hd2,0)
chainloader /bootmgr

title boot--003
root (hd3,0)
chainloader /bootmgr

title boot--004
root (hd4,0)
chainloader /bootmgr

title boot--005
root (hd5,0)
chainloader /bootmgr

title reboot
reboot

附件是引导包的全部内容,把u盘格式成NTFS并设置成活动分区,把压缩包里的两个文件放进去就能引导不同硬盘里的操作系统

GEN8中利用U盘或TF卡引导Sata5系统最简单的方法.zip

202.83 KB, 下载次数: 19, 下载积分: 无忧币 -2

2#
发表于 2015-12-25 16:43:49 | 只看该作者
本帖最后由 有阴也有阳 于 2015-12-25 17:09 编辑

title 从最后一块硬盘启动
root (hd-1,0)
chainloader /bootmgr

title reboot
reboot

        不管前面放置了几块硬盘,都能确保从最后的一块硬盘启动。

        或者:

title 从最后一块本地硬盘启动Windows NT/2k/XP系统
rootnoverify  (hd-1,0)
chainloader /ntldr

title 从最后一块本地硬盘启动Win7/Win8/Win10系统
rootnoverify  (hd-1,0)
chainloader /bootmgr

        如果你能确保SATA1接口位置始终有硬盘,增减的只是SATA2、SATA3、SATA4位置的硬盘,那就把SATA1接

口位置的硬盘的主引导记录设置成grub4dos0.4.6a,再把grub4dos0.4.6a的grldr、menu.lst文件和grub4dos0.4.6a的

软件安装压缩包的解压文件夹及里面的全部文件都复制、粘贴到此硬盘的同一个分区的根目录下,在menu.lst菜单上写上:

title 从最后一块硬盘启动
map (hd0) (hd-1)
map (hd-1) (hd0)
rootnoverify (hd0)
chainloader (hd0)+1

        那么一开机,不用从U盘引导也能进入最后的一块硬盘的系统。


点评

因为是可插拔硬盘盒,所以不能保证sata1始终有硬盘,所以每次增减硬盘都得选择usb启动菜单很麻烦  详情 回复 发表于 2015-12-25 17:28
谢谢,我试试看  详情 回复 发表于 2015-12-25 16:46
回复

使用道具 举报

3#
 楼主| 发表于 2015-12-25 16:46:00 | 只看该作者
本帖最后由 fly9902 于 2015-12-25 17:04 编辑
有阴也有阳 发表于 2015-12-25 16:43
title 从最后一块硬盘启动
root (hd-1,0)
chainloader /bootmgr


谢谢,我试试看




不成功,卡住了



# This is a sample menu.lst file. You should make some changes to it.
# The old install method of booting via the stage-files has been removed.
# Please install GRLDR boot strap code to MBR with the bootlace.com
# utility under DOS/Win9x or Linux.

color blue/green yellow/red white/magenta white/magenta
timeout 0
default /default

title boot last Harddisk
root (hd-1,0)
chainloader /bootmgr

title reboot
reboot



帮我看看,是不是脚本不对?

点评

title 从最后一块本地硬盘启动Win7/Win8/Win10系统 rootnoverify (hd-1,0) chainloader /bootmgr 用这个试试。 或者按红毛樱木说的: title 从最后一块本地硬盘启动Win7/Win8/Win10系统 find --set-roo  详情 回复 发表于 2015-12-25 17:12
回复

使用道具 举报

4#
发表于 2015-12-25 17:09:04 | 只看该作者
用find --set-root就可以吧?
回复

使用道具 举报

5#
发表于 2015-12-25 17:12:54 | 只看该作者


title 从最后一块本地硬盘启动Win7/Win8/Win10系统
rootnoverify  (hd-1,0)
chainloader /bootmgr

        用这个试试。

        或者按红毛樱木说的:

title 从最后一块本地硬盘启动Win7/Win8/Win10系统
find --set-root /bootmgr
chainloader /bootmgr


点评

[attachimg]236432[/attachimg] 还是失败,两种都失败了,很郁闷  详情 回复 发表于 2015-12-25 17:24
回复

使用道具 举报

6#
 楼主| 发表于 2015-12-25 17:24:47 | 只看该作者
有阴也有阳 发表于 2015-12-25 17:12
title 从最后一块本地硬盘启动Win7/Win8/Win10系统
rootnoverify  (hd-1,0)
chainloader /bootmgr



还是失败,两种都失败了,很郁闷
回复

使用道具 举报

7#
 楼主| 发表于 2015-12-25 17:28:16 | 只看该作者
本帖最后由 fly9902 于 2015-12-25 17:30 编辑
有阴也有阳 发表于 2015-12-25 16:43
title 从最后一块硬盘启动
root (hd-1,0)
chainloader /bootmgr


因为是可插拔硬盘盒,所以不能保证sata1始终有硬盘,所以每次增减硬盘都得选择usb启动菜单很麻烦



能否像dos一样用if 来判断每块硬盘是否有bootmgr文件,如果有就从这块硬盘启动,没有就从继续检测下块硬盘?

点评

title 从最后一块本地硬盘启动Win7/Win8/Win10系统 find --set-root /bootmgr chainloader /bootmgr  详情 回复 发表于 2015-12-25 17:30
回复

使用道具 举报

8#
发表于 2015-12-25 17:30:08 | 只看该作者
fly9902 发表于 2015-12-25 17:28
因为是可插拔硬盘盒,所以不能保证sata1始终有硬盘,所以每次增减硬盘都得选择usb启动菜单很麻烦


title 从最后一块本地硬盘启动Win7/Win8/Win10系统
find --set-root /bootmgr
chainloader /bootmgr

用这个试试,这要不行,我也没辙了。

点评

的确还是不行,有劳了,谢谢,辛苦  详情 回复 发表于 2015-12-25 17:38
回复

使用道具 举报

9#
 楼主| 发表于 2015-12-25 17:38:48 | 只看该作者
有阴也有阳 发表于 2015-12-25 17:30
title 从最后一块本地硬盘启动Win7/Win8/Win10系统
find --set-root /bootmgr
chainloader /bootmgr
...

的确还是不行,有劳了,谢谢,辛苦

点评

这个菜单报错是什么?还是Error 25 : Disk read error ? 请问楼主1楼自己给出的菜单在U盘是否能够引导成功?  详情 回复 发表于 2015-12-25 19:13
你查看一下你的grub4dos的版本,是不是太旧了,用最新版的grub4dos0.4.6a。  详情 回复 发表于 2015-12-25 18:19
回复

使用道具 举报

10#
发表于 2015-12-25 18:19:13 | 只看该作者
fly9902 发表于 2015-12-25 17:38
的确还是不行,有劳了,谢谢,辛苦

你查看一下你的grub4dos的版本,是不是太旧了,用最新版的grub4dos0.4.6a。

点评

多费心了,我把附件上传到了一楼的附件,帮忙看看,多谢  详情 回复 发表于 2015-12-26 09:11
回复

使用道具 举报

11#
发表于 2015-12-25 18:55:13 | 只看该作者
用NTBOOT中的DETECT.LST自动搜索硬盘或者用SISO BOOT=HD
NTBOOT,SISO本论坛有下载
回复

使用道具 举报

12#
发表于 2015-12-25 19:13:09 | 只看该作者
fly9902 发表于 2015-12-25 17:38
的确还是不行,有劳了,谢谢,辛苦

这个菜单报错是什么?还是Error 25 : Disk read error ?
请问楼主1楼自己给出的菜单在U盘是否能够引导成功?

点评

是的,可以引导,我把引导的全部东西放到了一楼的附件,帮忙看看,多谢  详情 回复 发表于 2015-12-26 09:10
回复

使用道具 举报

13#
发表于 2015-12-25 19:21:27 | 只看该作者
本帖最后由 lbw2007 于 2015-12-25 19:31 编辑

还有一种可能是根目录下有bootmgr但是所在分区没有操作系统。
这种情况建议试一下:
  1. title  1. 启动本地的Windows系统
  2. find --set-root --devices=h /Windows/System32/winload.exe || find --set-root --devices=h /ntldr || configfile (ud)/boot/grub/menu.lst  
  3. map () (hd0)
  4. map (hd0) ()
  5. map --rehook
  6. find --set-root --devices=h /Windows/System32/winload.exe || find --set-root --devices=h /ntldr || configfile (ud)/boot/grub/menu.lst
  7. chainloader /bootmgr || chainloader /ntldr
复制代码

是我自己用的,支持2003及更高版本的server
|| configfile (ud)/boot/grub/menu.lst  
这一句可以改成你自己menu.lst的路径。
也可以用楼上的SISO中的NTBOOT。虽然是手动选择,但是万能。
回复

使用道具 举报

14#
 楼主| 发表于 2015-12-26 09:10:55 | 只看该作者
lbw2007 发表于 2015-12-25 19:13
这个菜单报错是什么?还是Error 25 : Disk read error ?
请问楼主1楼自己给出的菜单在U盘是否能够引导成 ...

是的,可以引导,我把引导的全部东西放到了一楼的附件,帮忙看看,多谢

点评

13楼的的菜单试过了吗? find命令可以查找所有磁盘所有分区的,本身就包含了判断过程。 3楼以后的菜单就开始没有交换磁盘的命令了,但是你的机器可以启动,应该不是这个原因…… 我们看不到你grub4dos的版本,因  详情 回复 发表于 2015-12-26 09:51
回复

使用道具 举报

15#
 楼主| 发表于 2015-12-26 09:11:34 | 只看该作者
有阴也有阳 发表于 2015-12-25 18:19
你查看一下你的grub4dos的版本,是不是太旧了,用最新版的grub4dos0.4.6a。

多费心了,我把附件上传到了一楼的附件,帮忙看看,多谢
回复

使用道具 举报

16#
发表于 2015-12-26 09:51:40 | 只看该作者
fly9902 发表于 2015-12-26 09:10
是的,可以引导,我把引导的全部东西放到了一楼的附件,帮忙看看,多谢

13楼的的菜单试过了吗?
find命令可以查找所有磁盘所有分区的,本身就包含了判断过程。
3楼以后的菜单就开始没有交换磁盘的命令了,但是你的机器可以启动,应该不是这个原因……
我们看不到你grub4dos的版本,因为你只上传了菜单。

点评

谢谢,等下试试,我在一楼上传的附件,就是u盘里的所有东西,就两个文件  详情 回复 发表于 2015-12-26 10:11
回复

使用道具 举报

17#
 楼主| 发表于 2015-12-26 10:11:29 | 只看该作者
lbw2007 发表于 2015-12-26 09:51
13楼的的菜单试过了吗?
find命令可以查找所有磁盘所有分区的,本身就包含了判断过程。
3楼以后的菜单 ...

谢谢,等下试试,我在一楼上传的附件,就是u盘里的所有东西,就两个文件
回复

使用道具 举报

18#
 楼主| 发表于 2015-12-26 10:17:01 | 只看该作者
还是不行,我把完整的东西都传上来,帮忙卡看,谢谢

2015-12-26_101403.jpg (56.21 KB, 下载次数: 154)

2015-12-26_101403.jpg

GEN8中利用U盘或TF卡引导Sata5系统最简单的方法.zip

202.83 KB, 下载次数: 1, 下载积分: 无忧币 -2

点评

看过了你的《GEN8中利用U盘或TF卡引导Sata5系统最简单的方法》,这个方法纯属脱裤子放屁,多此一举, 如何用U盘,或TF卡引导第5块硬盘接口上的系统,参看: http://bbs.wuyou.net/forum.php?m  详情 回复 发表于 2015-12-26 12:04
有没有可能是你用ilo的原因? 还是grub4dos版本太旧了? 我也不能帮到了抱歉  详情 回复 发表于 2015-12-26 11:40
回复

使用道具 举报

19#
发表于 2015-12-26 11:40:34 | 只看该作者
fly9902 发表于 2015-12-26 10:17
还是不行,我把完整的东西都传上来,帮忙卡看,谢谢

有没有可能是你用ilo的原因?
还是grub4dos版本太旧了?
我也不能帮到了抱歉

点评

谢谢,是grubdos版本的问题,多谢,已经解决  详情 回复 发表于 2015-12-26 12:24
回复

使用道具 举报

20#
发表于 2015-12-26 12:04:53 | 只看该作者
本帖最后由 有阴也有阳 于 2015-12-26 12:23 编辑
fly9902 发表于 2015-12-26 10:17
还是不行,我把完整的东西都传上来,帮忙卡看,谢谢


        看过了你的《GEN8中利用U盘或TF卡引导Sata5系统最简单的方法》,这个方法纯属脱裤子放屁,多此一举,

如何用U盘,或TF卡引导第5块硬盘接口上的系统,参看:

        http://bbs.wuyou.net/forum.php?m ... F4%B6%AF&page=2

的第15楼。

       如果你使用的是U盘,不是TF卡,就不用Diskgenius来把U盘格式成NTFS格式、“重新建立主引导区”,并且激活当前分区之

类的了,直接用BOOTICE软件把你的U盘的“主引导记录”和“分区引导记录”设置成grub4dos0.4.6a的就行了,这部分参阅:

        http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1

        然后从“d.下载grub4dos0.4.6a软件,下载链接:......”开始照着上面说的一步步地做就行了。




点评

谢谢,是grubdos版本的问题,多谢,已经解决  详情 回复 发表于 2015-12-26 12:24
回复

使用道具 举报

21#
 楼主| 发表于 2015-12-26 12:24:22 | 只看该作者
有阴也有阳 发表于 2015-12-26 12:04
看过了你的《GEN8中利用U盘或TF卡引导Sata5系统最简单的方法》,这个方法纯属脱裤子放屁,多此 ...

谢谢,是grubdos版本的问题,多谢,已经解决
回复

使用道具 举报

22#
 楼主| 发表于 2015-12-26 12:24:35 | 只看该作者
lbw2007 发表于 2015-12-26 11:40
有没有可能是你用ilo的原因?
还是grub4dos版本太旧了?
我也不能帮到了抱歉

谢谢,是grubdos版本的问题,多谢,已经解决
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-12-1 03:29

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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