解析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引导代码)

时间: 2025-01-21 00:03:18

解析U盘不能启动的缘由的相关文章

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

  你是否遭遇过这种情况:当你要用360急救盘来修复难题时,发现360急救盘无法启动,是不是有点天塌了感觉,这时候需要高手帮助,今天小编就充当这个角色,360急救盘无法启动的图文教程,迅速解救你. 360急救盘无法启动会有命令提示 一.提示"Unable to boot - Please use a kernel appropriate for your CPU"是什么原因? 这是由于您的 CPU无法被内核支持 导致的,360急救盘暂时无法支持PAE模式的CPU,因此PAE模式内核的C

360急救盘无法启动的解决方法

  360急救盘 是一款装在U盘上的急救系统,在您的计算机系统被破坏到无法启动的时候,它可以帮您抢救您的文件,转存重要的数据,让您在关键时间对计算机进行操作,甚至还可以对您的系统进行终极修复--系统重装. 但是有的小伙伴安装后发现360急救盘 无法启动怎么办呢? 不要着急,小编来告诉大家360急救盘无法启动的解决方法. 360急救盘无法启动会有命令提示 一.提示"Unable to boot - Please use a kernel appropriate for your CPU"

U盘PE启动盘的制作方法

一:制作过程 1:先做DOS启动盘 过程很简单,插上你要制作的U盘,打开USBoot 1.7,它会提示"有一定的危险性等",点确定进入 选中U盘,点下面的"选择工作模式",选ZIP,点击"开始". 如果你的U盘里有重要的文件,建议在制作启动U盘之前先备份好你的文件. 点击"确定"继续运行,选择"是"格式化U盘. 按提示直接拔下你的U盘. 等到程序提示"请再次插上U盘"时再重新将U盘插上.

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

U盘PE启动安装GHOST XP系统使用方式 貌似一直以来大家都在搞量化做winpe,我到是喜欢敲敲DOS命令好了.主要还不是为了u盘装系统阿.DOS就可以拉~~~找找DOS下装系统一大堆.我这个写的水平~~~大虾绕过好了说正题了 偶是先拿USBOOT1.7选ZIP模式把U盘格了,里面有三command.com io.sys msdos.sys这个就纯了DOS系统拉~~~然后就增强一下拉~~~建一个config.sys 写入 www.qidongyi.com DOS=HIGH,UMB DEVIC

U盘制作启动盘方法

U盘制作启动盘方法 用U盘做启动易盘并不是很容易,先看主板是否支持,U盘是否支持.U盘如果支持,那么你就可以尝试一下这种简单且具有普遍性的U盘制作启动盘方法: 第一步.首先你的主板支持U盘启动,一般815以上主板都支持的(不支持的通过刷BIOS一般也会支持的,但是可能刷坏).在USB口上插好U盘,启用主板对USB的支持.如果不懂的话就设置BIOS为默认值,第一引导设为USB-HDD,保存并重启. 第二步.导入引导信息(有两种方法): 1.用专门格式化工具进行格式化(一般U盘自带的软件中有),选择

windows to go u盘无法启动解决方法

windows to go u盘无法启动解决方法 问题1:u盘启动后只有左上角的光标在闪 打开wtg辅助工具,选择u盘,右键>手动执行命令>设置活动分区和写入磁盘引导 仍然不行? 在程序界面右键>打开程序运行目录>打开bootice.exe,选择u盘,点击分区管理,查看 是否为活动分区,如果不是,点击激活 问题2:引导文件写入出错,boot文件夹不存在! 解决方法: 打开wtg辅助工具,选择优盘,右键>手动执行命令>bcdboot 写入启动文件 如果出错,选择bcdbo

量产U盘不能启动电脑

  很多人说明明量产成功了,为什么不能启动电脑呢?这个问题很复杂,首先要求电脑本身支持USB启动,然后是你量产时选择的ISO必须要支持USB启动. 很多人忽略了一点:USB光驱启动和IDE光驱启动是不一样的.这就造成了不少人的困惑:我在虚拟机上测试ISO启动明明是正常的啊,为什么量产到U盘后就是启动不了呢.那是因为在虚拟机中人们都习惯把ISO放入IDE光驱中测试,所以没考虑到要在DOS下加载一些USB驱动. 举个例子,老电脑加载UBSASPI.SYS后就能访问U盘上的文件,但新电脑有可能一加载U

制作U盘dos启动盘的五大步骤

  准备工作: 一个U盘,USBOOT制作工具,一个MaxDOS压缩包 下载后把UBSBOOT程序解压缩出来,再把你的U盘插上,按照下面的步骤就可以把你的U盘制作成DOS启动型的(注意事先备份U盘中有用的数据). 具体步骤: 第一步:打开运行USBOOT(见下图) 点击蓝色的字选择工作模式,建议选择ZIP模式,ZIP模式是指把U盘模拟成ZIP驱动器模式,启动后U盘的盘符是A: 第二步:点击<开始>,就开始制作.出现下面这个对话框时,确保你的U盘中数据已没用,再选择<是>. 第三步:

打造完美U盘PE启动盘的流程

  1.打开UltraISO PE 点击 "文件"--"打开",找到开头所说的那个PE的ISO镜像文件,即完美者U盘PE维护系统.ISO,打开. 2.点击"启动光盘",选择"写入硬盘镜像...",之前制作DOS启动盘时选择的是ZIP工作模式,于是这里的"写入方式"选择"USB-ZIP+"(如果上面你选择的是HDD工作模式,这里便选择"USB-HDD+"的写入方式).