Wrapping Your own Live CD <ul><li>Robert Bernier,  </li></ul><ul><li>PostgreSQL Business Intelligence Analyst </li></ul><u...
Talk Summary <ul><li>What's a Live CD? </li></ul><ul><li>How does it work? </li></ul><ul><li>An overview of customizing th...
What's a Live CD? <ul><li>A live CD is an operating system distribution that is executed upon boot from a read only medium...
How does the Ubunutu Live CD work? <ul><li>El Torito, http://en.wikipedia.org/wiki/El_Torito_(CD-ROM_standard) </li></ul><...
An Overview of Customizing the Ubuntu Live CD <ul><li>The Steps </li></ul><ul><li>Choosing the workstation's OS </li></ul>...
An Overview of Customizing the Ubuntu Live CD <ul><li>The Steps, cont'd </li></ul><ul><li>Making menu changes - isolinux -...
An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts: </li></ul><ul><li>create block device dd if=/dev/zer...
An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts, cont'd: </li></ul><ul><li>regenerate squashed filesy...
An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts cont'd: </li></ul><ul><li>generate ISO ISO=`pwd`/ISO ...
An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts cont'd: </li></ul><ul><li>Burn DVD growisofs -dvd-com...
An Overview of Customizing the Ubuntu Live CD <ul><li>Command line utilities: </li></ul><ul><li>cd </li></ul><ul><li>cp </...
An Overview of Customizing the Ubuntu Live CD <ul><li>[email_address] </li></ul>
An Overview of Customizing the Ubuntu Live CD <ul><li>[email_address] </li></ul>
Creating pg_live,  issues <ul><li>Selecting the distribution (Xubuntu) </li></ul><ul><li>Choosing the medium, CD, but test...
Lessons Learned / Tips <ul><li>[email_address] </li></ul>
Issues not covered <ul><li>isolinux </li></ul><ul><li>gfx </li></ul><ul><li>[email_address] </li></ul>
Reference URLS <ul><li>pglive: http://www.nycbug.org/index.php?NAV=Library;SUBM=10101 </li></ul><ul><li>http://www.ubuntu....
<ul><li>THE  END  </li></ul><ul><li>[email_address] </li></ul>
Upcoming SlideShare
Loading in …5
×

Os Bernier

950 views

Published on

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
950
On SlideShare
0
From Embeds
0
Number of Embeds
32
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Os Bernier

  1. 1. Wrapping Your own Live CD <ul><li>Robert Bernier, </li></ul><ul><li>PostgreSQL Business Intelligence Analyst </li></ul><ul><li>Time: 1:45PM - 2:30PM </li></ul><ul><li>Location: E143-144 </li></ul><ul><li>Track: Linux </li></ul><ul><li>[email_address] </li></ul>
  2. 2. Talk Summary <ul><li>What's a Live CD? </li></ul><ul><li>How does it work? </li></ul><ul><li>An overview of customizing the Ubuntu live CD </li></ul><ul><li>Creating pg_live </li></ul><ul><li>Lessons Learned / Tips </li></ul><ul><li>Issues not covered </li></ul><ul><li>References </li></ul><ul><li>[email_address] </li></ul>
  3. 3. What's a Live CD? <ul><li>A live CD is an operating system distribution that is executed upon boot from a read only medium, without it being first installed on a hard drive. </li></ul><ul><li>It's a CD or DVD medium that can be read by an optical device! </li></ul><ul><li>The machine/pc must be capable of booting off the device </li></ul><ul><li>Live CDs work on any hardware architecture </li></ul><ul><li>Examples: - ubuntu / kubuntu / xubuntu - Knoppix - FreeSBIE - others (http://www.livecdnews.com/) </li></ul><ul><li>[email_address] </li></ul>
  4. 4. How does the Ubunutu Live CD work? <ul><li>El Torito, http://en.wikipedia.org/wiki/El_Torito_(CD-ROM_standard) </li></ul><ul><li>Boot Loader (ISOLINUX) </li></ul><ul><li>Virtual harddrive in RAM (linux kernel) </li></ul><ul><li>Filesystem, write over read only medium (UNION FS) </li></ul><ul><li>Compressed filesystem, squashfs </li></ul><ul><li>Hardware discovery (plug and play) and autoconfiguration </li></ul><ul><li>Debian's APT package system </li></ul><ul><li>[email_address] </li></ul>
  5. 5. An Overview of Customizing the Ubuntu Live CD <ul><li>The Steps </li></ul><ul><li>Choosing the workstation's OS </li></ul><ul><li>The target distribution / flavour (Ubuntu, Kubuntu, Xubuntu) </li></ul><ul><li>The development environment </li></ul><ul><li>Copying the CD to the hardrive </li></ul><ul><li>Access the squashed filesystem </li></ul><ul><li>Making changes </li></ul><ul><li>Regenerating the squashed filesystem (order out for pizza) </li></ul><ul><li>[email_address] </li></ul>
  6. 6. An Overview of Customizing the Ubuntu Live CD <ul><li>The Steps, cont'd </li></ul><ul><li>Making menu changes - isolinux - gfx (bootlogo creator for gfxboot compliant boot loaders) </li></ul><ul><li>Create the ISO image </li></ul><ul><li>Burn the ISO to a CD/DVD </li></ul><ul><li>Some Example Scripts... </li></ul><ul><li>[email_address] </li></ul>
  7. 7. An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts: </li></ul><ul><li>create block device dd if=/dev/zero of=./iso.ubuntu-fs bs=1MB count=3000 </li></ul><ul><li>mount squashed filesystem mount -t squashfs -o loop $FS $MNT </li></ul><ul><li>mount block device ISO=`pwd`/iso.ubuntu-fs.1 MNT=/mnt/pg_live mount -o loop $ISO $MNT cp /etc/resolv.conf $MNT/etc/ mount -t proc --bind /proc $MNT/proc chroot $MNT </li></ul><ul><li>[email_address] </li></ul>
  8. 8. An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts, cont'd: </li></ul><ul><li>regenerate squashed filesystem ISO=`pwd`/ISO/casper MNT=/mnt/pg_live chroot $MNT dpkg-query -W --showformat='${Package} ${Version} ' > $ISO/filesystem.manifest rm $MNT/etc/resolv.conf rm $ISO/filesystem.squashfs umount $MNT/proc cd $MNT dd if=/dev/zero of=$MNT/dummyfile rm $MNT/dummyfile mksquashfs . $ISO/filesystem.squashfs cd $ISO;cd ../../ </li></ul><ul><li>[email_address] </li></ul>
  9. 9. An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts cont'd: </li></ul><ul><li>generate ISO ISO=`pwd`/ISO cd $ISO find . -type f -print0 | xargs -0 md5sum | tee md5sum.txt cd .. mkisofs -o completed.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -r -V &quot;pg_live&quot; -cache-inodes -J -l ISO </li></ul><ul><li>[email_address] </li></ul>
  10. 10. An Overview of Customizing the Ubuntu Live CD <ul><li>Sample scripts cont'd: </li></ul><ul><li>Burn DVD growisofs -dvd-compat -Z /dev/dvd=completed.iso </li></ul><ul><li>[email_address] </li></ul>
  11. 11. An Overview of Customizing the Ubuntu Live CD <ul><li>Command line utilities: </li></ul><ul><li>cd </li></ul><ul><li>cp </li></ul><ul><li>chroot </li></ul><ul><li>dd </li></ul><ul><li>[email_address] </li></ul><ul><li>find </li></ul><ul><li>growisofs </li></ul><ul><li>mkisofs </li></ul><ul><li>mksquashfs </li></ul><ul><li>mount </li></ul><ul><li>umount </li></ul>
  12. 12. An Overview of Customizing the Ubuntu Live CD <ul><li>[email_address] </li></ul>
  13. 13. An Overview of Customizing the Ubuntu Live CD <ul><li>[email_address] </li></ul>
  14. 14. Creating pg_live, issues <ul><li>Selecting the distribution (Xubuntu) </li></ul><ul><li>Choosing the medium, CD, but testing on rewriteable DVD burner </li></ul><ul><li>Setting up the development environment </li></ul><ul><li>Removing and adding packages </li></ul><ul><li>Update the distribution? </li></ul><ul><li>Adding source compilation of postgresql </li></ul><ul><li>Testing the services: http, postgresql, SSH </li></ul><ul><li>Testing the live CD environments: R, java, tlc, python, perl, ruby, php </li></ul><ul><li>Adding and configuring the postgresql data cluster </li></ul><ul><li>Configuring the skel file (home accounts) </li></ul><ul><li>Changing the default language, edit the “lang” file in the isolinux directory </li></ul><ul><li>[email_address] </li></ul>
  15. 15. Lessons Learned / Tips <ul><li>[email_address] </li></ul>
  16. 16. Issues not covered <ul><li>isolinux </li></ul><ul><li>gfx </li></ul><ul><li>[email_address] </li></ul>
  17. 17. Reference URLS <ul><li>pglive: http://www.nycbug.org/index.php?NAV=Library;SUBM=10101 </li></ul><ul><li>http://www.ubuntu.com/getubuntu/download https://help.ubuntu.com/community/LiveCDCustomization </li></ul><ul><li>http://en.wikipedia.org/wiki/El_Torito_(CD-ROM_standard) http://en.wikipedia.org/wiki/Live_CD http://en.wikipedia.org/wiki/Isolinux </li></ul><ul><li>http://syslinux.zytor.com/ http://www.linux-boot.net/InitRD/Howto/ </li></ul><ul><li>http://uck.sourceforge.net/ (Ubuntu Customization Kit) </li></ul><ul><li>[email_address] </li></ul>
  18. 18. <ul><li>THE END </li></ul><ul><li>[email_address] </li></ul>

×