Make a USB Boot CD for Ubuntu

Make a USB Boot CD for Ubuntu that can be used to boot your Ubuntu Live USB flash drive from a PC or Mac with a BIOS that doesn't natively support booting from USB devices. (the USB drivers are loaded from CD). I used a MacBook Pro to test this tutorial. This process replaces our older USB Boot CD for Ubuntu tutorial, with new requirements added to make it work with later versions.

A boot menu option has been included for booting from a MacBook (forcing bypass of the Nouveau Nvidia drivers, which do not play well with a MacBook.).

Prerequisites to make a USB Boot CD for Ubuntu

  • PC or MacBook that can Boot from a Live CD
  • USB flash drive with Ubuntu preinstalled
  • Working CD Burner and USB Port
  • Active Internet Connection

How to make a USB Boot CD for Ubuntu

Note: I prefer to perform the following steps by booting from a prebuilt Live Ubuntu flash drive created using UUI, using a machine that does support booting from USB. This allows us to free up the CD Burner and use it to burn the final ISO.

  1. Insert your Bootable Ubuntu Live USB (or Ubuntu CD) and restart your computer, booting from the CD or USB
  2. Open a Terminal, and type or copy each of the following lines:
  3. To update, type:
    sudo apt-get update
  4. To install nvidia and grub:
    sudo apt-get install --reinstall nvidia-current grub
  5. To make a temporary working path:
    mkdir -p ubcd/boot/grub
  6. To add the necessary ISO/CD boot files:
    cp /usr/lib/grub/i386-pc/stage2_eltorito ubcd/boot/grub
  7. To open grub menu for editing:
    gedit ubcd/boot/grub/menu.lst

    Add the following information to your menu.lst file and click save:

title Start Ubuntu from USB DISK (MACBOOK)
root (cd)
kernel /boot/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper noprompt cdrom-detect/try-usb=true persistent nouveau.noaccel=1 blacklist=vga16fb
initrd /boot/initrd.lz
boot

title Start Ubuntu from USB DISK (PC)
root (cd)
kernel /boot/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper noprompt cdrom-detect/try-usb=true persistent
initrd /boot/initrd.lz
boot
  1. Then to copy vmlinuz to the temporary direcxtory, type:
    cp /cdrom/casper/vmlinuz ~/ubcd/boot
  2. To edit the modules file, type:
    sudo gedit /etc/initramfs-tools/modules

    Add the following lines to the modules file and click save:

    usbcore
    usb-storage
    uhci_hcd
    ohci_hcd
    ehci_hcd
    sd_mod
    scsi_mod
  3. Type the following to open and begin editing initramfs.conf
    sudo gedit /etc/initramfs-tools/initramfs.conf
  4. Add the following line to the bottom of the file and click save:
    WAIT=8
  5. Then to rebuild initramfs, type:
    sudo mkinitramfs -o ubcd/boot/initrd.lz
  6. Finally, to make a new Ubuntu ISO, type:
    mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o usbcd.iso ubcd 
  7. Insert a blank CD and type brasero -i usbcd.iso (to burn the usbcd.iso to a CD)