Postup pro přípravu vlastní instalace KNOPPIX vycházející z Knoppix Remastering Howto, avšak upravený pro instalaci na USB klíčenku, kde bude vše potřebné schováno v jednom adresáři KNOPPIX. (Standardní instalace skriptem /usr/bin/flash-knoppix vytváří adresáře /boot, /KNOPPIX a soubor /ldlinux.sys v hlavním adresáři USB klíčenky, což zbytečně zvyšuje riziko, že některý omylem smažete při běžném používání USB klíčenky bez spouštění 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, což má své výhody:
- 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 zavaděč operačního systému do libovolného adresáře (isolinux musí být buď v isolinux/ nebo boot/isolinux).
- Tutéž USB klíčenku lze používat i pro ukládání souborů – ať už přímo ze spuštěného KNOPPIXu či z jakéhokoliv jiného počítače.
- 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), přičemž KNOPPIX lze spustit buď na fyzickém počítači či ve virtuálním stroji (Qemu, KVM).
- POZOR: souborový systém klíčenky by měl být FAT16 či FAT32 (max. velikost souboru 4 GB).
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 /dev/sdc1 připojená v /media/sdc1) – pokud původní DVD ISO KNOPPIXu mělo 4 GB, budete potřebovat minimálně dvojnásobný prostor.
Připojte USB klíčenku (třeba pomocí souborového manažera) a vytvořte na ní složku KNOPPIX/syslinux:
$ su - # mkdir -p /media/sdc1/KNOPPIX/syslinux
Vygenerujte nový obraz ISO, který bude odrážet současný stav souborového systému připojený v /UNIONFS.
# genisoimage -R -l -D -V "KNOPPIX.net filesystem" -publisher "KNOPPIX www.knoppix.net" -no-bak -quiet -no-split-symlink-components -no-split-symlink-fields -hide-rr-moved -cache-inodes /UNIONFS | /usr/sbin/create_compressed_fs -B 65536 -t 8 -L 9 -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. Nejprve zkontrolujte, zda je připojeno zdrojové CD/DVD – dále uvedené příkazy předpokládají, že je připojeno do /mnt-system/:
# rsync -rv --exclude="*ldlinux.sys" --exclude="*boot.cat" /mnt-system/boot/[si][ys][so]linux/ /media/sdc1/KNOPPIX/syslinux # rsync -rv --exclude="KNOPPIX" --exclude="sha1sums" --exclude="knoppix-data.img" /mnt-system/KNOPPIX/ /media/sdc1/KNOPPIX
Máte-li KNOPPIX spuštěn z CD/DVD, je třeba přejmenovat konfigurační soubor na syslinux.cfg (používá se shodný konfigurační soubor jako pro isolinux na CD/DVD, jen se musí jinak jmenovat). (Pokud máte KNOPPIX spuštěn z jiné Live USB klíčenky, soubor se již jmenuje správně.)
# mv /media/sdc1/KNOPPIX/syslinux/isolinux.cfg /media/sdc1/KNOPPIX/syslinux/syslinux.cfg
Vytvořte kontrolní součty:
# cd /media/sdc1/KNOPPIX ; find -type f -not -name sha1sums -not -name boot.cat -exec sha1sum '{}' \; > sha1sums
Odpojte souborový systém USB klíčenky, nainstalujte zavaděč syslinux (kromě jiného 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):
# umount /dev/sdc1 # syslinux --install --directory KNOPPIX/syslinux /dev/sdc1 # ms-sys -s /dev/sdc # sfdisk -A1 /dev/sdc
A je to.
Ostatní poznámky
Několik poznámek k vydání KNOPPIX 7.0
- boot parametry: lang=cz keyboard=cz (protože výchozí parametry v /etc/init.d/knoppix-autoconfig COUNTRY=“cs/cz“ XKEYBOARD=“cs/cz“, a zdá se být i chybně nastaven vt1-7)
- minirt.gz se rozbalí a zabalí:
- gunzip minirt.gz && cd some_dir && cpio -imd –no-absolute-filenames < ../minirt
- find . | cpio -oH newc | gzip -9 > ../minirt.gz
- dekomprimovat KNOPPIX: extract_compressed_fs KNOPPIX KNOPPIX.iso
- Některé verze syslinuxu (6.0.2) nenajdou syslinux.cfg v nestandardní cestě (přestože při instalaci nevarují – asi bug). Alternativně lze použít extlinux (i pro FAT[16|32]).
- Místo FAT16/32 lze použít i exFAT:
- syslinux nepodporuje exFAT, Grub 2.x ano.
# grub-install --boot-directory=/media/sdc1/KNOPPIX /dev/sdc
Výpis KNOPPIX/grub/grub.cfg (diskový oddíl sdc1 je pojmenován „KNOPPIX“):
### BEGIN /etc/grub.d/00_header ### insmod part_msdos if [ -s $prefix/grubenv ]; then load_env fi set default="0" if [ x"${feature_menuentry_id}" = xy ]; then menuentry_id_option="--id" else menuentry_id_option="" fi export menuentry_id_option if [ "${prev_saved_entry}" ]; then set saved_entry="${prev_saved_entry}" save_env saved_entry set prev_saved_entry= save_env prev_saved_entry set boot_once=true fi function savedefault { if [ -z "${boot_once}" ]; then saved_entry="${chosen}" save_env saved_entry fi } function load_video { if [ x$feature_all_video_module = xy ]; then insmod all_video else insmod efi_gop insmod efi_uga insmod ieee1275_fb insmod vbe insmod vga insmod video_bochs insmod video_cirrus fi } font=unicode if loadfont $font ; then set gfxmode=auto load_video insmod gfxterm set locale_dir=$prefix/locale set lang=cs_CZ insmod gettext fi terminal_input console terminal_output gfxterm set timeout=5 ### END /etc/grub.d/00_header ### menuentry 'KNOPPIX 7.0.5' { load_video set gfxpayload=keep insmod gzio insmod part_msdos insmod exfat search --label --set=root KNOPPIX echo 'Loading Linux core repo kernel ...' linux /KNOPPIX/syslinux/linux root=/dev/disk/by-label/KNOPPIX ro quiet echo 'Loading initial ramdisk ...' initrd /KNOPPIX/syslinux/minirt.gz }
- do minirt.gz je třeba doplnit /bin/mount.exfat-fuse + knihovny + aktualizovat ld cache + upravit trymount() v /init.
- syslinux nepodporuje exFAT, Grub 2.x ano.
Struktura přípojných míst
- /mnt-system …. USB klíčenka či CD/DVD, ze kterého byl spuštěn KNOPPIX.
- /KNOPPIX … obraz ISO z klíčenky/CD/DVD 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 lze 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).
Vlastní úpravy DVD obrazu
- Odstranit vše s názvem balíčku obsahujícím „KDE“.
- Odstranit abiword.
- Aktualizovat: darktable, gimp, lm-sensors, x2go-client