Professional Documents
Culture Documents
The Question
SuperUser reader William wants to know why creating a bootable USB drive is
more complex than creating bootable CDs:
between the two and maybe give a brief overview of the different options?
Why is creating a bootable USB drive more complex than creating bootable CDs?
The Answer
SuperUser contributor Akeo has the answer for us:
Rufus developer here. First of all, a lot of the options you mention are only
listed when running Rufus in Advanced Mode (when the Advanced Options
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 �le 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 �le system they use, how they are
partitioned (they are not), and so on.
So, if you have an ISO �le, 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 �le
and copied as is, in sequence, onto the disc (what CD/DVD burner
applications do when “working” with ISO �les).
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
distributions, like FreeBSD or Raspbian, actually provide DD Images for USB
installation, alongside ISO �les for CD/DVD burning.
Thus, we have established that ISO �les are actually poorly suited to create
bootable USB media because they are the equivalent of providing a round peg
to �t a smaller square hole, and therefore, the round peg must be altered to
�t it.
Now you may be wondering, if ISO �les are so poorly suited for creating
bootable USB media, why are most operating system distributors out there
providing ISO �les instead of DD Images. Well, outside of historical reasons,
one of the issues with DD Images is that because they are a partitioned �le
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 �les can only ever use one of
two �le 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 �le 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 �les 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 �t nicely into the smaller “USB media” square hole. How does
that relate to the list of options? We are coming to that.
One of the �rst things that usually needs to go is the ISO9660 or UDF �le
system that ISO �les use. Most of the time, this means extracting and copying
all of the �les from the ISO �le onto a FAT32 or NTFS �le system, which is
what bootable USB �ash drives tend to use. But of course that means that,
whoever created the ISO system must have made some provisions to support
FAT32 or NTFS as a �le 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 �rst 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 �rmware also
treats USB and optical media very differently during the boot up process. So
you usually cannot take the boot loader from an ISO �le (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 options. Because Rufus will
have to provide a relevant boot loader piece, it simply cannot obtain it from
the ISO �le. If we are dealing with a Linux based ISO �le, 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 �le usually only
contains the ISO speci�c version of those).
This is usually done automatically when you select and open an ISO �le since
Rufus is smart 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 con�g �les and try your very own Syslinux or GRUB
based custom boot process (because at this stage, you only have to copy/edit
�les on the USB media to do that).
So, we can now go over the options you �nd in the list:
The four options 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 [3] 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 [4]/Grub4DOS [5]
respectively. It will get you to a GRUB prompt, but it is up to you to �gure
out the rest.
ReactOS: Installs an experimental ReactOS [6] 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
Hope that helps. This is a simpli�ed 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 �ash drives without partitions, to
have USB and optical media use the same �le 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).
Have something to add to the explanation? Sound off in the comments. Want to
read more answers from other tech-savvy Stack Exchange users? Check out the
full discussion thread here [8].
1. http://www.howtogeek.com/291484/why-is-creating-a-bootable-usb-drive-
more-complex-than-creating-bootable-cds/
2. http://www.freedos.org/
3. http://www.syslinux.org/
4. https://www.gnu.org/software/grub/
5. https://github.com/chenall/grub4dos
6. https://www.reactos.org/
7. https://github.com/pbatard/ue�-ntfs
8. http://superuser.com/questions/1170832/why-are-there-different-options-for-creating-
bootable-usb-compared-to-a-cd
9. http://superuser.com/users/51080/william