LPS:AutomatizovanyInstalatorKoncovychStanicOrion/Výroba vlastního LiveCD
Tento návod popisuje, jak si vytvořit vlastní LiveCD z linuxové distribuce. Při tomto projektu jsem narazil hned na několik slepých cest, například vytvořit vše od počátku až po konec, aniž bych použil funkci chroot. Tento návod je snad nejtriviálnější, na který sem přišel, ale vytvoření vlastního LiveCD není triviální věc. Bylo to velice těžké vytvořit, když nemáte k dispozici žádný návod. Proto se s vámi podělím o své zkušenosti a poznatky, abyste neudělali ty samé chyby.
Záloha
Provedeme nejdříve zálohu důležitých souborů, které mohou být během tvorby poškozeny nebo vymazány. Proto buďte obeztřetní a nevynechávejte žádný z příkazů.
mkdir zaloha cd zaloha cp /etc/hostname . cp /var/lib/dbus/machine-id . cp /etc/resolv.conf .
Příprava
Je potřeba napřed aktualizovat systém a nainstalovat následující balíky
apt-get update apt-get upgrade apt-get install debootstrap syslinux squashfs-tools genisoimage memtest86 memtest86+
Debootstrap
Debootstrap vytvoří základní systém do složky isofiles.
debootstrap --arch=i386 wheezy isofiles http://ftp.zcu.cz/pub/linux/debian/
Místo isofiles můžete dát libovolnou složku, do které budete pracovat a zdroj obrazu si můžete vzbrat libovolný. Pokud tam obraz nebude udělá to debootstrap aktuálního systému. Lze pouštět pouze pod root účtem.
Chroot
Chroot(change root) vám zmení root do složky a súpustí nový shell. Dávejte pozor při provádění následujících příkazů, abyste byly pořád v chroot. Změníme root
mount --bind /dev isofiles/dev chroot isofiles
Připojíme zařízení,která budeme potřebovat.
mount none -t proc /proc mount none -t sysfs /sys mount none -t devpts /dev/pts export HOME=/root export LC_ALL=C apt-get update apt-get install dialog dbus --yes dbus-uuidgen > /var/lib/dbus/machine-id
Nyní zadejte jméno našeho počítače v liveCD
echo "live" > /etc/hostname
Nastavte heslo pro root
passwd root
Nyní si nainstalujeme balíky, které chcete v daném liveCD, tyto balíky sou důležité pro fungování, kromě fluxbox to je grafické jádro.
apt-get install --yes linux-image-3.2.0-4-686-pae live-boot fluxbox network-manager net-tools wireless-tools wpagui tcpdump wget openssh-client pciutils usbutils gparted ntfsprogs hfsprogs rsync dosfstools syslinux partclone nano pv chntpw vim xinit xterm
Teď odpojíme zařízení, která už nepotřebujeme, dávejte pozor, abyste byli v chroot.
rm -f /var/lib/dbus/machine-id apt-get clean rm -rf /tmp/* rm /etc/resolv.conf umount -lf /proc umount -lf /sys umount -lf /dev/pts
Vyskočíme z chroot a odpojíme zařízení.
exit umount -lf isofiles/dev
Konfigurace a kopírování potřebných souborů systému
Nejdříve vytvoříme složky potřebné pro bootování.
mkdir -p livecd/live mkdir -p livecd/isolinux
Vytvoříme system SquashFS, parametr -e vynechá složku boot
mksquashfs isofiles filesystem.squashfs -e boot
Následně ho přesuneme do složky live
mv filesystem.squashfs livecd/live/
Přesuneme Kernel a InirRamDisk, pozor název po přejmenování volte bez "-", "_" jinak vam to boot nevezme.
mv isofiles/boot/vmlinuz-3.2.0-4-686-pae livecd/live/vmlinuz mv isofiles/boot/initrd.img-3.2.0-4-686-pae livecd/live/initrd.img
Vytvoříme jednoduché menu pro boot a uložíme jako isolinux.cfg do složky isolinux
cat > livecd/isolinux/isolinux.cfg <<EOF UI menu.c32 prompt 0 menu title Debian Wheezy timeout 30 label Debian Live menu label ^Debian Live menu default kernel /live/vmlinuz initrd /live/initrd.img boot=live label memtest86+ menu label ^Memory Test(memtest86+) kernel /live/memtest EOF
Poslední úpravou je nakopírování důležitých souborů
cp /usr/lib/syslinux/isolinux.bin livecd/isolinux cp /usr/lib/syslinux/menu.c32 livecd/isolinux cp /boot/memtest86+.bin livecd/live/memtest
Výroba bootovatelného ISO souboru
Nejjednodušší, avšak nedílnou součástí je vytvoření bootovatelného ISO souboru.
genisoimage -rational-rock -volid "Debian Live" -cache-inodes -joliet -full-iso9660-filenames -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -iso-level 4 -output liveCD.iso livecd
liveCD.iso je název výstupního souboru
isofiles je složka ze které se iso vytvoří
"Debian Live" je název CD
Scripty pro vytvoření liveCD, spouští se scriptem start, pri přidání balíků přidejte apt-get install --yes pod již instalované balíky.
Soubor:Scripty.tar.gz