Custom Ubuntu ISO do not work with usb-creator

Bug #497942 reported by Etienne Goyer
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
debian-installer (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Binary package hint: debian-installer

Using the karmic alternate ISO for i386 to create a bootable USB key using usb-creator-gtk works just fine. We can use the resulting USB key, and install karmic just fine.

When we customize the ISO to add a package repository and make the resulting ISO a bootable USB key using usb-creator-gtk, the resulting USB will not be able to complete an installation. In the installer, we will get an error such as:

--------------------------------
[!] Install the base system

No installable kernel was found in the defined APT source.
...

Continue without installing a kernel?
---------------------------------------------

The same custom ISO, burnt to a DVD, would work just fine and complete without any problem.

The process to make the custom ISO is the following:

1. loopback-mount the standard alternate ISO somewhere, say /mnt.

    mount -o loop ubuntu-9.10-alternate-i386.iso /mnt

2. Copy the content of the ISO to a directory somewhere, say ~/custom-iso/

    cp -a /mnt/* /mnt/.disk ~/custom-iso/

3. Create a directory in ~/custom-iso/ to hold additional packages, say ~/custom-iso/packages

4. Copy .deb to that directory. In my test, i used the acroread package from the karmic partner repository.

5. Create a package index in the directory in question using dpkg-scanpackages

    dpkg-scanpackage ~/custom-iso/packages | gzip -9c > ~/custom-iso/packages/Packages.gz

6. Master an ISO with mkisofs:

    mkisofs -r -V "custom installer" --cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat --no-emul-boot --boot-load-size 4 --boot-info-table -o karmic-custom.iso ~/custom-iso/

As I explained above, the resulting karmic-custom.iso would work just fine and install a system when burnt to a DVD, but will fail when made into a bootable USB key using usb-creator-gtk.

I am not sure if the bug lies with d-i or usb-creator-gtk, so I marked it as affecting d-i as this is where it fail.

I tested on two different machines, so I am reasonably certain it is not hardware-related.

To be absolutely, I created a bootable USB key using the plain unmodified karmic alternate ISO for i386, and it did install. The problem really lies with the custom packages directory, or possibly with the process I used to master the ISO.

Attached is /var/log/syslog from the USB installer right after it failed (when it displays the "No installable kernel was found..." error message).

Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :
Changed in debian-installer (Ubuntu):
assignee: nobody → Canonical Foundations Team (canonical-foundations)
Revision history for this message
Robbie Williamson (robbiew) wrote :

I'm not sure if what you are trying to do is supported. However, I've assigned to Evan for his response/action.

Changed in debian-installer (Ubuntu):
assignee: Canonical Foundations Team (canonical-foundations) → Evan Dandrea (ev)
Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :

Fundamentally, I want to create an ISO with custom packages on it that can be burned to an optical disk or made into a bootable USB installer. I would be super happy to be pointed to a supported way to achieve that! :)

Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :

Reading the syslog file attached yesterday, it seem like it is apt-cdrom that is in cause. For some reason, it seems to fail when copying the Packages file around.

I believe this might be due to the fact that usb-creator format the USB device in VFAT, which does not support symlink. In that case, the ubuntu/ symlink at the root of the ISO file system is non-existent on the USB key. That is the only difference I can see between the optical disk and the USB key.

Revision history for this message
Evan (ev) wrote :

Did you include any kind of preseed with this? I've tried to reproduce this bug using usb-creator from lucid, the 9.10 amd64 alternate, and acroread from the partner repository, using the exact steps out outlined above, but the install finished without issue.

Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :

I tested without using a preseed, and it did fail. Strange.

Revision history for this message
Roberto Salazar (rsalazar) wrote :

I tested using Etienne's procedure above and it failed. I am getting the same result with the error message -> " No installable kernel was found in the defined APT." I tried it on a notebook and a desktop with the same result. Just to be sure, I also tried using different USB's. I can confirm this issue.

Revision history for this message
Roberto Salazar (rsalazar) wrote :

I justed tested the procedure above using the Lucid USB Startup DIsk Creator with the same results! The same error message appears during the installation.

Revision history for this message
Evan (ev) wrote :

Roberto,
Can you please run through an install again using the modified ISO on a USB disk, but add DEBCONF_DEBUG=developer to the kernel command line (F6, esc, at the CD boot menu). Please attach /var/log/syslog to this bug report once the install fails.

Thanks!

Revision history for this message
Roberto Salazar (rsalazar) wrote :

Evan,

As instructed, attached is the "syslog" file, produced with the kernel boot option above. I'm also attaching the "install debug log" files (compressed) just in case it helps.

Thanks,

Roberto

Revision history for this message
Roberto Salazar (rsalazar) wrote :

Here (attached) is the "install debug log" files.

Revision history for this message
Evan (ev) wrote :

Thanks, I'm looking into this now.

Revision history for this message
Evan (ev) wrote :

I believe I've figured out the problem, and I cannot believe it didn't occur to me immediately. If you put your packages in a directory named something other than "packages" (or rename your existing "packages" directory), does the install complete successfully?

Revision history for this message
Roberto Salazar (rsalazar) wrote :

Evan,

I renamed the "packages" directory to "applications" and re-tested.
The installer completed the installation!
Installer finished cleanly and without errors!

Do you know why this is only an issue when using USBs and not on other media?

Thanks for looking into this.

Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :

Confirmed++. Tested here: we just renamed the "packages" directory to "custom-debs", and it worked.

Thanks for the solution!

Changed in debian-installer (Ubuntu):
status: New → Confirmed
Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :

Knowing what we know (that a directory called "packages" on a case-insensitive FAT32 file system wreak havoc with apt-cdrom), shall the bug be closed as Invalid? I am not too sure how this could actually be fixed.

Revision history for this message
Colin Watson (cjwatson) wrote : Re: [Bug 497942] Re: Custom Ubuntu ISO do not work with usb-creator

It shouldn't be closed. We could for example check the type of the
"packages" entry rather than assuming it's a file.

Evan (ev)
Changed in debian-installer (Ubuntu):
assignee: Evan Dandrea (ev) → nobody
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.