24

I created a bootable USB using Startup disk creator (in ubuntu desktop 12.04 32bit), from an iso image of Ubuntu server 14.04 64 bit, when I want to boot another computer using this usb drive, The computer boots up, the installation process ok, it gets through the selecting the language, then it shows me the error that it can't mount the cd-rom to continue the installation, I tried several times with others USB devices but it shows me the same error. How can I get this work ?

9 Answers 9

44

This is how i got it to work.

When it gets the CD-ROM error, move the install USB stick from one port, to another USB port on your PC. Then retry.

This worked. I don't know why.

Not only that but I was reinstalling 14.04 later that night, and the CD-ROM error did not happen again. The 2nd install went without a hitch.

Yes it worked for me also.

11
  • I'm to confirm that the "switch USB port" trick works on my machine. Very weird...
    – Samuel Li
    Nov 6, 2015 at 1:08
  • 5
    Yes this worked for me too! Nov 6, 2015 at 7:15
  • Amazing fix - worked a treat with 14.04.3 server amd64 too Nov 11, 2015 at 9:17
  • worked for me as well
    – sushicutta
    Dec 2, 2015 at 13:13
  • 1
    Worked for me 16.04.3 server
    – Jamesits
    Nov 21, 2017 at 5:10
16

Problem is that the new image isn't meant to be used with unetbootin or any of the normal USB creators.

Just use dd like:

dd if=ubuntu-14.04.2-server-amd64.iso of=/dev/sdb bs=16M

(obviously, replace /dev/sdb with the path to your USB key, but don't use any partitions (i.e. don't use /dev/sdb1, /dev/sdb2, etc -- just the whole device)

8
  • 2
    This appears to be the most correct answer and doesn't require any mucking around. Oct 28, 2015 at 15:22
  • 2
    This is what I did (in ubuntu server 15.10) but the problem still occurs.
    – niboshi
    Jan 17, 2016 at 3:44
  • 1
    Works perfectly! For OS X, use sudo dd if=ubuntu-14.04.3-server-amd64.iso of=/dev/rdiskX. Check for USB drive using diskutil list.
    – Jules
    Jan 26, 2016 at 15:04
  • This is a nice idea, but it's useless if you don't have a existing linux install.
    – Fake Name
    Mar 23, 2016 at 2:32
  • resource busy on OSX? goo.gl/6rZFpv
    – Paschalis
    Jul 5, 2016 at 14:01
13

http://ubuntuforums.org/showthread.php?t=2253860 has an answer.

Here are the steps that I took to get it to work

  1. When you get the error, Alt+F2 to a second console.
  2. Find out which device your USB stick is (tail -n 100 /var/log/syslog)
  3. If the device is busy, umount it (umount /dev/sd[abcdef]1)
  4. Then mount it to /cdrom (mount -t vfat /dev/sd[abcdef]1 /cdrom)
  5. Alt+F1 to get back to the install console, and try detecting again
3
  • Thank you for your question, I tried something like this, I did Alt-F2 to open a console, I tried to mount the USB myself by the command, but it failed and show me the same error. At the end I solve this by using anther iso image !! I changed this image ubuntu-14.04.2-server-amd64.iso and used this one ubuntu-14.04.1-server-amd64.iso, and it worked like a charm using the same startup disk creator and the same USB. finally I think this is a bug in that version of ubuntu server, because I'm not the only one who get this error.
    – Latyyfa
    Mar 12, 2015 at 8:22
  • 1
    This worked for me, however I had to exit the CD-ROM detection first by hitting "no" to stop retrying. Then, alt-f2 and mount the usb to /cdrom. Then, this is the key part, alt-f1 back and select the menu step AFTER "detect cd-rom". It skips auto detection and just keeps on going with whatever you've just mounted into /cdrom May 8, 2016 at 5:02
  • @Monkpit Your comment got me further than any of the answers. But upon finishing the install I am now left with a system configured to only install packages from cdrom, which means it won't download packages from the Ubuntu repositories, which is what I really need.
    – kasperd
    Aug 29, 2016 at 18:50
5

With the installation CD ubuntu-14.04.2-server-amd64.iso I ran into the same issue, for me it was as easy as running: umount /dev/sdc1

My tail -n 20 /var/log/syslog showed that the installer tried multiple times to mount /dev/sdc1 but since it was already mounted to /media that obviously failed.

With the above command I unmounted the USB-CD-Drive and the following attempt to automatically mount succeeded right away. After Alt+F2 just check what is currently mounted by issuing mount in the command prompt.

3

The steps here:

  1. At the third screen (don't wait until the next screen), hit Alt+F1, Enter
  2. Type: df -h to get information where is USB flash disk located/ mounted. in eg.: "/dev/sda1" mount as "/media"
  3. Type command mount -t iso9660 /media/ubuntu.iso /cdrom -o ro,loop
  4. Then hit alt+F1 to back at main screen of installation
  5. Finish. Now you can continue your process installation as usually.

The source is here...

2

I solved this by using anther iso image !! I changed this image ubuntu-14.04.2-server-amd64.iso and used this one ubuntu-14.04.1-server-amd64.iso, and it worked like a charm using the same startup disk creator and the same USB. finally I think this is a bug in that version of ubuntu server, because I'm not the only one who get this error.

1
  • There is no ubuntu-14.04.1-server-amd64.iso - there is a ...amd64+mac.iso which I am assuming is equivalent. I also tried the umount advice which did get me past the initial error, but then "Unable to find 'pool/main/l/linux-lts-utopic/block-modules-3.16.0-generic-di_3_10.0.40~10.04.1_amd64.udeb' came up. 14.04.2 doesn't seem USB friendly at all :/ May 14, 2015 at 21:43
0

Ran into this problem as well with ubuntu-14.04.3-server-amd64.iso. Unmounting the /sda/ drive from /media and remounting it as /cdrom worked but I ran into installation error further down the line when it was trying to extract files for the install. The USB drive I was trying to install from was created with Linux Live (LILI) USB creator. I recreated the usb installer with Universal USB installer from PenDriveLinux and everything worked perfectly.

0

mkusb works in and with Ubuntu Server as well as Ubuntu Desktop

  • mkusb version 12 alias dus works in text mode, so you can use it also when running Ubuntu Server via its console or remotely via ssh.

    enter image description here

  • mkusb version 12 alias dus works in graphics mode in standard Ubuntu (Desktop).

    enter image description here

    enter image description here

  • mkusb uses dd under the hood to clone linux hybrid iso files to a USB drive or memory card. This is a reliable method to create a boot drive, and all current Ubuntu iso files are hybrid iso files, including mini.iso and the Ubuntu Server iso files.

  • dd is straightforward, very powerful but also very dangerous. You can easily overwrite valuable data by writing to the wrong drive. mkusb wraps a safety belt around dd.

  • Install mkusb with the following command lines

    If you run standard Ubuntu, you need an extra instruction to get the repository Universe. (Kubuntu, Lubuntu ... Xubuntu have the repository Universe activated automatically.)

    sudo add-apt-repository universe  # only for standard Ubuntu
    
    sudo add-apt-repository ppa:mkusb/ppa  # and press Enter
    sudo apt-get update
    sudo apt-get install mkusb mkusb-nox usb-pack-efi
    
  • Lean alternative in Ubuntu Server: install only mkusb-nox

    mkusb-nox is a command line tool, that also wraps security around dd, and that does not want to install a lot of extra program packages, only pv.

    sudo add-apt-repository ppa:mkusb/ppa  # and press Enter
    sudo apt-get update
    sudo apt-get install mkusb-nox
    

    Run mkusb-nox for example with the following command line

    sudo mkusb-nox ubuntu-16.04.1-server-amd64.iso
    

    The manual provides more details,

    man mkusb-nox
    

Links

0

Install GRUB2 on USB to boot Ubuntu Linux ISO

Another benefit is you can setup the GRUB2 to boot from different ISO. [See Multi-ISO below]

Steps See pendrivelinux for details

Install GRUB2 to USB (assume the USB drive is on /dev/sdx1 partition)

  1. sudo mkdir /mnt/USB && sudo mount /dev/sdx1 /mnt/USB
  2. sudo grub-install --force --removable --boot-directory=/mnt/USB/boot /dev/sdx
  3. cd /mnt/USB/boot/grub
  4. wget pendrivelinux.com/downloads/grub.cfg [1]
  5. download the iso you want and rename it to /mnt/USB/ubuntu.iso. Make sure it's named ubuntu.iso and not the original ubuntu-16.04.1-desktop-i386.iso

Note: If you are using a 64-bit ISO, then you need to modify the grub.cfg. See [1] below for detail

Done. You should be able to boot your machine with the USB.

[1] Here the content of the grub.cfg

set timeout=10
set default=0

menuentry "Run Ubuntu Live ISO" {
 loopback loop /ubuntu.iso
 linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu.iso splash --
 initrd (loop)/casper/initrd.lz
}

64-bit ISO's vmlinuz is named vmlinuz.efi. so line 6 of the grub.cfg will be

 linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/ubuntu.iso splash --

Multi-ISO

  1. Put your ISO (e.g. ubuntu-16.04.1-desktop-amd64.iso) in /mnt/USB/
  2. Add a menuentry to grub.cfg with the correct ISO name
menuentry "Run Ubuntu 16.04.1 Live ISO" {
 loopback loop /ubuntu-16.04.1-desktop-amd64.iso
 linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/ubuntu-16.04.1-desktop-amd64.iso splash --
 initrd (loop)/casper/initrd.lz
}
1
  • but this method not going to work with Ubuntu server CDs
    – kevy
    Aug 28, 2017 at 4:52

You must log in to answer this question.

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