为什么创建可引导usb驱动器比创建可引导CD更复杂?

创建可引导CD和DVD往往是一个简单、直接的过程,但为什么创建可引导闪存驱动器时会更复杂呢?两者真的有那么大的区别吗?今天的超级用户问答帖子回答了一位好奇的读者的问题。...

为什么创建可引导u**驱动器比创建可引导CD更复杂?

创建可引导CD和DVD往往是一个简单、直接的过程,但为什么创建可引导闪存驱动器时会更复杂呢?两者真的有那么大的区别吗?今天的超级用户问答帖子回答了一位好奇的读者的问题。

今天的问答环节是由SuperUser提供的,SuperUser是Stack Exchange的一个分支,是一个由社区驱动的问答网站分组。

问题

超级用户读者William想知道为什么创建可引导USB驱动器比创建可引导CD更复杂:

Creating a bootable CD is really simple in my opinion, all you need to do is burn an ISO file to a disc and it is bootable. Now when it comes to USB drives, you have lots of opti***. Could someone explain the difference between the two and maybe give a brief overview of the different opti***?

007Ys3FFgy1gpc38gjc3mj30ak0fe74z

为什么创建可引导USB驱动器比创建可引导CD更复杂?

答案

超级用户贡献者Akeo为我们提供了答案:

Rufus developer here. First of all, a lot of the opti*** you mention are only listed when running Rufus in Advanced Mode (when the Advanced Opti*** Section is displayed), because they are intended for people who already know what they are for.

To start with, you have to understand that the ISO format was never designed for USB booting. An ISO file is a 1:1 copy of an optical disc, and optical disc media are very different from USB media, both in terms of how their boot loaders should be structured, what file system they use, how they are partitioned (they are not), and so on.

So, if you have an ISO file, you simply cannot do with USB media what you can do with an optical disc, which is read from every single byte of the ISO file and copied as is, in sequence, onto the disc (what CD/DVD burner applicati*** do when “working” with ISO files).

That is not to say that this kind of 1:1 copying cannot exist on USB media, just that 1:1 copies on USB media will be completely different from 1:1 copies on optical discs and are therefore not interchangeable (outside of using ISOHybrid images that are crafted to work as 1:1 copies on USB and optical media both). For the record, in Rufus terminology, a 1:1 copy on USB media is called a DD Image (you can see that option in the list) and some distributi***, like FreeBSD or Raspbian, actually provide DD Images for USB installation, alongside ISO files for CD/DVD burning.

Thus, we have established that ISO files are actually poorly suited to create bootable USB media because they are the equivalent of providing a round peg to fit a **aller square hole, and therefore, the round peg must be altered to fit it.

Now you may be wondering, if ISO files are so poorly suited for creating bootable USB media, why are most operating system distributors out there providing ISO files instead of DD Images. Well, outside of historical reas***, one of the issues with DD Images is that because they are a partitioned file system, if you create a 1:1 copy on USB media that is larger than the one used by the person who created the image, then you will end up with the apparent “capacity” of your USB media reduced to the size of the one used in creating the original DD Image.

Also, whereas optical discs and therefore ISO files can only ever use one of two file systems (ISO9660 or UDF), both of which have been very well supported in all major operating systems for a very long time (and allows you to take a peek at the image content before or after you use it), DD Images can literally use any of the thousands of different file systems that exist. That means that even after you create your bootable USB media, you may not be able to actually see any content on it until you boot it up. For instance, this will be the case if you use FreeBSD USB images on Windows. Once the bootable USB media has been created, Windows will not be able to access any content on it until you reformat it.

This is why providers tend to want to stick with ISO files where possible, as it (usually) provides a better user experience across all operating systems. But that also means that some conversion must (usually) occur so that our round ISO peg can fit nicely into the **aller “USB media” square hole. How does that relate to the list of opti***? We are coming to that.

One of the first things that usually needs to go is the ISO9660 or UDF file system that ISO files use. Most of the time, this means extracting and copying all of the files from the ISO file onto a FAT32 or NTFS file system, which is what bootable USB flash drives tend to use. But of course that means that, whoever created the ISO system must have made some provisi*** to support FAT32 or NTFS as a file system for live use or installation (which not all people, especially the ones who rely a bit too much on ISOHybrid, tend to do).

Then there is the actual boot loader itself, the first bit of code that executes when a computer boots from USB media. Unfortunately, HDD/USB and ISO boot loaders are very different beasts, and the BIOS or UEFI firmware also treats USB and optical media very differently during the boot up process. So you usually cannot take the boot loader from an ISO file (which would usually be an El Torito boot loader), copy it to USB media, and expect it to boot.

Now comes the part that is relevant to our list of opti***. Because Rufus will have to provide a relevant boot loader piece, it simply cannot obtain it from the ISO file. If we are dealing with a Linux based ISO file, then chances are it will use GRUB 2.0 or Syslinux, so Rufus includes the ability to install a USB-based version of GRUB or Syslinux (since the ISO file usually only contains the ISO specific version of those).

This is usually done automatically when you select and open an ISO file since Rufus is **art enough to detect what kind of conversion it needs to apply. But if you want to play around, Rufus gives you the choice to also install some blank boot loaders that enable you to boot to a GRUB or Syslinux prompt. From there, if you are familiar with these types of boot loaders, you can create/test your own config files and try your very own Syslinux or GRUB based custom boot process (because at this stage, you only have to copy/edit files on the USB media to do that).

So, we can now go over the opti*** you find in the list:

  • MS-DOS: This creates a blank version of MS-DOS (Windows Me edition), which means you will boot to an MS-DOS prompt and that is it. If you want to run a DOS application, you will need to copy it to your USB media. Note that this option is only available on Windows 8.1 or earlier, but not Windows 10 since Microsoft removed the DOS installation files from Windows (and only Microsoft can redistribute these files).
  • FreeDOS: This creates a blank version of FreeDOS. FreeDOS is a free software version of MS-DOS, which is fully compatible with MS-DOS, but also has the advantage of being open source. Compared to MS-DOS, anyone can redistribute FreeDOS, so the FreeDOS boot files are included in Rufus.
  • ISO Image: This is the option you should use if you have a bootable ISO file and want to convert it to bootable USB media. Keep in mind that because a conversion (usually) needs to occur and there are zilli*** of ways to create a bootable ISO file, there is no guarantee that Rufus will be able to convert it to USB media (but it will always tell you if that is the case).
  • DD Image: This is the method you should use if you have a bootable disk image, such as the ones provided by FreeBSD, Raspbian, etc. Files with a .vhd extension are also supported (which is Microsoft’s version of a DD Image) as well as compressed ones (.gz, .zip, .bz2, .xz, etc.).

The four opti*** above are the only ones you will see in Regular Mode. But if you run Rufus in Advanced Mode, you will also have access to the following choices:

  • Syslinux x.yz: Installs a blank Syslinux boot loader which will get you to a Syslinux prompt and not much else. You are supposed to know what you need to do from that point forward.
  • GRUB/Grub4DOS: Same as above, but for GRUB/Grub4DOS respectively. It will get you to a GRUB prompt, but it is up to you to figure out the rest.
  • ReactOS: Installs an experimental ReactOS boot loader. Since the last time I checked, ReactOS does not boot that well from USB media. It is there because it was easy to add, and done with the hope that it can help with ReactOS development.
  • UEFI-NTFS: This requires NTFS to be selected as the file system and installs a blank UEFI-NTFS boot loader. This enables booting from NTFS in pure UEFI mode (not CSM) on UEFI platforms that do not include an NTFS driver. Because it is blank, you will need to copy your own /efi/boot/bootia32.efi or /efi/boot/bootx64.efi onto the NTFS partition for it to be useful. UEFI-NTFS is automatically used by Rufus to work around the 4 GB maximum file size of FAT32, which for instance, allows the installation of Microsoft Server 2016 in UEFI mode without having to split its 4.7 GB install.wim file.

Hope that helps. This is a simplified overview, so I hope people will not start nitpicking on aspects that were deliberately dumbed-down or kept silent (such as knowing it is possible to have USB flash drives without partiti***, to have USB and optical media use the same file system, and that some boot processes have the capability to extend the partition size on USB media in order to solve the lower apparent capacity issue).


有什么要补充的解释吗?在评论中发出声音。想从其他精通技术的Stack Exchange用户那里了解更多答案吗?在这里查看完整的讨论主题。

图片来源:威廉(超级用户)

  • 发表于 2021-04-08 09:39
  • 阅读 ( 204 )
  • 分类:互联网

你可能感兴趣的文章

如何在windows上从usb启动

...管是什么原因,在本文结束时,您将能够轻松地从USB闪存驱动器启动您的PC。 ...

  • 发布于 2021-03-11 01:10
  • 阅读 ( 264 )

如何像超级极客一样使用usb跳转驱动器:创建一个技术工具包

... USB跳转驱动器是一个垂死的品种。随着传输数据的过程越来越无线化,许多人的抽屉里塞满了未充分利用的USB驱动器。 ...

  • 发布于 2021-03-14 06:18
  • 阅读 ( 174 )

如何将多个iso文件合并到一个可引导的iso映像中

...可少的,例如桌面恢复、安全性、渗透测试、系统救援、驱动器克隆等等。然后,有数百个Linux发行版可以作为可引导CD使用。 ...

  • 发布于 2021-03-15 06:33
  • 阅读 ( 558 )

如何为windows和linux创建可引导的多引导usb

...新的操作系统是一个快速的,通常是无痛的操作。但是,为什么要将USB限制在一个操作系统上呢?现在有几个优秀的多引导USB工具,你可以用它把你简陋的USB变成一个口袋大小的操作系统存储库。唯一能让你退缩的是棍子的大小...

  • 发布于 2021-03-15 14:56
  • 阅读 ( 160 )

口袋里的电脑维修工具包:U盘上的引导cd

...是最重要的。在我的技师工具箱里,我保存着一个USB闪存驱动器,里面装载着这个星球上最神奇的工具:我的电脑维修工具箱。 ...

  • 发布于 2021-03-16 01:24
  • 阅读 ( 233 )

如何从可引导usb驱动器安装windows 10

... 为什么要从u**启动windows安装? ...

  • 发布于 2021-03-18 00:37
  • 阅读 ( 271 )

如何从usb安装macos

...上重新安装macOS。但是你知道你可以创建一个可引导的USB驱动器来安装macOS吗?如果Mac无**常工作,这将允许您从其他来源启动Mac,并使在多台计算机上安装变得容易。 ...

  • 发布于 2021-03-22 09:05
  • 阅读 ( 308 )

如何在带有引导阵营的mac上安装windows 10

... 如果你不想使用这种方法,为什么还要考虑其他在Mac上运行Windows的方法,比如使用并行程序访问macOS上的Windows? ...

  • 发布于 2021-03-22 13:53
  • 阅读 ( 214 )

使用以下10个工具从iso创建一个可引导usb

... 为什么需要可引导u**驱动器 ...

  • 发布于 2021-03-23 17:58
  • 阅读 ( 240 )

windows 10无法启动?12个补丁让你的电脑重新运行

...启动的F8选项,使我们的启动速度加快了2秒钟。)这就是为什么使用16GB闪存驱动器来创建系统恢复驱动器尤为重要的原因。 ...

  • 发布于 2021-03-24 07:33
  • 阅读 ( 295 )
3qsLmXR2A
3qsLmXR2A

0 篇文章

相关推荐