Customize or Remaster ubuntu 9.04 jaunty from an image file

This tutorial will show you how to customize and remaster your ubuntu 9.04 jaunty using a jaunty iso file.

1. Create a work directory

# mkdir jaunty

2. Create the following directoires

# mkdir jaunty/cdrom
# mkdir jaunty/tmp
# mkdir jaunty/root

3. Mount the jaunty iso image on jaunty/cdrom directory

# mount -o loop jaunty.iso jaunty/cdrom

4. Copy everything from the cdrom to jaunty/image directory

# cp -r jaunty/cdrom jaunty/image

5. Now the image directory has the content of your cdrom

We are going to rebuild filesystem.squashfs under jaunty/image/casper

Move the filesystem.squashfs image to jaunty/tmp directory

# mv jaunty/image/casper/filesystem.squashfs jaunty/tmp

6. Mount the filesystem.squashfs under jaunty/root direct

# mount -o loop jaunty/tmp/filesystem.squashfs jaunty/root

7. Copy the contents of fileystem.squashfs to jaunty/remaster

# cp -r jaunty/root jaunty/remaster

8. Copy resolv.conf and sources.list from the host system

# cp /etc/resolv.conf jaunty/remaster/etc/

9. Preserve original sources.list.

# cp jaunty/remaster/etc/apt/soures.list jaunty/remaster/etc/apt/soures.list.backup
# cp /etc/apt/sources.list /jaunty/remaster/etc/apt/

Make sure that sources.list points to jaunty archive

10. Now you can chroot to jaunty/remaster

# chroot jaunty/remaster

11. Now run the following ( You are inside chroot )

# mount /proc

# mount /sys

# mount -t devpts none /dev/pts

The above commands mount the respective directories inside chroot.

12. Now you can install/remove necessary packages using apt.

eg:
# apt-get install vlc
# apt-get remove gimp

13. Cleanup the unwanted files.

# apt-get clean
# rm -rf /tmp/*
# rm /etc/resolv.conf

# umount -l -f /proc

# umount -l -f /sys

#umount /dev/pts

14. Now replace the sources.list with the original sources.list

# cp jaunty/remaster/etc/apt/sources.list.backup jaunty/remaster/etc/apt/sources.list

15. Repack squashfs:

# mksquashfs remaster image/casper/filesystem.squashfs -e remaster/boot

16. Recreate filesystem.manifest& filesystem.manifest.desktop:

Run the following commands.

# chroot remaster dpkg-query -W –showformat=’${Package} ${Version}\n’ | tee image/casper/filesystem.manifest

# cp -v image/casper/filesystem.manifest{,-desktop}

# REMOVE=’ubiquity casper live-initramfs user-setup discover xresprobe os-prober libdebian-installer4′

# for i in $REMOVE
do
sed -i “/${i}/d” image/casper/filesystem.manifest-desktop
done

17. Recreate md5sum

# cd image && find . -type f -print0 | xargs -0 md5sum > md5sum.txt

18. Copy filesytem.squashfs manifest to imag dirtorey

Recreate the iso image:

# mkisofs -r -V “$IMAGE_NAME” -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../ubuntu-jaunty-remix.iso .
# cd ..

Now your remastered ubuntu 9.04 jaunty is achived.

Now install the image on to a hard disk.

Comments (9)

  1. when i was trying to install my customized version on virtualbox it only as a livecd.But when trying to install it it says "gvfs-gdu-volume-monitor closed unexpectedly" and stop installation.Plz help me….

  2. Dipin Krishna

    It’s not trivially possible to split an bootable DVD into multiple CDs, as the installation program(s) will expect all of the installation media to be coming from a single source. To support multiple sources the installation program would need modifying to know how the media is distributed across the CDs and prompt you to insert the correct one at each stage.

    If you just want to Split ISO image into multiple archives that can later be extracted to the full ISO, then see http://blog.dipinkrishna.info/2009/08/split-iso-image-into-multiple-archives.html

  3. togum

    I have about 1 GB iso file about ubuntu.
    I want to make it in two CD.

    How can i do that?
    thanks

  4. Colby

    Some of us actually prefer to NOT use GUI programs.

    The CLI isnt nearly as hard as people seem to think.

  5. Joe Crawford

    This is great, thank you.

    Its cool to know how to do this without the GUI tools (such as Reconstruktor). I was always curious how they worked, and this method makes sense. I will try it soon.

    I’m sure it will come in handy, as I make custom images just to save time doing installs on new computers!

  6. Ahmadz1991

    thnx a million ,,, that seems to work….

    p.s. before installing any software,, u need to : apt-get update,,,

Leave a comment

Your email address will not be published. Required fields are marked *

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.