Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Následující verze | Předchozí verze | ||
vytvoření_vlastního_livecd [2012/07/28 14:09] – vytvořeno ubuntu | vytvoření_vlastního_livecd [2019/02/25 17:21] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | ====== Vytvoření vlastního LiveCD ====== | ||
+ | {{page> | ||
+ | |||
+ | V následujícím návodu si krok za krokem ukážeme, jak postupovat při úpravách běžného Ubuntu desktop CD. Budeme vycházet z verze 7.10 Gutsy Gibbon, ale mělo by to fungovat i na jiné. Takto můžeme například: | ||
+ | * přidat programy, které chceme mít na CD po ruce | ||
+ | * upravit nastavení (defaultní jazyk na češtinu) | ||
+ | * vyhodit programy, které nám jen zabírají místo (to můžou být cizokrajné fonty, tiskový systém apod.) | ||
+ | |||
+ | Postup je: rozbalit, upravit, sbalit, vypálit. Není to tak složité, jako se může zdát. | ||
+ | |||
+ | V následujícím textu budeme psát o CD, totéž ale platí pro DVD či podobná média. | ||
+ | |||
+ | ====== Co potřebujeme ====== | ||
+ | * Počítač s Linuxem, pokud možno Ubuntu (verze 7.10 nebo novější; architektury takové, aby na ní šlo cílový systém spustit). | ||
+ | * Alespoň 3 GB místa na disku, podle potřeby víc. | ||
+ | * Mít [[Pokročilá správa softwaru|nainstalované balíky]] [[apt:// | ||
+ | * Administrátorská oprávnění k používání sudo. | ||
+ | |||
+ | |||
+ | Funkčnost CD je vhodné zkoušet ve [[Virtualizace|virtuálním počítači]] bez nutnosti vypalování a restartování. | ||
+ | |||
+ | ====== Rozbalení CD ====== | ||
+ | |||
+ | {{.: | ||
+ | |||
+ | * Dále budeme předpokládat, | ||
+ | |||
+ | * Velká část dat na CD je uložena v komprimovaném souborovém systému squashfs. Díky tomu se na CD vejde přes 1500 MB dat! Pokud chceme upravit programy nebo systémové nastavení, je třeba rozbalit jak obraz CD, tak squashfs. Vytvoříme si adresáře: | ||
+ | < | ||
+ | mkdir cd-mnt | ||
+ | mkdir cd-data | ||
+ | mkdir sq-mnt | ||
+ | mkdir sq-data | ||
+ | </ | ||
+ | |||
+ | * Obraz CD přimountujeme do adresáře '' | ||
+ | < | ||
+ | sudo mount ubuntu-7.04-desktop-i386.iso cd-mnt/ -o loop -t iso9660 | ||
+ | </ | ||
+ | |||
+ | * a protože do CD obrazu nejde zapisovat, tak vykopírujeme skoro všechna data do adresáře '' | ||
+ | < | ||
+ | rsync --exclude=/ | ||
+ | </ | ||
+ | |||
+ | * Obdobnou operaci teď provdeme se squashfs. Přimountujeme jej do adresáře '' | ||
+ | < | ||
+ | sudo mount cd-mnt/ | ||
+ | </ | ||
+ | |||
+ | * a protože ani do squashfs nejde zapisovat, tak jej " | ||
+ | < | ||
+ | sudo cp -a sq-mnt/* sq-data/ | ||
+ | </ | ||
+ | {{.: | ||
+ | |||
+ | * Squashfs i CD už nepotřebujeme mít přimountované, | ||
+ | < | ||
+ | sudo umount sq-mnt/; rmdir sq-mnt | ||
+ | sudo umount cd-mnt/; rmdir cd-mnt | ||
+ | </ | ||
+ | |||
+ | Nyní můžeme v adresáři '' | ||
+ | |||
+ | ====== Tipy na možné úpravy ====== | ||
+ | |||
+ | ===== Počeštění ===== | ||
+ | |||
+ | {{.: | ||
+ | |||
+ | < | ||
+ | sudo echo " | ||
+ | </ | ||
+ | Aby byl na CD zahrnut plný český překlad, instalujeme metabalík [[http:// | ||
+ | |||
+ | ===== Přidání/ | ||
+ | |||
+ | {{.: | ||
+ | |||
+ | * Abychom mohli pracovat s internetem, nejprve překopírujeme některé soubory z "// | ||
+ | < | ||
+ | sudo cp / | ||
+ | sudo cp /etc/hosts sq-data/ | ||
+ | </ | ||
+ | |||
+ | * Zachrootujeme se do adresáře sq-data, připojíme systémové oddíly a nastavíme důležité proměnné: | ||
+ | < | ||
+ | sudo chroot sq-data | ||
+ | mount -t proc none /proc | ||
+ | mount -t sysfs none /sys | ||
+ | export HOME=/root | ||
+ | export LC_ALL=C | ||
+ | </ | ||
+ | |||
+ | * Můžou se hodit i repozitáře restricted, universe a multiverse. Stačí odkomentovat v souboru / | ||
+ | |||
+ | *V novějších verzích Ubuntu je nutné aptitude doinstalovat, | ||
+ | < | ||
+ | apt-get install aptitude | ||
+ | </ | ||
+ | |||
+ | |||
+ | Nezapomeneme na aktualizaci informací o balíčcích ze stávajících i přidaných [[Přidávání zdrojů|Zdrojů]] | ||
+ | < | ||
+ | aptitude update | ||
+ | </ | ||
+ | |||
+ | |||
+ | :!: Jen pozor pokud budeme vypalovat na CD, abychom se na něj vešli (je zaplněno skoro těsně). | ||
+ | |||
+ | |||
+ | |||
+ | {{.: | ||
+ | < | ||
+ | apt-get clean | ||
+ | rm -rf /tmp/* | ||
+ | rm / | ||
+ | umount /proc | ||
+ | umount /sys | ||
+ | exit | ||
+ | </ | ||
+ | ===== Další nápady ===== | ||
+ | |||
+ | V chrootu jde dále provádět kouzla jako: | ||
+ | * Kompilace vlastního jádra nebo initrd. | ||
+ | |||
+ | * Nainstalujte pomocí apt-get správný kernel. | ||
+ | * Zkoupírujte z vašeho chroot systému ''/ | ||
+ | * Vytvořte '' | ||
+ | < | ||
+ | sudo chroot sq-data | ||
+ | mkinitramfs -o /initrd.gz 2.6.15-26-k7(vaše označení jádra) | ||
+ | </ | ||
+ | |||
+ | |||
+ | * Nahrazení tapet na ploše, obrázky se nachází v adresáři ''/ | ||
+ | * Všelijaká nastavení chování Gnome pomocí programu %%gconftool%%. | ||
+ | * Odinstalovat exotické fonty, které patrně nikdy nevyužijeme: | ||
+ | < | ||
+ | apt-get remove ttf-baekmuk ttf-bengali-fonts ttf-devanagari-fonts ttf-gujarati-fonts ttf-indic-fonts ttf-kannada-fonts ttf-kochi-gothic ttf-kochi-mincho ttf-lao ttf-oriya-fonts ttf-punjabi-fonts ttf-malayalam-fonts ttf-tamil-fonts ttf-telugu-fonts | ||
+ | </ | ||
+ | |||
+ | * Odinstalovat cizí jazyky (angličtinu ale zachováme): | ||
+ | < | ||
+ | aptitude --purge remove language-pack-de language-pack-gnome-de language-pack-gnome-de-base --assume-yes | ||
+ | aptitude --purge remove language-pack-xh language-pack-gnome-xh language-pack-gnome-xh-base --assume-yes | ||
+ | aptitude --purge remove language-pack-pt language-pack-gnome-pt language-pack-gnome-pt-base --assume-yes | ||
+ | aptitude --purge remove language-pack-es language-pack-gnome-es language-pack-gnome-es-base --assume-yes | ||
+ | aptitude --purge remove language-pack-fr language-pack-gnome-fr language-pack-gnome-fr-base --assume-yes | ||
+ | </ | ||
+ | |||
+ | * Odinstalovat balíček gnome-games (ušetří asi 40MB): | ||
+ | < | ||
+ | aptitude --purge remove gnome-games gnome-games-data | ||
+ | </ | ||
+ | |||
+ | * Instalovat plnou podporu pro češtinu. To zahrnuje balíčky, z nichž si vyberme ty, co potřebujeme (nemá smysl třeba instalovat českou nápovědu pro Gimp, když ji nepoužíváme). | ||
+ | |||
+ | < | ||
+ | apt-get install language-pack-cs language-pack-cs-base mozilla-firefox-locale-cs-cz myspell-cs-cz aspell-cs openoffice.org-help-cs openoffice.org-l10n-cs openoffice.org-thesaurus-cs thunderbird-locale-cs gimp-help-cs | ||
+ | </ | ||
+ | |||
+ | V případě, že instalujeme všechny, stačí instalovat metabalíček: | ||
+ | |||
+ | |||
+ | < | ||
+ | apt-get install language-support-cs | ||
+ | </ | ||
+ | * Instalovat podporu pro flash a jiné licenčně omezené formáty multimédií. | ||
+ | < | ||
+ | apt-get install gstreamer0.10-pitfdll gstreamer0.10-ffmpeg gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse gxine ogle ogle-gui lame lame-extras | ||
+ | apt-get install flashplugin-nonfree | ||
+ | </ | ||
+ | |||
+ | |||
+ | Java od SUNů není svobodně licencována a je nutno odsouhlasit licenční smlouvu: | ||
+ | < | ||
+ | apt-get install sun-java6-jre sun-java6-plugin | ||
+ | </ | ||
+ | |||
+ | * Můžeme také provést update stávajících balíčků: | ||
+ | < | ||
+ | aptitude update | ||
+ | aptitude safe-upgrade | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | ===== Start Gnome v chrootu ===== | ||
+ | |||
+ | {{.: | ||
+ | |||
+ | * Zachrootujte se - Postupně proveďte tyto příkazy: | ||
+ | < | ||
+ | chroot / | ||
+ | mount -t proc none /proc | ||
+ | mount -t sysfs none /sys | ||
+ | export HOME=/root | ||
+ | export LC_ALL=C | ||
+ | / | ||
+ | </ | ||
+ | |||
+ | * Spusťte si X na :1: | ||
+ | < | ||
+ | X :1 -ac | ||
+ | </ | ||
+ | |||
+ | * V chrootu pusťte Gnome nebo vaše prostředí v livku: | ||
+ | < | ||
+ | DISPLAY=localhost: | ||
+ | </ | ||
+ | |||
+ | * Přepněte se na tty8, kde máte váš X server zkratkou Ctrl+Alt+F8. | ||
+ | |||
+ | * Pokud se vám nelíbí mít X na samostatné tty, dá se použít i Xephyr. | ||
+ | |||
+ | ====== Sestavení ISO ====== | ||
+ | {{.: | ||
+ | |||
+ | * Připravíme soubory pro squashfs a instalátor na CD: | ||
+ | < | ||
+ | sudo chmod +w cd-data/ | ||
+ | sudo chroot sq-data dpkg-query -W --showformat=' | ||
+ | sudo cp cd-data/ | ||
+ | sudo sed -ie '/ | ||
+ | </ | ||
+ | |||
+ | * Odstraníme starý a zabalíme nový squashfs soubor (v nových verzích Ubuntu je potřeba doinstalovat // | ||
+ | < | ||
+ | sudo rm -f cd-data/ | ||
+ | sudo mksquashfs sq-data/ cd-data/ | ||
+ | </ | ||
+ | |||
+ | * (Teď můžeme upravit jmenovku CD:) | ||
+ | < | ||
+ | sudo gedit cd-data/ | ||
+ | </ | ||
+ | |||
+ | * Vytvoříme kontrolní součet md5 všech souborů na CD: | ||
+ | |||
+ | //(s vyjímkou těch které se budou ještě měnit) // | ||
+ | < | ||
+ | cd cd-data | ||
+ | sudo bash -c "find . \( -path ' | ||
+ | cd .. | ||
+ | </ | ||
+ | |||
+ | * Nakonec zabalíme ISO. To trvá jenom sto let. | ||
+ | < | ||
+ | cd cd-data | ||
+ | sudo mkisofs -r -V " | ||
+ | </ | ||
+ | |||
+ | {{.: | ||
+ | < | ||
+ | sudo rm -rf cd-data | ||
+ | sudo rm -rf sq-data | ||
+ | </ | ||
+ | A je to! | ||
+ | |||
+ | ====== Zkouška CD v emulátoru ====== | ||
+ | |||
+ | Použij qemu, Luku! | ||
+ | |||
+ | < | ||
+ | qemu -cdrom ubuntu-7.04-desktop-i386-custom.iso -m 300 | ||
+ | </ | ||
+ | (Volba '' | ||
+ | |||
+ | ====== Vypálení CD ====== | ||
+ | |||
+ | ISO soubor lze vypálit běžnými nástroji (jako k3b) nebo v příkazovém řádku: | ||
+ | |||
+ | < | ||
+ | cdrecord dev=/ | ||
+ | </ | ||
+ | ====== Odkazy ====== | ||
+ | |||
+ | * Viz také [[Vytvoření DVD s repozitáři]] | ||
+ | * Inspirováno anglickým návodem [[https:// | ||
+ | * " | ||
+ | * Vytvoření systému z již existujícího, |