There are some things, which are more difficult than they initially seem. This is true for creating a bootable USB drive on Mac with a Linux distro on it.
In this article, we will go through each step necessary to come out with a bootable Linux USB drive.
1. Download Debian and Verify the Source
Download the Debian ISO (or any other Linux distro) as well as the signature and checksum files.
Since we are trying to become more security-aware, it's important to verify the checksum and signature of the Debian image, before continuing.
GPG does just that for us.
$ gpg --verify SHA256SUMS.sign SHA256SUMS gpg: Signature made Sun May 7 20:28:23 2017 CEST using RSA key ID 6294BE9B gpg: Good signature from "Debian CD signing key <firstname.lastname@example.org>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: DF9B 9C49 EAA9 2984 3258 9D76 DA87 E80D 6294 BE9B
If you get the same "Good signature", you should be on the safe side.
Converting the Debian ISO to an IMG File
In order for the copying to work, we first need to convert the ISO to an IMG file. This can be done using the
$ hdiutil convert -format UDRW -o /path/to/output-file.img /path/to/input.iso
I had the file in the folder I was in, thus, I inputted:
$ hdiutil convert -format UDRW -o ./debian-8.8.0-amd64-DVD.img debian-8.8.0-amd64-DVD-1.iso Reading Driver Descriptor Map (DDM : 0)… Reading Debian 8.8.0 amd64 1 (Apple_ISO : 1)… Reading Apple (Apple_partition_map : 2)… Reading Debian 8.8.0 amd64 1 (Apple_ISO : 3)… Reading EFI (Apple_HFS : 4)… Reading Debian 8.8.0 amd64 1 (Apple_ISO : 5)… ....................................................................................... Elapsed Time: 15.632s Speed: 243.7Mbytes/sec Savings: 0.0% created: ~/Downloads/debian-8.8.0-amd64-DVD.img.dmg
The resulting file, might also have
.dmg appended to it, as is the case above.
One more step is missing before we can write the file to the USB drive. We first need to unmount the USB drive.
diskutil list to see what disk the correct one is. If you are unsure, run the command twice. Once without USB drive plugged in, once with.
$ diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *251.0 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 210.8 GB disk0s2 3: Apple_Boot Recovery HD 650.0 MB disk0s3 /dev/disk1 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *30.8 GB disk1 1: EFI EFI 209.7 MB disk1s1 2: Apple_HFS Debian Boot 30.4 GB disk1s2
In this case, it's
/dev/disk1. Then unmount it.
$ diskutil unmountDisk /dev/disk1 Unmount of all volumes on disk1 was successful
Write the Operating System to the USB Drive
Now this is the step, where you really need to pay attention. Writing to the wrong disk could cause your operating system to be overwritten. Thus, backup before and double check that the output file is the correct disk.
$ sudo dd if=/path/to/inputfile.img of=/dev/rDISK bs=1m
r is placed before the
disk-identifier, because using it during writing will speed up the process. Everything else is the same as above.
$ sudo dd if=debian-8.8.0-amd64-DVD.img.dmg of=/dev/rdisk1 bs=1m
It will take a bit, till it's finished. Once it is, two things will happen:
You will see a popup such as this:
Ignore it for now.
In the console you will see an output similar to this:
3809+1 records in
3809+1 records out
3994091520 bytes transferred in 74.693837 secs (53472839 bytes/sec)
Meaning the program has finished writing. First, eject the USB drive.
$ diskutil eject /dev/disk1 Disk /dev/disk1 ejected
Then choose ignore on the dialog box option.
You are now all set. Plug in the USB drive the next time you want to boot from it or install the operating system.