Editace LiveCD - dodělávky

Chtěl bych poprosit, jestli by někdo mohl zkusit tento návod. Přeložil jsem ho a upravil pro verzi 8. Původně to bylo na ruském serveru pro zmenšení velikosti na 400 MB. Mě šlo spíše dodat si balíčky a skripty (případně numlockx), ale nedokážu to dotáhnout do konce. čerpal jsem i z jiných stránek, ale asi něco dělám špatně. Nejde mi převážně vytvořit iso (to jsem řešil nakonec přes ultraiso) a následně nefunguje celé cd :wink:

Zmenšení (úprava) LiveCD Fedora 8
Zadání: zmenšení GNOME-LiveCD Fedora 7 na 400 MB
Postup:

Získáme z ISO obrazu LiveCD soubor squashfs.img
mount -o loop ./Fedora-8-Live-i686.iso /mnt/cdrom
nebo mount –o loop /dev/cdrom /mnt/cdrom
celý obsah cd nakopírujeme do nově vytvořeného adresáře /mnt/disk/LiveCD/newcd

Z nakopírovaného sqashfs.img vykopírujeme ext3fs.img
mount -o loop -t squashfs /mnt/disk/LiveCD/newcd/LiveOS/squashfs.img /mnt/cdrom
kopírujeme obsah do adresáře /mnt/disk/LiveCD/new_ext3
umount /mnt/cdrom

Vytvoříme kopii ext3 z adresáře /mnt/disk/LiveCD/new_ext3/LiveOS/ext3fs.img
mount -o loop /mnt/disk/LiveCD/new_ext3/LiveOS/ext3fs.img /mnt/disk/LiveCD/new_ext3/sysroot

Nyní odstraníme přebytečné a doplníme potřebné
chroot /mnt/disk/LiveCD/new_ext3/sysroot /bin/sh
su -
mount /proc
mount /sys
rm -rf /usr/share/doc
? v adresáři /usr/share/locale/ ponecháme pouze ruské (české) a angl. Modifikace
? cd /usr/share/icons; rm -rf Bluecurve gnome
? v adresáři /usr/share/pixmaps změníme soubory, které nechceme a případně
vymažeme pixmaps/backgrounds/ nebo nahradíme svými soubory (znaky)
cp background.jpg /usr/share/gdm/themes/FedoraFlyingHigh
cp background.jpg /usr/share/backgrounds/images/default.jpg
? smažeme /usr/share/backgrounds
? Odstraníme balíčky čínských znaků (opatrně):
rpm -e fonts-chinese fonts-arabic fonts-korean fonts-japanese
pokud vznikne chyba s rpm, použijeme příkaz “rpm --rebuilddb” nebo viz. poznámka
? V případě že potřebujeme doplnit při startu liveCD příkazy, doplníme je do souboru /etc/rc.d/init.d

Přidávám požadované balíčky např. PPTP (nebo příkaz rpm -ivh /mnt/…. .rpm):
rpm -Uvh http://pptpclient.sourceforge.net/yum/stable/fc7/pptp-release-current.noarch.rpm
yum --enablerepo=pptp-stable install pptpconfig

umount /proc
umount /sys

Po úpravě starého ext3fs.img, vytvoříme nový prázdný ext3fs.img a nakopírujeme obsah starého (musí se přepsat obraz nulami aby se více zkomprimoval, v opačném případě provedené změny nebudou provedeny a výsledný obraz squashfs po zkomprimování bude větší než původní).
cd mnt/disk/LiveCD/new_ext3/LiveOS/
dd if=/dev/zero of=new_ext3fs.img bs=1k count=4096k
/sbin/mkfs.ext3 -F -L “LiveCD” -m 1 new_ ext3fs.img
/sbin/tune2fs -c0 -i0 -Odir_index -ouser_xattr,acl new_ext3fs.img

Namontujeme nový obraz
mkdir /mnt/disk/LiveCD/new_ext3/new_sysroot
mount -o loop ./new_ext3fs.img /mnt/disk/LiveCD/new_ext3/new_sysroot

Kopírujeme obsah starého přes rsync, abychom zachovali původní názvy (znaky) souborů
rsync -a -v --acls --xattrs --hard-links /mnt/disk/LiveCD/new_ext3/sysroot /mnt/disk/LiveCD/new_ext3/new_sysroot

Nezapomenout odmountovat a přejmenování nového obrazu
umount /mnt/disk/LiveCD/new_ext3/sysroot
umount /mnt/disk/LiveCD/new_ext3/new_sysroot
rm /mnt/disk/LiveCD/new_ext3/new_sysroot
mv /mnt/disk/LiveCD/new_ext3/LiveOS/new_ext3fs.img /mnt/disk/LiveCD/new_ext3/LiveOS/ext3fs.img

Zkomprimujeme ext3 obraz
rm /mnt/disk/LiveCD/newcd/LiveOS/squashfs.img
/sbin/mksquashfs /mnt/disk/LiveCD/new_ext3/LiveOS/ext3fs.img /mnt/disk/LiveCD/new_ext3/sysroot /mnt/disk/LiveCD/newcd/LiveOS/squashfs.img

Vytvoříme iso obraz pro vypálení CD
mkisofs -o ./live.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4
-boot-info-table -J -r -hide-rr-moved -V “Fedora-7-Live-i386” /mnt/disk/LiveCD/newcd/

Jestli budete chtít změnit znak fedora 8, nezapomeňte tuto změnu provést i v souboru isolinux/isolinux.cfg

Poznámka:
Nainstalovat hned balíček squashfs, abychom v závěru mohli zkomprimovat jádro.

Zapnutí numlock:

Instalace numlockx podobne jako konfigutace kompilace z tgz predpoklada pouzivani xdm. Vetsina (asi vsichni) pouzivaji bud KDE (reseni viz vyse) nebo GDM.
Pro GDM je nutno po instalaci numlockx pridat jako predposledni radek do souboru /etc/gdm/Init/Default: “/usr/bin/numlockx on”
Takze konec tohoto souboru bude vypadat takto:

$SETXKBMAP -symbols “$XKBSYMBOLS”
fi
fi
fi
fi
/usr/bin/numlockx on
exit 0

chyba v rpm:

  1. killnout procesy:
    a. rpm
    b. yum
    c. pirut/pup
    d. yumex
    e. yum-updatesd

  2. spustit se jako root:

rm -f /var/lib/rpm/__db*
rpm --rebuilddb

  1. reboot

Odkazy:
http://www.opennet.ru/tips/info/1430.shtml
http://www.nabble.com/yum-panic-td8375799.html
http://forum.fedora.cz/read.php?1,3622,3812
http://wiki.ubuntu.cz/Vytvoření_vlastního_LiveCD

Uf uf… tolik casu nemam a prijde mit to sice zhruba spravne ale trochu zbytecne “lowlevel”. Zkuste pouzit nastroj revisor - osobne jsem to nikdy nedelal, je to novinka v F8.