vytvoření_dvd_s_repozitáři

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

vytvoření_dvd_s_repozitáři [2012/07/28 16:19] – vytvořeno ubuntuvytvoření_dvd_s_repozitáři [2019/02/25 18:20] (aktuální) – upraveno mimo DokuWiki 127.0.0.1
Řádek 1: Řádek 1:
 +====== Vytvoření DVD s repozitáři ======
  
 +{{page>konvence/pokročilý}}
 +
 +Návod pro pokročilejší uživatele, jak vytvořit vlastní malý repozitář na externím médiu. Lze použít CD, DVD, externí disk. (Disketa se nedoporučuje, lze ji ale s jistým sebezapřením použít také.) Budeme pracovat s aktuální verzí Ubuntu 7.10 Gutsy Gibbon.
 +
 +Hodí se zejména, když vytváříme vlastní Live DVD s Ubuntu. Chceme uživateli bez internetového připojení umožnit instalaci dalších programů (a to i s rozsáhlými závislostmi, které nemůže dohledávat a stahovat ručně). Zároveň ale s použitím tohoto postupu máme plnou kontrolu nad tím, co na DVD bude - nemusíme stahovat repozitáře s desítkami GB software, které stejně nevyužijeme.
 +
 +Tento návod se opírá o návod [[Vytvoření vlastního LiveCD]]. Prosím, pročtěte jej a důkladně vyzkoušejte nejdříve.
 +
 +Na CD budeme nejen přidávat balíčky do ISO obrazu, ale upravíme i živý systém na komprimovaném oddíle squashfs.
 +
 +====== Příprava ======
 +
 +Stáhneme nebo jinak opatříme ISO obraz:
 +
 +<code>
 +wget http://releases.ubuntu.cz/gutsy/ubuntu-7.10-desktop-i386.iso ./
 +</code>
 +Rozbalíme CD, chvíli to trvá a zabere cca 2 GB:
 +
 +<code>
 +sudo su
 +mkdir cd-mnt
 +mkdir cd-data
 +mkdir sq-mnt
 +mkdir sq-data
 +mount ubuntu-7.10-desktop-i386.iso cd-mnt/ -o loop -t iso9660
 +rsync --exclude=/casper/filesystem.squashfs -a cd-mnt/ cd-data
 +mount cd-mnt/casper/filesystem.squashfs sq-mnt -o loop -t squashfs
 +cp -a sq-mnt/* sq-data/
 +umount sq-mnt/; rmdir sq-mnt
 +umount cd-mnt/; rmdir cd-mnt
 +exit
 +</code>
 +
 +====== Drobné úpravy ======
 +
 +Nastavíme defaultní jazyk na češtinu:
 +
 +<code>
 +echo "cs" > lang && sudo mv lang cd-data/isolinux/
 +</code>
 +Volitelné: přidáme na DVD české offline-wiki (předpokládáme, že je rozbaleno v ~filip/ubuntu-wiki/) a zařídíme, aby měl odkaz každý uživatel liveCD. Do souboru Ubuntu_Navody.html vložíme odkaz na %%/usr/share/doc/ubuntu-wiki/index.html%% a cokoli, co nás napadne.
 +
 +<code>
 +sudo su
 +mkdir sq-data/doc/
 +cp -r ~filip/ubuntu-wiki sq-data/doc/
 +cd sq-data/etc/skel/
 +vim Ubuntu_Navody.html
 +cd ../../
 +chmod -R +w doc/
 +chmod -R +r doc/
 +chmod +x doc/ubuntu-wiki/attachments/ doc/ubuntu-wiki/attachments/* doc/ubuntu-wiki/ubuntu/css/ doc/ubuntu-wiki/ubuntu/
 +exit
 +</code>
 +====== Vstup do chrootového prostředí ======
 +
 +<code>
 +sudo cp /etc/resolv.conf sq-data/etc/
 +sudo cp /etc/hosts sq-data/etc/
 +sudo chroot sq-data
 +mount -t proc none /proc
 +mount -t sysfs none /sys
 +export HOME=/root
 +export LC_ALL=C
 +</code>
 +Nyní je naším kořenovým adresářem adresář sq-data. Můžeme pracovat s balíčkovacím systémem na CD a upravovat skladbu programů.
 +
 +Nejdříve na DVD povolíme repozitáře universe a multiverse, abychom měli přístup ke všem možným balíčkům. (Tj. odstraníme # na začátku řádků končících na "universe" a na jejich konec připíšeme "multiverse").
 +
 +<code>
 +sudo vim /etc/apt/sources.list
 +</code>
 +
 +Na tvar:
 +
 +<code>
 +deb http://archive.ubuntu.cz/ubuntu gutsy main restricted
 +deb-src http://archive.ubuntu.cz/ubuntu gutsy main restricted
 +#Uncomment the following (...)
 +deb http://archive.ubuntu.cz/ubuntu gutsy universe multiverse
 +deb-src http://archive.ubuntu.cz/ubuntu gutsy universe multiverse
 +</code>
 +
 +
 +
 +
 +Případně přidáme repozitáře a vzpomeneme si na ně při instalaci/stahování balíčků:
 +<code>
 + # Canonical - partner repositories
 + deb http://archive.canonical.com/ubuntu gutsy partner
 + deb-src http://archive.canonical.com/ubuntu gutsy partner
 + # Wine
 + deb http://wine.budgetdedicated.com/apt gutsy main #WineHQ - Ubuntu 7.10
 + deb-src http://wine.budgetdedicated.com/apt gutsy  main #WineHQ - Ubuntu 7.10
 +
 +
 + # Cinelerra
 + deb http://www.kiberpipa.org/~gandalf/ubuntu/feisty/cinelerra/i686/ ./
 +
 +</code>
 +
 +
 +A tyto repozitáře autentizujeme, např.
 +%%wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -%%
 +
 +
 +Instalujeme nezbytné nástroje (jsou v repozitáři universe). Dobudoucna totiž budeme potřebovat program %%dpkg-scanpackages%%.
 +<code>
 +apt-get update
 +apt-get install dpkg-multicd
 +</code>
 +====== Pročištění DVD ======
 +
 +Na DVD je spousta věcí, které pravděpodobně nevyužijeme.
 +
 +<code>
 +apt-get remove ttf-arabeyes ttf-arphic-uming ttf-indic-fonts-core ttf-kochi-gothic ttf-kochi-mincho ttf-lao ttf-malayalam-fonts ttf-thai-tlwg ttf-unfonts-core example-content --assume-yes
 +apt-get remove language-pack-xh language-pack-gnome-xh language-pack-gnome-xh-base --assume-yes
 +apt-get remove language-pack-bn language-pack-gnome-bn language-pack-gnome-bn-base --assume-yes
 +apt-get remove language-pack-ar language-pack-gnome-ar language-pack-gnome-ar-base --assume-yes
 +apt-get remove language-pack-hi language-pack-gnome-hi language-pack-gnome-hi-base --assume-yes
 +apt-get remove language-pack-pt language-pack-gnome-pt language-pack-gnome-pt-base --assume-yes
 +</code>
 +
 +Zbydou jazyky: angličtina, němčina, španělština, francouzština. Pokud chceme odebrat i NJ, ŠJ a FJ:
 +<code>
 +apt-get remove language-pack-de language-pack-gnome-de language-pack-gnome-de-base --assume-yes
 +apt-get remove language-pack-es language-pack-gnome-es language-pack-gnome-es-base --assume-yes
 +apt-get remove language-pack-fr language-pack-gnome-fr language-pack-gnome-fr-base --assume-yes
 +</code>
 +====== Instalace programů, které budou z DVD spustitelné ======
 +
 +Upgradujeme všechny balíčky na nejnovější verzi, která je dostupná.
 +
 +<code>
 +apt-get dist-upgrade
 +</code>
 +
 +Instalujeme plné počeštění, případně plné poslovenštění:
 +
 +<code>
 +aptitude install language-pack-cs language-pack-gnome-cs language-pack-kde-cs language-pack-sk language-pack-gnome-sk language-pack-kde-sk
 +</code>
 +Volitelně instalujeme, co se hodí mít na liveDVD i v instalovaném systému po ruce:
 +
 +<code>
 +apt-get install inkscape vim-gtk mplayer brasero numlockx sl gconf-editor brasero tilda
 +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
 +apt-get install sun-java6-jre sun-java6-plugin
 +</code>
 +Otestujeme funkčnost programu sl:
 +
 +<code>
 +sl
 +</code>
 +
 +
 +====== Přidání ostatních programů do repozitáře ======
 +
 +
 +Je na našem rozhodnutí, i co budeme chtít v repozitářích na DVD. U všech následujících příkazů sice použijeme apt-get, ale s volbou --download-only.
 +
 +
 +Instalátor aptitude vždy nejdříve patřičné balíčky stáhne do cache v adresáři /var/cache/apt/archives/ a až pak je instaluje. Parametrem --download-only jej donutíme stáhnout požadované programy i včetně jejich závislostí. Následující programy nechť slouží jako inspirace, čím se může hodit doplnit CD.
 +
 +Po přidání jiných repozitářů nebo ručním stažení je možno přidat instační balíčky dalších programů, jako je openwengo, moonlight, cinelerra, nvu, deluge, tuxanci, regnum online, coccinella, battle for wesnoth...
 +
 +  * Plně vybavená desktopová prostředí ubuntích odvozenin:
 +<code>
 + sudo apt-get install --download-only ubuntu-desktop kubuntu-desktop xubuntu-desktop language-pack-kde-cs language-pack-kde-cs-base language-pack-kde-sk language-pack-kde-sk-base
 +</code>
 +
 +===== Přidání balíčků, které nejsou v Ubuntu repozitáři (neověřený postup) =====
 +
 +Ufo - Alien invasion zde:
 +<code>
 +cd /var/cache/apt/archives/
 +wget http://harrisony.com/getdeb.net/uf/ufoai_2.1-0~getdeb1_i386.deb
 +wget http://harrisony.com/getdeb.net/uf/ufoai-data_2.1-0~getdeb1_all.deb
 +cd ../../../../
 +</code>
 +
 +====== Zaindexování balíčků do databáze ======
 +
 +Zaindexujeme balíčky, jmenovku nastavíme jako Ubuntu7.10 :
 +
 +<code>
 +dpkg-scanpackages /var/cache/apt/archives/ /dev/null > /var/cache/apt/archives/Packages
 +apt-cdrom add -m -d=/var/cache/apt/archives/
 +</code>
 +====== Opuštění chrootového prostředí ======
 +
 +<code>
 +rm -rf /tmp/*
 +rm /etc/resolv.conf  /etc/hosts
 +umount /proc
 +umount /sys
 +exit
 +</code>
 +====== Zbastlení DVDčka dohromady ======
 +
 +Změníme jmenovku DVD:
 +
 +<code>
 +sudo chmod u+w cd-data/README.diskdefines
 +sudo vim cd-data/README.diskdefines
 +</code>
 +tzn. na prvním řádku bude:
 +
 +<code>
 +#define DISKNAME  Ubuntu7.10
 +</code>
 +A zabalíme obraz DVD. Chvíli to trvá.
 +
 +<code>
 +sudo su
 +mv sq-data/var/cache/apt/archives/*.deb sq-data/var/cache/apt/archives/Packages cd-data/
 +rm cd-data/casper/filesystem.manifest
 +chroot sq-data dpkg-query -W --showformat='${Package} ${Version}\n' > cd-data/casper/filesystem.manifest
 +cp cd-data/casper/filesystem.manifest cd-data/casper/filesystem.manifest-desktop
 +sed -ie '/ubiquity/d' cd-data/casper/filesystem.manifest-desktop
 +rm cd-data/casper/filesystem.squashfs
 +nice mksquashfs sq-data/ cd-data/casper/filesystem.squashfs
 +cd cd-data
 +sudo mkisofs -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../ubuntu-7.10-desktop-i386-mojeDVD.iso .
 +ls -l
 +echo 'Ufff! Hotovo.'
 +exit
 +</code>
 +====== Odkazy ======
 +  * [[http://aptoncd.sourceforge.net/|APTonCD]] - jednoduchá tvorba vlastního CD/DVD jako zdroje balíků
 +
 +----
 +NEPLATNÉ
 +Upravíme
 +mv sq-data/var/cache/apt/archives/*.deb cd-data/
 +
 +<code>
 +sudo vim sq-data/etc/apt/sources.list
 +</code>
 +a přidáme řádek:
 +
 +<code>
 +deb cdrom:[Ubuntu7.10]/ /
 +</code>
 +Zapíšeme, že je repozitář na samotném DVD:
 +<code>
 +sudo vim sq-data/var/lib/apt/cdroms.list
 +</code>
 +a přidáme magické řádky:
 +
 +<code>
 +CD::b18f9ce7ee7037fcb9b4bda843f5a863-2 "Ubuntu7.10";
 +CD::b18f9ce7ee7037fcb9b4bda843f5a863-2-Label "Ubuntu7.10";
 +</code>KONEC NEPLATNÉHO
 +----
  • Poslední úprava: 2019/02/25 18:20
  • autor: 127.0.0.1