无忧启动论坛

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

关于U盘上直接syslinux引导启动ntldr的构想

[复制链接]
跳转到指定楼层
1#
发表于 2007-8-14 23:52:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天我用如下方法用syslinux引导DOS的io.sys成功:1. 将U盘格式化为DOS启动盘 2. 提取DOS启动扇区文件 3. 安装syslinux到U盘,用它来引导DOS启动扇区文件,成功进入DOS

于是我想到也许可以用同样的方法引导ntldr:
1. 制作ntldr引导的启动U盘
2. 提取启动扇区文件
3. 安装syslinux到U盘,用它来引导启动扇区文件

同样的方法应该也可以用于引导其他的操作系统或多启动管理器。

但如果U盘为HDD格式,我们可能需要提取U盘的MBR。我不知道syslinux是否可以直接引导MBR文件。

试想,如果以上方案成功,我们可以做很多事情,比如用syslinux直接引导PE。。。等等

无论如何,希望以上信息会对大家有所帮助。有兴趣的朋友们不妨试试。
2#
发表于 2007-8-15 04:00:53 | 只看该作者
grub不好用吗?为什么非要SYSLINUX???
回复

使用道具 举报

3#
发表于 2007-8-15 07:56:49 | 只看该作者
貌似grub4dos功能上最强
能引导的冬冬最多

例如我上次发过的直接用fdisk的mbr
通过dos启动扇区,直接启动io.sys通过config.sys
来实现grub.exe不同参数的选择
从而适应u盘被识别为hdd和zip这辆中不同的格式
回复

使用道具 举报

4#
发表于 2007-8-15 07:58:55 | 只看该作者
如果仅仅时引导NTLDR
大部分U盘
通过启动盘工具制作一个基于msdos的引导盘
然后用bootsect /nt52 x:
对U盘写入NT引导
把ntldr放倒u盘根目录就可以直接引导了
回复

使用道具 举报

5#
发表于 2007-8-15 10:19:38 | 只看该作者
可以用SYSLINUX加载GRUB.EXE再通用GRUB来加载.
因为SYSLINUX的兼容性比较好,所以我在光盘上一般使用SYSLINUX引导.需要时再通用SYSLINUX加载GRUB.EXE进行GRUB
回复

使用道具 举报

6#
 楼主| 发表于 2007-8-15 23:15:42 | 只看该作者
1. 用syslinux是因为syslinux的兼容性较好,能适应更多不同的硬件(上次我直接把grldr装在U盘的主引导区,结果在某台机器上就不能引导)
2. Grub4dos可以直接用chainloader /io.sys来启动dos,不需要fdisk的mbr
3. 用syslinux启动grub4dos再用grub4dos来引导的话,syslinux与grub4dos有时会有兼容性问题

别以为syslinux功能很弱呢,看看从官方下载下来的syslinux包吧,里面有很多模块可以扩充syslinux的功能,相当于插件一样。

另外我又有新发现:早些时候,grub4dos还不能直接引导io.sys,做grub启动软盘的时候,我们通常是用它来加载一个dos启动扇区文件(如msdos.bs)来启动软盘上的dos。而使用U盘时,直接用这个文件是不行的。这时只要把后缀.bs改为.bss,就可以直接用syslinux引导了!因此我先前说的提取U盘上的启动扇区就不必要了!不过这个方法只对引导msdos有效。

[ 本帖最后由 Brglng 于 2007-8-15 11:19 PM 编辑 ]
回复

使用道具 举报

7#
发表于 2007-8-16 06:17:51 | 只看该作者
不同意,用DOS直接GRUB就好了。。。。。。这和SYSLINUX引导GRUB一样,而且不回有兼容问题。。。启动DOS容易,启动SYS还要写MBR??
回复

使用道具 举报

8#
 楼主| 发表于 2007-8-17 21:15:29 | 只看该作者
但是dos不能引导ntldr吧?不要告诉我dos->grub->ntldr……
你一定要这样做的话,我也无话可说

我只是想提出这样一种可能性,提出一个新的研究课题,至于这种方案到底怎么样,倒是无暇顾及的。
只是让大家知道,我们可以有多种选择。
回复

使用道具 举报

9#
发表于 2008-7-29 18:13:13 | 只看该作者
应该是这样的 吧 >syslinux-->dos-->grub-->
但是有个问题是怎么能够锁定在fd0上
难啊 不知道大家有何高见
这个loadbin ldntldr 和ldgrub 都用过了 还是不行
直接 调用 ldxpe 也不可以
敬请大家指教
回复

使用道具 举报

10#
发表于 2008-7-29 19:11:00 | 只看该作者
很简单:
1)用syslinux 3.70, 以及此版本所带的chain.c32
2)命令为:
    kernel chain.c32
    append hd0 1 ntldr=/ntldr
    这里假设ntldr在U盘根目录下,第一个分区
回复

使用道具 举报

11#
发表于 2008-7-29 19:12:43 | 只看该作者
附上完整的配置文件:
====================
PROMPT 0
TIMEOUT 90
DEFAULT /boot/vesamenu.c32
MENU BACKGROUND /boot/pe2008.png

MENU WIDTH 36
MENU MARGIN 0
MENU ROWS 7
MENU HELPMSGROW 14
MENU TIMEOUTROW 22
MENU TABMSGROW 24
MENU CMDLINEROW 24
MENU HSHIFT 40
MENU VSHIFT 2

        menu color screen        37;40      #00000000 #00000000 none
        menu color border        30;44      #00000000 #00000000 none
        menu color title        1;36;44    #00000000 #00000000 none
        menu color unsel        37;44      #ff60CA00 #00000000 none
        menu color hotkey        1;37;44    #ff60CA00 #00000000 none
        menu color sel                7;37;40    #ffffffff #ff60CA00 none
        menu color hotsel        1;7;37;40  #ff808080 #ff60CA00 none
        menu color scrollbar        30;44      #00000000 #00000000 none

        menu color tabmsg        31;40      #aaaaaaaa #00000000 none
        menu color cmdmark        1;36;40    #ffff0000 #00000000 none
        menu color cmdline        37;40      #aaaaaaaa #00000000 none
        menu color pwdborder        30;47      #ffff0000 #00000000 std
        menu color pwdheader        31;47      #ffff0000 #00000000 std
        menu color pwdentry        30;47      #ffff0000 #00000000 std
        menu color timeout_msg        37;40      #aaaaaaaa #00000000 none
        menu color timeout        1;37;40    #ffaaaaff #00000000 none
        menu color help                37;40      #aaaaaa00 #00000000 none
        menu color msg07        37;40      #90ffffff #00000000 std

LABEL winpe
MENU LABEL Start Windows PE
KERNEL /boot/chain.c32
APPEND hd0 4 ntldr=/ntldr

LABEL msdos71
MENU LABEL Start MS-DOS 7.1
KERNEL /boot/memdisk
APPEND initrd=/boot/dos98.img

LABEL boothdd
MENU LABEL Boot from Hard Disk
localboot 0x81
=====================
回复

使用道具 举报

12#
发表于 2008-8-6 07:33:44 | 只看该作者
原帖由 usbzip 于 2008-7-29 19:12 发表
附上完整的配置文件:
====================
PROMPT 0
TIMEOUT 90
DEFAULT /boot/vesamenu.c32
MENU BACKGROUND /boot/pe2008.png

MENU WIDTH 36
MENU MARGIN 0
MENU ROWS 7
MENU HELPMSGROW 14
ME ...



LABEL boothdd
MENU LABEL Boot from Hard Disk
localboot 0x81

这个不起作用??不能从计算机的C盘启动?

另外,能不能直接安装win xp?其配置命令要怎么写
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-16 14:06

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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