Creating a bootable Ubuntu Server flash drive (Linux)
On Linux systems, we can use either ddrescue
or dd
to create our bootable media. In the case of ddrescue
, you'll first need to install the package on your system. If your distribution is Debian-based, you should be able to install it with the following command:
# apt-get install gddrescue
If your distribution is not Debian-based, use your distribution's package manager to install gddrescue
. If this package is not available to you in your chosen platform, you can always fall back to the dd
command, which I will also give you in this section.
With the gddrescue
package installed, we can move on. Make sure the flash drive is inserted into your PC. Next, we'll need to run the following command in order to determine the name the system has provided for our flash drive:
# fdisk -l
From the output, you should be able to deduce which of the listed drives refers to your flash drive. In my case, /dev/sdc
is mine. I know this because the partition /dev/sdc1
is formatted as FAT32
, and I don't have any other partition formatted this way:
If you are at all unsure which drive is which, you may consider executing the fdisk -l
command before and after inserting your flash drive and comparing the results. For the remaining examples in this section, I will use /dev/sdc
for the commands. However, please make sure that you change this to match however your flash drive is named. If you format the wrong drive, you'll lose data (or worse, end up with a PC that won't start the next time you turn it on). Pay careful attention here!
Now that we know the device name for our flash drive, we can begin creating our media. If you have ddrescue
available to you, use the following command:
# ddrescue -d -D --force <path and file name of the ISO> /dev/<device name>
For example, in my case, the command is the following:
# ddrescue -d -D --force /home/user/downloads/ubuntu-16.04-server-amd64.iso /dev/sdc
Note
Be sure to replace /dev/sdc
with the device name of your flash drive and the name of the ISO with the filename and path of the Ubuntu Server ISO you downloaded earlier.
With the example ddrescue
command I provided, pay special attention to the fact that I did not identify a partition for the dd
command. For example, I didn't use /dev/sdc1
, I used simply /dev/sdc
. This is important—the flash drive will not be bootable if you targeted a specific partition. After all, the ISO image is an image of an entire disk, not just a single partition.
As for the options I chose, I'm choosing direct disk access for input and output (the -d
and -D
flags), forcing our device to be overwritten (the --force
flag), and using the full path and file name of our downloaded ISO and directing the output to /dev/sdc
. Once you start the process, it shouldn't take very long to complete. When it's finished, you're ready to begin using it to install Ubuntu Server:
For those of you without ddrescue
available, you can use dd
instead:
# dd if=/home/user/downloads/ubuntu-16.04-server-amd64.iso of=/dev/sdc bs=1M; sync
Similar to the ddrescue
command, in the example for dd
I'm using the path and filename of the Ubuntu Server ISO image as the input file (if=
) and directing the output file (of=
) to be that of my flash drive (/dev/sdc
) and a block size of 1 MB (bs=1M
). Unlike ddrescue
, we won't see any fancy output with dd
, but the process should work just fine. Once finished, we'll be ready to plan our partition layout and get our installation started.