Site icon Dipin Krishna

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.

Exit mobile version