Oracle Linux bootable USB drive from ISO on MacOS

These steps show how to take the ISO download for Oracle Linux and copy it to a USB flash drive (thumb drive) on a MacOS computer. I have been doing this to install Linux on Intel NUC servers that don’t have DVD drives. I found it was required for the R8 U3 because the image is too large to write to a DVD with a dual layer disc.

Warning - Use caution when performing these steps. These commands could damage another disk if you don’t use the correct device path.

Step 1 - Download the ISO image

Download the ISO image for the version of Oracle Linux that you wish to boot and install.

Oracle Linux Downloads

Example:

OracleLinux-R8-U3-x86_64-dvd.iso

macos:Oracle Linux mike$ ls -lh
total 20795408
-rw-rw-rw-@ 1 mike  staff   1.1K Jan 14 22:51 checksum_OracleLinux-R8-U3-Server-x86_64.txt
-rw-rw-rw-@ 1 mike  staff   8.6G Jan 10 18:58 OracleLinux-R8-U3-x86_64-dvd.iso
-rw-rw-rw-@ 1 mike  staff   3.1K Jan 10 19:38 RPM-GPG-KEY-oracle-ol8
-rw-rw-rw-@ 1 mike  staff   678M Jan 10 18:20 x86_64-boot-uek.iso
-rw-rw-rw-@ 1 mike  staff   668M Jan 10 19:11 x86_64-boot.iso

After the image is downloaded, you should follow the instructions on the Oracle download page to verify the checksum of the image. The newer steps use GPG to verify the checksum was published by Oracle as well as comparing the actual checksum to make sure the file matches. GPG isn’t installed on the Mac by default. It can be installed using Homebrew or other package tools.

Verify Oracle Linux Downloads

It is also possible to get the checksum of the ISO using the following syntax. But the full method is preferred.

shasum -a 256 OracleLinux-R8-U3-x86_64-dvd.iso

Step 2 - Locate the device path for the USB flash using diskutil.

diskutil list will list all the disk devices on the system.

In the list look for the USB flash drive. It is typically easily identifieable by looking at the sizes. The one I am using is 16GB and shown in the list as 15.9 GB. They often come formatted with a Windows FAT partition table so that is another way to locate it. It also helps if you can unmount and disconnect any external drives that are not required.

Note: If you have been installing software from a DMG, that will also show up in the list.

macos:Oracle Linux mike$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.3 GB   disk0
   1:                        EFI EFI                     314.6 MB   disk0s1
   2:                 Apple_APFS Container disk1         500.0 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +500.0 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD - Data     374.6 GB   disk1s1
   2:                APFS Volume Preboot                 80.2 MB    disk1s2
   3:                APFS Volume Recovery                529.0 MB   disk1s3
   4:                APFS Volume VM                      10.7 GB    disk1s4
   5:                APFS Volume Macintosh HD            11.3 GB    disk1s5

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *15.9 GB    disk2
   1:             Windows_FAT_32 NO NAME                 15.9 GB    disk2s1

Using the above output, this is the device for my USB flash drive:

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *15.9 GB    disk2

Step 3 - Unmount the USB flash

Use the following command to unmount the file system and keep the disk available. This is because the file system will be overwritten in the next step.

diskutil unmountDisk /dev/disk2

Example:

macos:Oracle Linux mike$ diskutil unmountDisk /dev/disk2
Unmount of all volumes on disk2 was successful

Step 4 - Copy the ISO image to the USB flash

Using the OS command dd it is possible to copy all the blocks from the ISO file to the USB flash drive. This command does not generate output during the copy process. It prints a summary of the process after the command completes.

Note: In this example the ISO image is in the current directory so it is referenced as “./” (relative path). If the file is in another directory you can give it a full (absolute) path.

The command is as follows. Be sure to change the YOUR_FLASH_PATH to match the output from the diskutil list command.

sudo dd bs=512k if=./OracleLinux-R8-U3-x86_64-dvd.iso of=/dev/YOUR_FLASH_PATH

Tip: Press CTRL-T to get stats, otherwise there is no output from the command until it completes. The control key and T key together.

Example:

macos:Oracle Linux mike$ sudo dd bs=512k if=./OracleLinux-R8-U3-x86_64-dvd.iso of=/dev/disk2
Password:
load: 2.95  cmd: dd 33094 uninterruptible 0.00u 0.59s
162+0 records in
161+0 records out
84410368 bytes transferred in 26.036088 secs (3242053 bytes/sec)
load: 3.25  cmd: dd 33094 uninterruptible 0.00u 1.52s
459+0 records in
458+0 records out
240123904 bytes transferred in 68.002535 secs (3531102 bytes/sec)
17616+0 records in
17616+0 records out
9235857408 bytes transferred in 2539.930654 secs (3636264 bytes/sec)
macos:Oracle Linux mike$ 

In this example it took about 42 minutes to copy the ISO image to a USB flash drive.

The image copy took 42.3167 minutes

Step 5 - Remove the USB flash and insert it into the system to boot

The process is completed. The image isn’t mounted so it is OK to just remove the USB flash. Then insert it in the system you want to install Oracle Linux on and power it up. Note that some systems require a setting in BIOS to enable booting from a USB device. Once it boots you can continue the installation as if it was booted from a DVD drive.

Advertisement