Knoppix remastering
autor Milan Knížek - Pro.30, 2011 - Linux, Postupy
Postup pro přípravu vlastní instalace KNOPPIX vycházející z Knoppix Remastering Howto, avšak upravený pro instalaci na USB klíčenku. Výsledkem instalace bude KNOPPIX schovaný v jednom adresáři (USB disk vytvoření skriptem /usr/bin/flash-knoppix obsahuje dva adresáře boot, KNOPPIX a jeden soubor ldlinux.sys, což zbytečně zvyšuje riziko, že některý omylem smažete, pokud USB klíčenku používáte i na jiných počítačích bez spuštěného KNOPPIXu).
Komu nevyhovuje výchozí instalace KNOPPIXu, má několik možností, jak ji upravit:
- vytvořit vlastní obraz ISO (tzv. remastering);
- používat zvláštní image souborového systému pro změny oproti původní instalaci (tj. něco jako dodatečná vrstva nad původním souborovým systémem, který je pouze na čtení);
- použít automatizovanou aktualizaci při každém spuštění KNOPPIXu (KNOPPIX/knoppix.sh nebo KNOPPIX/update*zip (či update*tar.gz) – funguje na stejném principu jako předchozí krok.
Následující text se týká prvního bodu a je upraven specificky pro instalaci na USB disk, rozdíly oproti výše uvedenému „Howto“ jsou:
- USB klíčenka nemusí být omezena velikostí jako CD ROM či DVD.
- Pro spouštění se používá syslinux, který umožňuje umístit své soubory do libovolného adresáře, zatímco spouštění CD/DVD používá isolinux, který musí být buď v isolinux/ nebo boot/isolinux.
- Tutéž USB klíčenku lze používat i pro ukládání souborů, se kterými můžete pracovat z jiného počítače bez spuštěného KNOPPIXu (tj. přímo na tentýž FAT oddíl, na kterém je nainstalováno ISO KNOPPIXu).
- Remastering se provede přímo z běžícího KNOPPIXu bez nutnosti chrootu (tj. vytvoří se nové ISO odpovídající aktuálnímu stavu systému, vč. různých uživatelských úprav).
Upravte KNOPPIX k obrazu svému
Spusťte na počítači KNOPPIX, ať už z DVD či jiné USB klíčenky.
Aktualizujte databázi balíčků, doinstalujte či odinstalujte programy.
$ sudo apt-get update $ sudo apt-get install ... $ sudo apt-get purge ...
Nastavte šetřič obrazovky, změňte obrázek plochy, výchozí terminál a správce souborů a zkrátka všechno, co vám nevyhovuje.
V žádném případě neprovádějte kompletní aktualizaci systému, nejspíše by to vedlo k poškození KNOPPIXu a nemusel by se příště spustit – tedy instalujte pouze jednotlivé uživatelské programy. Taktéž neprovádějte úpravy některých systémových nastavení, např. /etc/resolv.conf, /etc/hostname, /etc/default/locale, /etc/environment – tyto soubory jsou nastaveny dle paramaterů při spouštění systému, což je flexibilnější.
Generování nového obrazu ISO
Než vytvoříte nový obraz ISO, promažte různé dočasné soubory (zbytečně by zabíraly místo) ve /var/cache a /var/log. Více detailů viz původní „Howto“.
Budete potřebovat dočasné úložiště pro soubor isotemp (velikost shodná s konečnou velikostí ISO) a pro nové ISO. Tím uložištěm může být USB klíčenka (zde připojená v /media/sdc1) – pokud původní DVD ISO KNOPPIXu mělo 4 GB, budete potřebovat minimálně dvojnásobný prostor.
Nyní vygenerujte nový obraz ISO, který bude odrážet současný stav souborového systému připojený v /UNIONFS.
$ su # genisoimage -R -U -V "KNOPPIX.net filesystem" -publisher "KNOPPIX www.knoppix.net" -no-bak -quiet /UNIONFS | /usr/sbin/create_compressed_fs -B 65536 -f /media/sdc1/isotemp - /media/sdc1/KNOPPIX/KNOPPIX
V závislosti na rychlosti počítače (komprese dat) a USB klíčenky (čtení/zápis) to může trvat hodně dlouho.
Live USB
Zbývá zkopírovat ostatní soubory, které jsou třeba pro spouštění počítače.
$ rsync -aH --exclude="*ldlinux.sys" --exclude="*boot.cat" /mnt-system/boot/* /media/sdc1/KNOPPIX $ rsync -aH --exclude="KNOPPIX" --exclude="knoppix-data.img" --exclude="sha1sums" /mnt-system/KNOPPIX/* /media/sdc1/KNOPPIX
Protože pro spouštění z USB je třeba syslinux, přejmenujte následující soubory (používá se shodný konfigurační soubor jako pro isolinux na CD/DVD, jen se musí jinak jmenovat):
$ mv /media/sdc1/KNOPPIX/isolinux /media/sdc1/KNOPPIX/syslinux $ mv /media/sdc1/KNOPPIX/syslinux/isolinux.cfg /media/sdc1/KNOPPIX/syslinux/syslinux.cfg
Odpojte USB klíčenku, nainstalujte zavaděč syslinux (kromě jiné přidá soubor KNOPPIX/syslinux/ldlinux.sys), nakopírujte master boot record kompatibilní s Microsoft a nakonec aktivujte první diskový oddíl systému (příznak boot):
$ sudo umount /dev/sdc1 $ sudo syslinux --install --stupid --directory KNOPPIX/syslinux /dev/sdc1 $ sudo ms-sys -s /dev/sdc $ sudo sfdisk -A1 /dev/sdc
A je to.
Ostatní poznámky
Několik poznámek k vydání KNOPPIX 6.7.2 – kvůli podpoře češtiny pro zápis souborů, v terminálu a v konsoli.
- upravit /etc/init.d/knoppix-autoconfigure (utf8, LC_ALL=cs_CZ.UTF-8, font console Lat2-Terminus16, nastavení locale do /etc/profile)
- dpkg-reconfigure locales a přidat cs_CZ.UTF-8
- upravit minirt.gz/init – mount option utf8 do funkce trymount() a knoppix_dir, pokud se liší od KNOPPIX.
Struktura přípojných míst
- /mnt-system …. USB klíčenka, ze které byl spuštěn počítač.
- /KNOPPIX … obraz ISO z klíčenky připojený do smyčky (loopback)
- /mnt-system/KNOPPIX/knoppix-data.img … soubor s obrazem disku pro ukládání změn vůči ISO obrazu – zde se lez podívat, jaké změny byly provedeny.
- /KNOPPIX-DATA … obraz disku knoppix-data.img připojený do smyčky (loopback)
- /UNIONFS … sloučení původního (read-only) obrazu ISO se změnami v knoppix-data.img (tj. není shodný s kořenovým adresářem – např. neobsahuje /proc, /sys, aktuální /dev atd.)
- /media/* … názvy diskových oddílů nalezených během startu počítače. Připojí se automaticky po kliknutí na příslušný disk v souborovém manažeru (thunar).