From Fedora Project Wiki

(grammatical and clarity edits; some technical markup fixed/adjusted; some trimming; some consistency; some categories; more explanation in the Talk:Delta ISOs page.)
(added instructions for using rawread script to read ISO off the optical disc into a file)
Line 18: Line 18:


<pre>applydeltaiso /dev/dvd deltaiso newiso</pre>
<pre>applydeltaiso /dev/dvd deltaiso newiso</pre>
Alternatively, the <code>rawread</code> script [[https://fedoraproject.org/wiki/File:Rawread.sh]] from http://www.troubleshooters.com/linux/coasterless.htm#rawread can be used to read the disc image into a file, as follows:
<pre>rawread /dev/dvd > file.iso</pre>
This can be done while the deltaiso is downloading, and the resulting ISO file can be verified (both in terms of integrity, and to make sure the correct image is being used for <code>oldiso</code>).  When the download is finished, using <code>applydeltaiso</code> on the ISO file will save time compared to using the optical disc.


== Creating Delta ISOs ==
== Creating Delta ISOs ==

Revision as of 16:04, 24 March 2010

A Delta ISO (deltaiso) is a file that contains the differences between two ISO files, and can be used to convert one into the other. It makes use of DeltaRPMs (deltarpm) between RPM files in the old and new ISOs, and so is only useful if these ISOs mainly consist of RPM files (as is the case for Fedora install images, but not live images).

Idea.png
If you like DeltaRPMs, you will like Delta ISOs
Using deltaisos saves bandwidth and time.

System Requirements in Fedora

  • Fedora 11 or later: RPM packages in Fedora 12 and later use xz compression (RPMs in older versions use gzip compression). In order to either create or use deltaisos between ISOs containing xz-compressed RPMs, Fedora 11 or later is required. (Fedora 10 or below does not work because there is not a deltarpm package with xz support.)
  • In Fedora 11, the deltarpm package must be the updated version, 3.5 or later (not the deltarpm-3.4-16.fc11 release version that does not contain xz support).
  • In Fedora 12 or later, the deltaiso package must be installed as well. (In Fedora 11, deltaiso support is contained in the deltarpm package, and there is no separate deltaiso package.)

Using Delta ISOs

The applydeltaiso command is used. The syntax is:

applydeltaiso oldiso deltaiso newiso

If oldiso is on a mounted CD/DVD disc, the following also works, but runs more slowly due to the optical drive's greater access time:

applydeltaiso /dev/dvd deltaiso newiso

Alternatively, the rawread script [[1]] from http://www.troubleshooters.com/linux/coasterless.htm#rawread can be used to read the disc image into a file, as follows:

rawread /dev/dvd > file.iso

This can be done while the deltaiso is downloading, and the resulting ISO file can be verified (both in terms of integrity, and to make sure the correct image is being used for oldiso). When the download is finished, using applydeltaiso on the ISO file will save time compared to using the optical disc.

Creating Delta ISOs

The makedeltaiso command is used. The syntax is

makedeltaiso oldiso newiso deltaiso

Here, unlike the applydeltaiso command, oldiso should always refer to an ISO file, never a CD/DVD disc. (https://bugzilla.redhat.com/show_bug.cgi?id=569499)

If the deltaiso is intended for a large audience, then run and time the applydeltaiso command and verify that newiso is correctly generated. There are two reasons for this.

  1. Telling users the estimated run time for applydeltaiso lets them determine whether the download time saved by using a deltaiso is likely to be greater than the time required to run applydeltaiso.
  2. Due to the presence of some packages that were built improperly during Fedora 12 development, certain deltaisos may be nonfunctional. This should never happen when oldiso is Fedora 12 Final or later, and newiso is more recent than oldiso. Nevertheless, to be sure the deltaiso should be checked. When applydeltaiso finishes running, there should be a message similar to this:
iso successfully re-created, md5sum: f90d7a6d19a2cc5428a95892d5e2ca84

The md5sum is that of newiso, which is stored in the deltaiso for later verification. On the other hand, a failed reconstruction shows this message:

md5sum mismatch, iso is corrupt

For more details, refer to https://bugzilla.redhat.com/show_bug.cgi?id=548523.

External Links