无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 8813|回复: 6

[已解决] 如何用grub2引导BIOS启动下的syslinux

[复制链接]
发表于 2017-2-6 16:38:19 | 显示全部楼层 |阅读模式
本帖最后由 有阴也有阳 于 2017-2-7 13:51 编辑

        如何用grub2引导BIOS启动下的syslinux?

        已经解决,多方查阅资料+网友热心帮助,我说得简略一些:

        在启动U盘的根目录的boot文件夹中的syslinux文件夹中复制、粘贴有关的syslinux文件(——具体需要哪些,自己百度。),

然后把U盘插到电脑上,然后再运行如下批处理——此批处理要放在启动U盘的根目录的boot文件夹里的syslinux文件夹中运行:

@echo off
color 0a
set a=%cd%
set b=%~d0
set c=%~dp0
::echo 当前CMD默认目录是:%a%
::echo 当前盘符是:       %b%
::echo 当前盘符和路径是: %c%
echo.
echo 此批处理将为所处分区安装syslinux引导
pause
echo 正在安装syslinux引导,请稍后

\boot\syslinux\syslinux.exe -ma -d /boot/syslinux %b%

echo syslinux引导安装完成
echo.
pause

        然后用BOOTICE备份此启动U盘的“分区引导记录(PBR)”:

        一:

1

1


        二:

2

2


        三:

3

3


        四:

4

4


        完后会在/boot/syslinux文件夹中形成一个U盘的分区引导记录的备份文件——syslinux.te.bin文件。

        以上操作——主要是兴建syslinux的分区引导记录的操作会破坏我的原来的grub4dos0.4.6.a的启动U盘的grub4dos0.4.6.a的主引导记录,

所以最后还得再用BOOTICE重建一次此U盘的grub4dos0.4.6.a的主引导记录:

5

5


        好了!这就彻底完工了,现在这个启动U盘在BIOS下从grub4dos0.4.6.a启动:

        从grub4dos转到syslinux:

title 启动 syslinux 菜单
find --set-root /myudisk.txt
chainloader /boot/syslinux/syslinux.te.bin


        从grub4dos转到grub2:

title 启动 grub2 菜单
find --set-root /myudisk.txt
kernel /EFI/Grub2/BIOS/i386-pc/core.img
boot


        从grub2转到grub4dos:

menuentry "启动 grub4dos 菜 单" {
linux16 /grub/grub.exe --config-file="configfile /menu.lst"
}


        从grub2转到syslinux:

menuentry "启动 syslinux 菜 单" {
search --file /myudisk.txt --set=root
chainloader /boot/syslinux/syslinux.te.bin
}


        从syslinux转到grub4dos:

LABEL 启动 Grub4Dos 菜单
        MENU LABEL [^H] -- Grub4Dos 氨
        kernel /boot/syslinux/chain.c32
        append fs ntldr=/grldr


        从syslinux转到grub2:

LABEL 启动 Grub2 菜单
        MENU LABEL [^I] -- Grub2 氨
        kernel /EFI/Grub2/BIOS/G2ldr
        boot /EFI/Grub2/BIOS/G2ldr

        现在《我的grub4dos0.4.6.a的启动U盘》的BIOS启动部分是从grub4dos启动,然后可以在grub4dos——grub2——syslinux

三者之间相互转换——三启。

        本人所用之grub2与syslinux均取自本论坛comzhongwy大师的作品,我在此向他表示感谢!
发表于 2017-2-6 17:12:03 | 显示全部楼层
efi的syslinux,用chainloader命令即可。
bios下的syslinux,比较复杂。如果你之前引导的是syslinux的mbr,就用chainloader命令。
如果chainloader命令不行,就加上--force参数。如果还是不行,就试一试ntldr、linux16、multiboot之类的命令。

点评

请问,用引导syslinux.bin的方式为何会报错?  详情 回复 发表于 2020-10-22 11:10
麻烦给一个用grub2直接调用syslinux.exe的菜单, 类似: menuentry "grub4dos 菜 单" { linux16 /grub/grub.exe --config-file="configfile /menu.lst" } 谢谢!!!  详情 回复 发表于 2017-2-6 21:26
回复

使用道具 举报

发表于 2017-2-6 17:43:16 来自手机 | 显示全部楼层
不是说grub2可以直接用syslinux菜单?

点评

请问grub2如何直接调用boot/syslinux里面的syslinux.cfg菜单——syslinux的菜单?  详情 回复 发表于 2017-2-6 18:50
也可以。  详情 回复 发表于 2017-2-6 17:48
回复

使用道具 举报

发表于 2017-2-6 17:48:15 | 显示全部楼层
本帖最后由 wintoflash 于 2017-2-6 17:56 编辑
窄口牛 发表于 2017-2-6 17:43
不是说grub2可以直接用syslinux菜单?


也可以。不是百分百可用,也不符合楼主提的问题。
回复

使用道具 举报

 楼主| 发表于 2017-2-6 18:50:01 | 显示全部楼层
窄口牛 发表于 2017-2-6 17:43
不是说grub2可以直接用syslinux菜单?

        请问grub2如何直接调用boot/syslinux里面的syslinux.cfg菜单——syslinux的菜单?
回复

使用道具 举报

 楼主| 发表于 2017-2-6 21:26:13 | 显示全部楼层
wintoflash 发表于 2017-2-6 17:12
efi的syslinux,用chainloader命令即可。
bios下的syslinux,比较复杂。如果你之前引导的是syslinux的mbr ...

麻烦给一个用grub2直接调用syslinux.exe的菜单,

类似:
menuentry "grub4dos 菜 单" {
linux16 /grub/grub.exe --config-file="configfile /menu.lst"
}


谢谢!!!
回复

使用道具 举报

发表于 2020-10-22 11:10:08 | 显示全部楼层
wintoflash 发表于 2017-2-6 17:12
efi的syslinux,用chainloader命令即可。
bios下的syslinux,比较复杂。如果你之前引导的是syslinux的mbr ...

请问,用引导syslinux.bin的方式为何会报错?是用bootice备份的方式制作的syslinux.bin
企业微信截图_20201022101138.png
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-28 20:03

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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