I've created a custom ISO file from the original one via mkisofs , but now I'm unable to boot it in VirtualBox 5.2 :

FATAL : Couldn't read from the boot medium ! System halted.

And here's the command I've used to create the ISO:

sudo mkisofs  -o ubuntu.iso test2/

I've just replaced the casper/filesystem.squashfs file (although I needed to update the casper/filesystem.squashfs.gpg and /md5sums.txt but those are not my concern here, because the problem is with the ISO file itself.The VBox even cannot boot the kernel , let alone the filesystem integrity check).

The origianal ISO file is : ubuntu-18.04.3-live-server-amd64.iso

Any help is much appreciated

EDIT: Surely the problem is with mkisofs because I tried making an ISO file out of an extracted ISO (the original one) without any slightest manipulation , but I got that error again.
Looks like just a boot flag is missing , but I don't know how to add it.

  • 1
    You did not mention whether you really used mkisofs. Note that ubuntu delivers mkisofs as a symlink to the defective genisofs. As long as you do not explain how you used mkisofs it is not possible to help you...
    – schily
    Jun 23 '20 at 12:22
  • @schily Requested information added to the post. Jun 23 '20 at 12:28

A recent man page is at:


and if you check your command line, you see tha you did not use any of the options that make a CD bootable.

If you installed the original mkisofs you have a file README.eltorito that contains e.g. this command line example:

mkisofs -V MYVOL -iso-level 4 -R -b boot/grub/stage2_eltorito -no-emul-boot \
    -boot-load-size 4 -boot-info-table -o myvol.iso thisdir

and this one:

mkisofs -V MYVOL -iso-level 4 -R -b boot/grub/stage2_eltorito -no-emul-boot \
    -boot-load-size 4 -boot-info-table \
    -eltorito-alt-boot -eltorito-platform efi -b boot/grub/boot.efi \
    -o myvol.iso thisdir

as an EFI example. You however need to know where to get the boot images from...

Important: the file names are examples. You need to use the right really existing file names that match the file tree you like to turn into a bootable CD.

And BTW: Since genisoimage is from May 2004, it does not yet support -eltorito-platform efi.

A recent version of mkisofs is always inside the schilytools tarball at:


If you have a working ISO image, you could run isodebug -i xxx.iso (replace xxx.iso with your image name) to get the mkisofs command lineoptions that have been used with that image. But note that this only works if xxx.iso has been created with the original mkisofs program.

In any case, if you got the boot tree from somewhere, I am sure that these know which files are the files you need to tell mkisofs as boot image files.

  • After running that , I got this error : genisoimage: option '-eltorito' is ambiguous; possibilities: '-eltorito-boot' '-eltorito-alt-boot' '-eltorito-catalog'. Jun 23 '20 at 12:43
  • After removing the option -eltorito platform efi it starts working but it couldn't find the boot/grub/stage2_eltorito file : genisoimage: Uh oh, I cant find the boot image 'boot/grub/stage2_eltorito' ! Jun 23 '20 at 12:45
  • 1
    So you are not using mkisofs but the defective fork that is at the state from May 2004. BTW: My example does not list an option -eltorito.
    – schily
    Jun 23 '20 at 12:46
  • Oh my bad .That was an error when I copy-pasted it.I just removed the backslashes and the dash was also deleted accidentally. But what about the original mkisofs ? Where Can I find it ? And what about the file 'boot/grub/stage2_eltorito' ? Jun 23 '20 at 12:52
  • 1
    As already mentioned, the real filenames used by your boot tree depends on the boot tree.
    – schily
    Jun 23 '20 at 12:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.