无忧启动论坛

标题: 使用U+后切换菜单问题 [打印本页]

作者: qazwsx24    时间: 2011-11-15 20:15
标题: 使用U+后切换菜单问题
各位高手指点小弟一下,以前旧版UltraISO使用U+后会有U盘里产生一个ldlinux.sys文件的,然后在引导菜单里切换到grub4dos后可以用以下命令引导回SYSLINUX引导菜单的,但现在把SYSLINUX和GRUB4DOS和UltraISO都升级后,UltraISO为9.5.1,syslinux-4.04,grub4dos-0.4.5b-2011-11-03后再U+发现U盘里不再产生ldlinux.sys文件;现在U盘可以正常引导成功,但在切换到grub4dos引导就没办法切换回来了,这个问题怎么解决,请高手指点一下.

title [14] 切换到 SYSLinux 引导菜单
    find --set-root /ldlinux.sys
    chainloader +1

[ 本帖最后由 qazwsx24 于 2011-11-16 13:46 编辑 ]
作者: lafter    时间: 2011-11-16 00:45
可用bootice写一遍syslinux引导,会出现的。Pauly曾解释过,如对分区PBR写入syslinux引导,然后对其PBR备份,则删除ldlinux.sys后,一样用g4d加载PBR文件,从而实现grub到syslinux的菜单转换,blitheWind很早前就采用这种方式了.
作者: qazwsx24    时间: 2011-11-16 08:02
原帖由 lafter 于 2011-11-16 00:45 发表
可用bootice写一遍syslinux引导,会出现的。Pauly曾解释过,如对分区PBR写入syslinux引导,然后对其PBR备份,则删除ldlinux.sys后,一样用g4d加载PBR文件,从而实现grub到syslinux的菜单转换,blitheWind很早前就采用这 ...


可以详细点说明一下吗?不是很懂这方面的知识.
作者: 527104427    时间: 2011-11-16 09:25
原帖由 qazwsx24 于 2011-11-15 20:15 发表
各位高手指点小弟一下,以前旧版UltraISO使用U+后会有U盘里产生一个ldlinux.sys文件的,然后在引导菜单里切换到grub4dos后可以用以下命令引导回SYSLINUX引导菜单的,但现在把SYSLINUX和GRUB4DOS和UltraISO都升级后 ...

这个很好解决啊,记事本新建 一个零字节文件,改名为ldlinux.sys,放到合盘根目录,搞定收工
作者: qazwsx24    时间: 2011-11-16 11:49
标题: 回复 #4 2010527104427 的帖子
哈哈,OK了,谢谢了,没想到这么简单,这是什么原因呢?空白的应该不存在引导呀,不明白.
作者: 527104427    时间: 2011-11-16 12:00
标题: 回复 #5 qazwsx24 的帖子
从你的菜单可以看出来,ldlinux.sys并不是引导文件,grub引导的是MBR,和ldlinux.sys无关,只要让grub找到ldlinux.sys就可以了
作者: yjd    时间: 2011-11-16 12:36
从你的菜单可以看出来,ldlinux.sys并不是引导文件,grub引导的是MBR,和ldlinux.sys无关,只要让grub找到ldlinux.sys就可以了

证明楼主蛋疼哈哈
作者: lafter    时间: 2011-11-19 16:53
原帖由 qazwsx24 于 2011-11-16 08:02 发表


可以详细点说明一下吗?不是很懂这方面的知识.



当写入syslinux引导代码后,该分区PBR引导程序会固定寻址分区上某一偏移地址,即ldlinux.sys所在的地方。即使这个ldlinux.sys被删除了,它的代码还是在磁盘上存在的,除非被格式化或者被ldlinux.sys所在空间被占用。

因此,UltraISO新版可能较之旧版做了如下动作:向PBR写入syslinux引导代码,同时向U盘写入ldlinux.sys,然后删除ldlinux。

根据上述分析,可以做个实验,即如果U盘上不存在ldlinux.sys,则向其中剩余空间全部写满数据(可以拷贝文件来完成覆盖),应该不能再从syslinux启动。

所以,为保险起见,应该在写入ldlinux.sys之后,将其移动到某一目录下如/boot/syslinux/,这样根目录清爽了,也没有文件被覆盖的危险。

title [14] 切换到 SYSLinux 引导菜单
    find --set-root /ldlinux.sys
    chainloader +1

这个菜单只能适应PBR写入syslinux引导的情况,如果写入其它程序如ms-dos引导,或者bootmgr等,就不灵了。一个变通的解决办法是写入syslinux引导后,用bootice备份一下pbr为syslinux.bin,放到某个地方直接在grub中chainloader之。
作者: lafter    时间: 2011-11-19 21:53
原帖由 2010527104427 于 2011-11-16 09:25 发表 这个很好解决啊,记事本新建 一个零字节文件,改名为ldlinux.sys,放到合盘根目录,搞定收工
这作为临时应急方案没问题,特别是该分区重做引导及不再往里写数据时,好用。但不严谨,不保证后来不出问题。原因如上楼所述。你这样加个空白的ldLinux.sys做标志文件纯属多此一举,其实find任何一个该分区存在的惟一性文件效果一样.




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3