Ubiquity should put install image onto target disk for apt's use

Bug #455167 reported by John Gilmore
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubiquity (Ubuntu)
Invalid
Wishlist
Unassigned

Bug Description

Binary package hint: ubiquity

[Feature Request. Noticed this while installing Karmic alphas and betas and dailies.]

Disk drives are huge these days. Distro media are very small by comparison. There should be a really simple way to put a full copy of the install media onto the disk drive of the just-installed system. And apt should be configured to use it for subsequent package installs. This would burn maybe 1-2% of the disk drive, but would provide a complete set of validated and checksummed packages that can be used on the system (without any network access) to upgrade or repair a damaged machine -- or to install a second machine.

There's no reason to go out to the net to download packages that are unchanged since the distro ISO image was cut -- but that's what Ubuntu's apt-get and Package Manager does today. Instead, put the ISO image into the system at e.g. /usr/share/linux-images/ubuntu-9.04-dvd-i386.iso, and set up apt and/or fstab so that this distro image is accessible for installing later packages.

I regularly copy the ISO image onto the target system manually, but apt makes it hard to use such an image for package installs. (apt-cdrom really assumes you need/have a CDROM drive; it should be possible to just point it at one or several ISO images and be done!)

If you want to get really fun, then support doing Live CD's and installs from an ISO image over the network (using a simple boot USB key) -- and copy the image onto the target system. Most people download an ISO image, then have to burn it to a throwaway CD/DVD, then physically move that disc to the target system, etc. How much better to just download the image,
use a standard boot-my-image-over-the-net boot disc or USB key, and do the LiveCD or install over the Ethernet from the machine you just downloaded the ISO image to?

Another possible simplification would be to fix the USB images so that they contain the full ISO image (as a file), plus a small amount of boot code outside of it. Currently, you can't check a bootable USB install -- it has no checksum that works. If your USB key is flakey, you get odd errors that you can't reproduce after remaking the USB key and trying again.

Revision history for this message
Evan (ev) wrote :

"Disk drives are huge these days. Distro media are very small by comparison. There should be a really simple way to put a full copy of the install media onto the disk drive of the just-installed system. And apt should be configured to use it for subsequent package installs. This would burn maybe 1-2% of the disk drive, but would provide a complete set of validated and checksummed packages that can be used on the system (without any network access) to upgrade or repair a damaged machine -- or to install a second machine."

It would not make sense to do this for the live CDs as the only packages on those are a few optional items, like language packs, when we have space for them. The live CD installer (ubiquity) works by copying a pristine version of the live CD filesystem (/rofs) over to the target partition, rather than slowly installing packages like the alternate CD installer does.

"I regularly copy the ISO image onto the target system manually, but apt makes it hard to use such an image for package installs. (apt-cdrom really assumes you need/have a CDROM drive; it should be possible to just point it at one or several ISO images and be done!)"

You can; they just have to be mounted. See the -d flag in the apt-cdrom manual page. You may have to use APT::CDROM::NoMount as well.

"If you want to get really fun, then support doing Live CD's and installs from an ISO image over the network (using a simple boot USB key) -- and copy the image onto the target system. Most people download an ISO image, then have to burn it to a throwaway CD/DVD, then physically move that disc to the target system, etc. How much better to just download the image,
use a standard boot-my-image-over-the-net boot disc or USB key, and do the LiveCD or install over the Ethernet from the machine you just downloaded the ISO image to?"

If they're going to be using a usb key, then why not just use the entire image, rather than trying to teach users how to bring up the installer over NFS (when many probably don't have a second Ubuntu computer)? usb-creator writes an Ubuntu CD image to a USB disk. It already exists in the default install.

"Another possible simplification would be to fix the USB images so that they contain the full ISO image (as a file), plus a small amount of boot code outside of it. Currently, you can't check a bootable USB install -- it has no checksum that works. If your USB key is flakey, you get odd errors that you can't reproduce after remaking the USB key and trying again."

What's wrong with the "check CD for defects" option on the boot menu when using a USB disk created with usb-creator?

Changed in ubiquity (Ubuntu):
importance: Undecided → Wishlist
status: New → Incomplete
Revision history for this message
John Gilmore (gnu-gilmore) wrote :

apt-cdrom does NOT work this way. It keeps insisting that I mount a physical CDROM, even when the image is mounted, even when I passed -m and -d /mnt/ubu910 to apt-cdrom add. It's just broken for use with ISO images.

And if you leave an apt-cdrom entry in /etc/apt/sources.list, it screws up all possibility of using apt-get. It insists on getting everything from the CDROM, and when you don't have a CDROM, it doesn't just go on and use the network -- it keeps looping, insisting that you mount a CDROM.

Maybe bandwidth is free for Canonical, but if it isn't, I really recommend fixing this stuff, so that people can just install 95% of the packages from the DVD image that they already have, without having to suck the identical package over the Internet.

Revision history for this message
John Gilmore (gnu-gilmore) wrote :

It seems that the thrust of this bug has not been perceived.

Even when I have a full DVD install image sitting on the hard drive of my Ubuntu system, there appears to be no way to *install packages from it* without manually groveling around in its subdirectories and running dpkg!

There appears to be no way to tell apt-get "Here's a big local DVD ISO image that you can get packages from, when they haven't changed since the release." Apt-cdrom does not do this, or if somehow it does, the way to make it do this is completely unclear. (Of course, if a package has been updated since the release, apt-get should get the latest version from the net. But there's no need to get an unchanged package from the net -- it has already been downloaded once in the DVD image.)

Such an option would significantly reduce the bandwidth needed for Ubuntu mirrors -- since the vast majority of subsequent package installs could come from the user's own hard drive rather than over the net.

Revision history for this message
John Gilmore (gnu-gilmore) wrote :

I'm trying to get this bug to not automatically expire. If Ubuntu keeps ignoring my bug reports then I'll just stop making bug reports -- which is not what I want and not what you want. But somehow there's this daemon for throwing away bug reports *automatically*.

Changed in ubiquity (Ubuntu):
status: Incomplete → New
Revision history for this message
Phillip Susi (psusi) wrote :

We no longer have a dvd image, so this is no longer relevant. Also you always could install packages from the cd; you just had to have it in the drive when you went to install.

Changed in ubiquity (Ubuntu):
status: New → Invalid
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.