doku:knf2009-linux-live-uck
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
— | doku:knf2009-linux-live-uck [2009-11-22 13:25] (aktuell) – angelegt - Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ~~SLIDESHOW~~ | ||
+ | ====== Linux Live CDs selbst anpassen ====== | ||
+ | |||
+ | * | ||
+ | * Das Ubuntu Customization Kit - uck | ||
+ | * Klaus Franken, [[StrukturPunkt.de]] | ||
+ | * KNF Kongress 22.11.2009 | ||
+ | * | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | ===== Wie kam ich dazu? ===== | ||
+ | {{: | ||
+ | ===== Aufgabe ===== | ||
+ | * Linux Live CD | ||
+ | * Layout- und Sprachanpassung | ||
+ | * schon möglichst viel dabei, z.B. | ||
+ | * grafische Oberfläche | ||
+ | * volle Netzwerkumgebung | ||
+ | * Office-Programme | ||
+ | * zusätzliche Programme | ||
+ | * HFS+ Dateisystem | ||
+ | * Mac Hardware Unterstützung (auf allen Intel Macs) | ||
+ | |||
+ | ===== Ubuntu Live-CD Übersicht ===== | ||
+ | {{: | ||
+ | |||
+ | * http:// | ||
+ | * basiert auf Debian, nur mehr GUI | ||
+ | * benutzt [[http:// | ||
+ | * komprimiertes read-only-Dateisystem | ||
+ | * benutzt [[http:// | ||
+ | * verschiedener Dateisysteme werden zu einem einzigen logischen Dateisystem vereinigt | ||
+ | * => im Live-System kann alles überschrieben werden, z.B. Updates | ||
+ | * Live-System kann auch auf Festplatte und USB-Stick installiert werden | ||
+ | ===== uck Übersicht ===== | ||
+ | {{: | ||
+ | * uck: Ubuntu Customization Kit | ||
+ | * http:// | ||
+ | * macht aus einer Ubuntu-CD eine neue CD | ||
+ | * keine komplette Entwicklungsumgebung nötig | ||
+ | ===== uck Übersicht 2 ===== | ||
+ | {{: | ||
+ | |||
+ | ===== uck Voraussetzungen ===== | ||
+ | {{: | ||
+ | * Ubuntu-System (getestet mit 9.04) | ||
+ | * Ubuntu Live-CD iso-Image | ||
+ | * 5GB freien Plattenplatz | ||
+ | * schnellen Internetzugang | ||
+ | * RAM und Zeit | ||
+ | |||
+ | ===== uck Installation ===== | ||
+ | {{: | ||
+ | * / | ||
+ | * deb http:// | ||
+ | * deb-src http:// | ||
+ | * apt-get update | ||
+ | * apt-get install uck | ||
+ | ===== uck Vorbereitung ===== | ||
+ | {{: | ||
+ | * Benutzer für uck (!= root): | ||
+ | * nicht auf Live-Platte, | ||
+ | * 5GB Platz | ||
+ | * Benutzer für Vorlage | ||
+ | * wird später nach /etc/skel kopiert | ||
+ | * Anpassung z.B. Firefox-Homepage etc. | ||
+ | |||
+ | ===== uck Start ===== | ||
+ | {{: | ||
+ | * Grafisch: Anwendungen / Systemwerkzeuge / Ubuntu Customization Kit | ||
+ | * Terminal: | ||
+ | ===== uck Wizard ===== | ||
+ | * language packs: de, ... | ||
+ | * language which will be used at boot of live CD: de | ||
+ | * schon dafür lohnt sich der ganze Aufwand ;-) | ||
+ | * desktop environments: | ||
+ | * choose an ISO Image to be used as the basis: meine-vorlage.iso | ||
+ | * enter the name for the CD: '' | ||
+ | * Do you want to customize during building? yes | ||
+ | * Do you want to delete all windows-related files from the CD: yes/no | ||
+ | |||
+ | Fasten seatbelts... (nach Passwortabfrage). | ||
+ | ===== uck Ordnerstruktur ===== | ||
+ | |||
+ | * /home/ | ||
+ | * // | ||
+ | * tmp/ | ||
+ | * customizations-scripts/ | ||
+ | * //Scripts für CD-Anpassung// | ||
+ | * //wird automatisch angelegt und überschrieben :!:// | ||
+ | * iso-mount/ | ||
+ | * // Mount-Point für Original-CD // | ||
+ | * squashfs-mount/ | ||
+ | * // Mount-Point für Squash-FS // | ||
+ | * remaster-iso/ | ||
+ | * // neues CD Abbild // | ||
+ | * remaster-root/ | ||
+ | * neues Root-Filesystem | ||
+ | * unser Ort für weitere Anpassungen | ||
+ | * remaster-new-files/ | ||
+ | * //wird bei jedem Lauf gelöscht :!: // | ||
+ | * livecd.iso | ||
+ | * // unser Ziel :-) // | ||
+ | * build.log | ||
+ | * /tmp/ | ||
+ | * .X11-unix | ||
+ | * //zwischen mehreren Läufen manuell löschen // | ||
+ | |||
+ | ===== uck " | ||
+ | |||
+ | uck durchläuft Phase 1 und wartet auf manuelle Anpassungen. | ||
+ | |||
+ | Beispiel: < | ||
+ | #!/bin/sh | ||
+ | # (c) 2009 Klaus.Franken@StrukturPunkt.de | ||
+ | # Customize Ubuntu-Root unter `pwd`/ | ||
+ | # Quelldaten von: | ||
+ | # `pwd`/uck/ | ||
+ | # / | ||
+ | |||
+ | UCKDIR=`pwd`/ | ||
+ | ZIEL=`pwd`/ | ||
+ | QUELLE=`pwd`/ | ||
+ | LIVE=vorlage | ||
+ | |||
+ | cp -a / | ||
+ | rm -f $ZIEL/ | ||
+ | rm -rf $ZIEL/ | ||
+ | rm -rf $ZIEL/ | ||
+ | rm -rf $ZIEL/ | ||
+ | rm -rf $ZIEL/ | ||
+ | |||
+ | ... | ||
+ | </ | ||
+ | |||
+ | ===== uck " | ||
+ | |||
+ | Fortsetzung: | ||
+ | < | ||
+ | ... | ||
+ | ## Live-Root erweitern | ||
+ | cp -a $QUELLE/ | ||
+ | |||
+ | ## iso-Image erweitern | ||
+ | echo -n "KNF Live CD, Version " > $ZIEL/ | ||
+ | date +" | ||
+ | ... | ||
+ | ## updates | ||
+ | chroot $ZIEL apt-get update || exit 2 | ||
+ | chroot $ZIEL apt-get -y --purge remove ' | ||
+ | chroot $ZIEL apt-get -y --purge remove ' | ||
+ | chroot $ZIEL apt-get -y install ' | ||
+ | chroot $ZIEL apt-get install udev || exit 2 | ||
+ | chroot $ZIEL apt-get install acpid || exit 2 | ||
+ | chroot $ZIEL apt-get install hal || exit 2 | ||
+ | chroot $ZIEL apt-get install checkbox checkbox-gtk || exit 2 | ||
+ | chroot $ZIEL apt-get -y upgrade || exit 2 | ||
+ | |||
+ | ... | ||
+ | </ | ||
+ | ===== uck " | ||
+ | |||
+ | Fortsetzung: | ||
+ | < | ||
+ | ... | ||
+ | # Kernel Update und alte löschen | ||
+ | chroot $ZIEL apt-get -y dist-upgrade || exit 2 | ||
+ | |||
+ | # von http:// | ||
+ | echo " | ||
+ | awk \ | ||
+ | '/ | ||
+ | | grep -v $(uname -r|sed ' | ||
+ | [ \" | ||
+ | > $ZIEL/ | ||
+ | chroot $ZIEL sh -x / | ||
+ | rm $ZIEL/ | ||
+ | |||
+ | chroot $ZIEL apt-get -y autoremove || exit 2 | ||
+ | |||
+ | exit 0 | ||
+ | </ | ||
+ | ===== exit 0 ===== | ||
+ | {{: | ||
+ | |||
+ | ===== Tipps & Tricks ===== | ||
+ | ==== Sprachanpassung ISO-Image Boot (Grub) ==== | ||
+ | < | ||
+ | echo "cat \$ISO_REMASTER_DIR/ | ||
+ | perl -ne '\$_ =~ s/ | ||
+ | perl -ne '\$_ =~ s/Weitere Optionen/ | ||
+ | perl -ne '\$_ =~ s/ | ||
+ | perl -ne '\$_ =~ s/Ubuntu \^ausprobieren \(Rechner bleibt unverändert\)/ | ||
+ | echo "mv \$ISO_REMASTER_DIR/ | ||
+ | </ | ||
+ | |||
+ | ==== Timezone ==== | ||
+ | ''/ | ||
+ | # Zeitzone | ||
+ | mv / | ||
+ | ln -s / | ||
+ | </ | ||
doku/knf2009-linux-live-uck.txt · Zuletzt geändert: 2009-11-22 13:25 von 127.0.0.1