Livedvd-makingoff

From VNUML-WIKI
Revision as of 00:57, 4 April 2007 by David (talk | contribs)
Jump to: navigation, search

VNUML Live DVD 2.0 making-off

VNUML Live DVD 2.0 was created using Ubuntu Customization Kit (UCK) v1.3, is a tool that helps you customizing official Ubuntu Live CDs.

  1. Download UCK v1.3 from here and install it:
  2.  dpkg -i uck_1.3_all.deb
    
  3. Create a directory to hold all the vnumllive stuff and download Ubuntu 6.06 iso file:
  4.  mkdir vnumllive
     cd vnumllive
     wget ... ubuntu-6.06.1-desktop-i386.iso
     mkdir live
     cd live
    
  5. Create a directory named vnuml and copy the kernel and rootfilesystem:
  6.  mkdir vnuml
     cd vnuml
     wget ...root_fs_tutorial...
     wget ...linux-...
    
  7. 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/
    


  8. Create a file vnumllive/live/customize with the following content:
  9. #!/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
    
  10. Give it execution permissions:
  11.  chmod +x customize 
    
  12. Create a file vnumllive/live/iso_description with the following content:
  13. VNUML Live DVD v2
    
  14. Execute the following command:
  15.  remaster-live-cd ubuntu-6.06.1-desktop-i386.iso live
    
  16. If everything goes well, the dvd iso file and its md5 are stored in /root/tmp/remaster-new-files. Just rename and copy them:
  17. 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.

References