I've been trying to do this since yesterday, following the instructions given on ubuntu.com's official page here:


I can complete every step without error. However, when restarting the mac, the flash drive simply reports 'missing operating system, press any key...'. From there, there's nothing I can do except a hard reset.

I've tried Unetbootin, but that won't create a usb that's bootable from a mac.

edit: I've also fixed the partition tables with rEFIt, but still no joy.

Any suggestions?


5 Answers 5


Here's my own answer:

OK, so I figured it out, largely thanks to this extended thread on macforums


However, I'm going to offer a summarized version here. Whoever's responsible for the ubuntu page on this (the one I linked to in my OP) really should get it changed. Those instructions just don't work.

Here's what you need:

Create flash drive files:
Start up UNetbootin. Choose the ubuntu iso as the source and the flash drive as the destination. When that's finished you'll get a warning that the USB is not bootable on a mac. That's expected.

Create partitions on hard disk:
Open Disk Utility and choose the internal or external disk that you're going to use. Create a 2GB partition on it, formatted to FAT32. Create another partition (you can choose FAT32 for this too) the same size as you want your final install to be (I have a 750GB internal disk on my mac, so I gave ubuntu 100GB of that).

Get device names:
Open Terminal.app on your mac and copy/paste this command (you can type it, but there'll be some more complex commands later that you might want to cut and paste to avoid errors)

diskutil list

From the output, identify both the flash drive and the 2gb partition. They will have names such as /dev/disk1s1 and dev/disk0s4 for example. Make sure you pick the right name, or you could end up doing some damage.

Dismount devices:
Open Disk Utility.app, and click on the flash drive in the sidepanel. Hit the 'dismount' button in the taskbar above. Do the same for the 2gb internal partition.

Move files from flash drive to HD partition:
Copy and paste this into Terminal, but DO NOT press 'return':

sudo dd if=/dev/disk1s1 of=/dev/rdisk0s4

Change the device names to match those you found in step 3. The first device name is source (the flash drive), the second one is the destination (the 2gb fat partition on your internal disk). Notice that I've added an 'r' before 'disk' on the output device. That's deliberate and you should make sure you add it too, as it speeds up the copy process considerably.

Double check that line is correct, then when you're ready, press 'return' and enter your admin password (it'll be invisible when you type it).

Remove flash drive:
When that eventually completes, dismount and remove the flash drive. You don't need it anymore.

Fix partition tables:
Restart your mac with the option key held down. From the rEFIt menu, choose 'sync partition tables'. Confirm with 'y' and exit. Then choose 'restart' from the rEFImenu.

Start up ubuntu live CD:
You should now see the Penguin logo. Click on it to start the Ubunutu Live CD.

  • You are using "s1" from your /dev/disk1. Is that the FAT partition? I have 3 partitions, GUID partition table, EFI and FAT. Not sure which one to pick :/
    – span
    Feb 10, 2013 at 12:46
  • Since the problem is solved, could you please select your answer as having solved your problem?
    – Nil
    Apr 19, 2013 at 21:54

I got ubuntu installed on my IMac mid 2011 following these instructions. Although I later figured out a way to cut the steps in half. I created an Ubuntu image directly into the HD partition without using the USB

Here's what I did:

  1. Partition the Mac hardisk using disk utilities:

    1. Create a 40GB fat32 partition for Ubuntu

    2. Create a 5GB partition to hold the bootable Linux image

  2. Use Unetbootin to directly create the image in the 5GB partition.

  3. Restart - hold down option key - boot into Ubuntu using rEFIT.

Hope this helps. Thanks for the the great post.



I have found that this bug in Unetbootin is still not fixed.

Unetbootin does not work well on OSX. The stick is not bootable in the end but I can use unetbootin on ubuntu all day long.

I have used this formula successfully for making a USB installer on a mac:

(first answer) How do I create an Ubuntu live USB using a Mac?

It converts the iso to img.dmg, then uses dd. The USB worked on a PC.


Why not just use Terminal?

Just use dd since Mac OS X is just a unix variant. You can test to see if it is installed by going to the terminal.

open up spotlight and type terminal and hit enter

cmd+space -> Terminal

type in the terminal

$ which dd

if it gives you a path, it's installed. if there is no output and an empty prompt, you'll have to install it manually (though, i doubt that will be the case).

you basically have a unix shell running bash at your disposal and it would be easier to use your built-in tools. it'll also teach you some basics.

dd is not typically advised to people unfamiliar with the tool because if used in an incorrect manner, it could destory your hdd, hence its nickname, destroy disk.

im not sure what tools you'd have available to check your mount points and the devices mounted at those points.

Figuring out your mount points

The most common tools for figuring out where your devices are mounted typically are

df - report file system disk space usage (df -h prints human readable info)
mount - mount a filesystem (mount on its own will print similar info)
fdisk - manipulate disk partition table (fdisk -l will list local partitions according to the device)

if in doubt, check if fdisk is available.

$ which fdisk
$ fdisk -l
fdisk: cannot open /dev/sda: Permission denied
fdisk: cannot open /dev/sdb: Permission denied
fdisk: cannot open /dev/sdc: Permission denied
$ sudo fdisk -l
...lots of information here...

...partition schema here...

Disk /dev/sdb: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: (some type)
Disk identifier: (id here)

Device     Boot Start        End    Sectors  Size Id Type
/dev/sdb1        2048 3907028991 3907026944  1.8T  b W95 FAT32

Disk /dev/sdc: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: (some type)
Disk identifier: (id here)

Device          Start        End    Sectors   Size Type
/dev/sdc1        2048 1953515519 1953513472 931.5G Microsoft basic data
/dev/sdc2  1953515520 3907028991 1953513472 931.5G Microsoft basic data

Disk /dev/sdd: 15 GiB, 16131293184 bytes, 31506432 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xc3072e18

Device     Boot Start      End  Sectors Size Id Type
/dev/sdd1        2048 31506431 31504384  15G  b W95 FAT32

The stuff you care about will look somewhat like this.

Disk /dev/sdd: 15 GiB, 16131293184 bytes, 31506432 sectors
...redundant information here...

Device     Boot Start      End  Sectors Size Id Type
/dev/sdd1        2048 31506431 31504384  15G  b W95 FAT32

We know the device name and where it is located.

/dev/sdd (the device name)
/dev/sdd1 (the device partition)

to confirm, we just use df

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           793M  9.4M  784M   2% /run
/dev/sda5       450G   15G  413G   4% /
tmpfs           3.9G  780K  3.9G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda3        96M   29M   68M  30% /boot/efi
tmpfs           793M   24K  793M   1% /run/user/1000
/dev/sdd1        16G   11M   15G   1% /media/$USER/UBSKEY

Once you know where your usb drive is mounted, unmount it before preceding

$ umount /dev/sdXy

for example

$ umount /dev/sdd1

It's straight forward from here.

Writing the ISO to USB

We know where the iso is, usually Home -> Downloads (or something similar). Now we just tell dd to write to the usb stick to make a live medium (source). The general idea is outlined as

  • change to the directory where iso is located

  • verify youre in the right directory and the file is present

  • write the iso to the usb

for example

$ cd ~/Downloads
$ ls -l
total 0 (if nothing is present)
...file names here...
$ sudo dd if=ubuntu-file-name.iso of=/dev/sdd bs=4M && sync

wait until it is finished. there will be no indication of what is happening until it has completed. sync will make sure everything turned out alright and print out information indicating what it has read and written once it has finished.

Note: If you use dd to write to a partition, it will always fail to boot. you have to write to the first byte of the device so that it can create a boot sector on the USB. thats why i write to /dev/sdd and not /dev/sdd1


Make a bootable USB for Mac.
Go to GParted in Linux on a PC->Device->Create partition table->In the dropdown box choose Mac->Format USB to FAT32->Use USB writer to write to USB. I tried USB flash drives and they didn't work.

A 15-year-old IDE HDD in a USB hard drive caddy worked the first time. USB flash drives didn't make a Mac partition table, but the old HDD in a USB external hard drive enclosure did. Plug in the USB caddy->Turn on the MAC and when you hear the sound push and hold the Option key and the USB will appear. Click on USB->It will load->Then install Linux on the MAC hard drive using the USB HDD.

  • It's very hard to follow your comment, please consider using the formatting tools and punctuation.
    – Jeremy
    Apr 23, 2018 at 12:36

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .