解析U盘不能启动的缘由

不同的BIOS进行U盘(USB-HDD方式)启动时,对同一U盘的容量参数---柱面、磁头和扇区数(简称CHS),识别各不相同(证明这一点可以在不同的机器上安装同一版本的linux,然后插入U盘,使用hdparm /dev/sda命令就可以发现CHS在不同机器各不相同,甚至如果U盘可以使用GRUB启动的话,在GRUB里使用geometry (hd0)命令也能看出来),这样在一台机器上分区格式化所产生的的分区表和FAT磁盘参数表是按照这台机器所识别的硬盘的CHS来表达的,换到另一台机器时由于另一台机器识别的CHS不一样,这样就会产生混乱。

所幸的是,分区表和FAT磁盘参数表同时还有一种按照相对扇区数来表达的方式,这种表达方式也同时记录在分区表和磁盘参数表中。这样就看软件使用哪一种数据来工作了,如果使用CHS,那么换一台机器就一定不会正常工作,如果使用LBA方式访问磁盘就不会受影响---当然前提是BIOS支持对U盘使用LBA方式访问即扩展INT13H。而XP对FAT16文件系统分区格式化生成的MBR代码以及DOS各版本均需依靠CHS工作,所以按照通常方法在一台机器制作的启动U盘在另一台机器启动就有可能不成功。经测试移动硬盘在各BIOS中的CHS倒是一致的,与该硬盘直接接在IDE口上的CHS相同,所以移动硬盘的USB启动基本上并无困难。

目前我发现的确实受这一问题的影响,从而影响启动的程序有:

1、Windows XP及SP1中文版磁盘管理器分区时所写的MBR

2、USBoot产生的MBR和boot(与1相同)

3、使用bootlace.com将grub for dos 0.41中的grldr.mbr安装至MBR

可能不受这一问题影响的程序有(未经充分测试):

1、ntldr以及随后启动的PE或XP环境(当然了,否则U盘就没法使用了)

2、linux下的install-mbr程序所写的MBR

3、GNU GRUB 0.95和0.97及其使用grub-install命令安装的引导代码

4、syslinux3.36和3.51

5、linux2.4内核以上,基本上linux系统所有程序对FAT文件系统都不会使用CHS

6、grub chs 0.95 0.97(内含的stage1、stage1.5和stage2引导代码)

(0)

相关推荐

  • 360急救盘无法启动的解决妙方图文解析

    你是否遭遇过这种情况:当你要用360急救盘来修复难题时,发现360急救盘无法启动,是不是有点天塌了感觉,这时候需要高手帮助,今天小编就充当这个角色,360急救盘无法启动的图文教程,迅速解救你。 360 ...

  • Win7 32位系统下防止u盘自行启动木马的三个有效措施

    U盘应用广泛,所以成为了木马病毒容易入侵的对象,在使用u盘过程中,因为u盘的自动运行功能就会让木马有机可乘,所以为了能够让用户们更好地阻止u盘自行启动木马,防止u盘中毒,下面小编就为大家整理了三个有效 ...

  • 创建U盘DOS启动盘将启动文件做成U盘镜像

    DOS启动文件做成U盘镜像,对许多经常需要安装系统的朋友来说,是非常好用的一个工具,那么如何制作一个简单的U盘DOS启动盘呢?下面让我们一起来看看吧。 1、准备一个U盘,容量32M足以,如果你想用它来 ...

  • 大白菜还原成普通U盘不让U盘变成启动U盘的两个方法

    为了使用U盘来装系统,很多用户都会把U盘制作成大白菜U盘来启动安装系统,系统安装完后为了不让U盘变成了启动U盘,用户都会把U盘还原成普通U盘,继续存储重要数据。但是也有一部分用户不知道如何把大白菜还原 ...

  • windows to go u盘无法启动的解决方法图文详细介绍

    windows to go u盘无法启动的解决方法图文详细介绍 问题1:u盘启动后只有左上角的光标在闪 打开wtg辅助工具,选择u盘,右键》手动执行命令》设置活动分区和写入磁盘引导 仍然不行? 在程序 ...

  • 真正有效的U盘分区方法 (支持将U盘分为 启动区 + 文件存储区)

    我看了很多帖子,发现想要将U盘分区的朋友绝大部分是和我一样,想用U盘做成一个启动盘同时兼顾文件存储,分区的目的很简单,就是想将启动部分单独做成一个区,以免在日常的应用中使得启动文件染毒或者误操作造成损 ...

  • U盘PE启动盘的制作方法

    一:制作过程 1:先做DOS启动盘 过程很简单,插上你要制作的U盘,打开USBoot 1.7,它会提示“有一定的危险性等”,点确定进入 选中U盘,点下面的“选择工作模式”,选ZIP,点击“开始”。 如 ...

  • U盘制作启动盘方法

    U盘制作启动盘方法 用U盘做启动易盘并不是很容易,先看主板是否支持,U盘是否支持。U盘如果支持,那么你就可以尝试一下这种简单且具有普遍性的U盘制作启动盘方法: 第一步、首先你的主板支持U盘启动,一般8 ...

  • U盘PE启动安装GHOST XP系统使用方式

    U盘PE启动安装GHOST XP系统使用方式 貌似一直以来大家都在搞量化做winpe,我到是喜欢敲敲DOS命令好了.主要还不是为了u盘装系统阿.DOS就可以拉~~~找找DOS下装系统一大堆.我这个写的 ...