Livedvd-makingoff
VNUML Live DVD making-off
Creation using Ubuntu Customization Kit (UCK)
[UCK] is a tool that helps you customizing official Ubuntu Live CDs.
Download (http://sourceforge.net/project/showfiles.php?group_id=169959) and install UCK from debian package:
dpkg -i uck_1.3_all.deb
Create a directory to hold all the vnumllive stuff:
mkdir vnumllive cd vnumllive wget ... ubuntu-6.06.1-desktop-i386.iso mkdir live cd live
Create a directory named vnuml and copy the kernel and rootfilesystem:
mkdir vnuml cd vnuml wget ...root_fs_tutorial... wget ...linux-...
Copy also the directories with the examples and other information needed to be copied to the live dvd:
# ls vnuml bookmarks.html known_hosts doc/ linux-2.6.16.27-bs2-xt-1m examples/ root_fs_tutorial-0.4.1 examples2/ ssh_host_rsa_key.pub init-vnuml usr-share-doc-vnuml/
Create a file vnumllive/live/customize with the following content:
#!/bin/bash # VARIABLES ROOTFS='root_fs_tutorial-0.4.1' KERNEL='linux-2.6.16.27-bs2-xt-1m' function prepare_install() { apt-get update apt-get -y upgrade } function install_packages() { apt-get install --assume-yes --force-yes "$@" } function remove_packages() { apt-get --purge remove --assume-yes --force-yes "$@" } # update apt sources.list echo "deb http://jungla.dit.upm.es/~vnuml/debian binary/" >> /etc/apt/sources. list echo "deb http://archive.ubuntu.com/ubuntu dapper universe" >> /etc/apt/sources. list echo "deb-src http://archive.ubuntu.com/ubuntu dapper universe" >> /etc/apt/sour ces.list prepare_install # Create groups /usr/sbin/addgroup admin /usr/sbin/addgroup ubuntu # Create user ubuntu /usr/sbin/useradd --home /home/ubuntu -m -g adm -G dialout,cdrom,floppy,audio,di p,video,plugdev,lpadmin,scanner,admin,ubuntu -p `perl -le "print crypt ('ubuntu' ,'(A..z)[rand 25].(A..z)[rand ');"` -s /bin/bash ubuntu # Add privileges to admin group echo "# Members of the admin group may gain root privileges" >> /etc/sudoers echo "%admin ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers # Install vnuml install_packages vnuml # Change VNUML timeout to 120 secs cp /usr/bin/vnumlparser.pl /tmp cat /tmp/vnumlparser.pl | sed -e 's/my $boot_timeout = 30;/my $boot_timeout = 12 0;/' | sed -e 's/getpwnam("vnuml")/getpwnam("ubuntu")/' | sed -e '/Ferm/d' > /u sr/bin/vnumlparser.pl rm -f /tmp/vnumlparser.pl # Copy root_fs and kernel cp /tmp/customize-dir/vnuml/$ROOTFS /usr/share/vnuml/filesystems cp /tmp/customize-dir/vnuml/$KERNEL /usr/share/vnuml/kernels ln -s /usr/share/vnuml/filesystems/$ROOTFS /usr/share/vnuml/filesystems/root_fs_ tutorial ln -s /usr/share/vnuml/kernels/$KERNEL /usr/share/vnuml/kernels/linux # Add vnuml-init script to startup cp /tmp/customize-dir/vnuml/init-vnuml /etc/init.d update-rc.d init-vnuml defaults 12 # 12 is to start it before gdm... # Copy aditional examples and docs cp -r /tmp/customize-dir/vnuml/examples/* /usr/share/vnuml/examples cp -r /tmp/customize-dir/vnuml/doc /usr/share/vnuml # Copy ssh_host_rsa_key.pub temporarily to /tmp file mkdir -p /usr/share/vnuml/aux cp /tmp/customize-dir/vnuml/ssh_host_rsa_key.pub /usr/share/vnuml/aux cp /tmp/customize-dir/vnuml/known_hosts /usr/share/vnuml/aux # Copy firefox bookmarks file cp /tmp/customize-dir/vnuml/bookmarks.html /etc/firefox/profile # Copy documentation withouth author's names cp -rf /tmp/customize-dir/vnuml/usr-share-doc-vnuml/* /usr/share/doc/vnuml
Give it execution permissions:
chmod +x customize
Create a file vnumllive/live/iso_description with the following content:
VNUML Live DVD v2
Execute the following command:
remaster-live-cd ubuntu-6.06.1-desktop-i386.iso live
If everything goes well, the dvd iso file and its md5 are stored in /root/tmp/remaster-new-files. Just rename and copy them:
mv /root/tmp/remaster-new-files/livecd.iso vnuml-live-2.0.iso mv /root/tmp/remaster-new-files/livecd.iso.md5 vnuml-live-2.0.iso.md5
Note: Delete /root/tmp before generating the dvd in case of problems.
OLD
Based on [LiveCDCustomization/6.06]
sudo su apt-get install squashfs-tools mkisofs qemu modprobe squashfs
mkdir live mv ubuntu-6.06.1-desktop-i386.iso live cd live
mkdir mnt mount -o loop ubuntu-6.06.1-desktop-i386.iso mnt
mkdir extract-cd rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract-cd
mkdir squashfs mount -t squashfs -o loop mnt/casper/filesystem.squashfs squashfs
mkdir edit cp -a squashfs/* edit/
cp /etc/resolv.conf edit/etc/ cp /etc/hosts edit/etc/
chroot edit mount -t proc none /proc mount -t sysfs none /sys
export HOME=/root export LC_ALL=C
.....
Add VNUML package source:
> vi /etc/apt/sources.list
# Uncomment this lines deb http://archive.ubuntu.com/ubuntu dapper universe deb-src http://archive.ubuntu.com/ubuntu dapper universe # Add this new line deb http://jungla.dit.upm.es/~vnuml/debian binary/
Update and upgrade:
> apt-get update > apt-get upgrade
Install VNUML:
> apt-get install vnuml
Copy VNUML kernel and rootfilesystem and create soft links:
> cd /usr/share/vnuml/filesystems > wget ......./root_fs_tutorial-XXXX > ln -s root_fs_tutorial-XXXX root_fs_tutorial > cd ../kernels > wget ......./linux-XXXX > ln -s linux-XXXX linux
Adduser:
> adduser --system ubuntu > passwd ubuntu # set it to "ubuntu"
retocar a mano /etc/passwd para cambiar el /bin/false a /bin/bash del usuario ubuntu
Notes on ubuntu live CD:
- Has autologin activated to user ubuntu (configured in /etc/gdm.conf; entries "AutomaticLogin" and "TimedLogin*)
- ubuntu user
- has no password configured
- /etc/passwd entry = ubuntu:x:999:999:Ubuntu Live CD user,,,:/home/ubuntu:/bin/bash