Потребуются:
- 3-5гб свободного места
- 512мб оперативной памяти
- squashfs-tools
- genisoimage, mkisofs
- Ядро с поддержкой squashfs
- Виртуальная машина для тестов
- Образ Ubuntu Desktop
Итак, приступаем:
sudo apt-get install squashfs-tools genisoimage
mkdir ~/livecdtmp
mv $ubuntu_iso_image ~/livecdtmp
cd ~/livecdtmp
mkdir mnt
sudo mount -o loop $ubuntu_iso_image mnt
mkdir extract-cd
rsync --exclude=mnt/casper/filesystem.squashfs -a mnt/ extract-cd
sudo unsquashfs mnt/casper/filesystem.squashfs
sudo mv squashfs-root edit
sudo cp /etc/resolv.conf edit/etc/
sudo cp /etc/hosts edit/etc/
sudo mount --bind /dev/ edit/dev
sudo chroot edit
mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts
export HOME=/root
export LC_ALL=C
Сейчас можно издеваться над дистрибутивом как вам угодно, вырезать у него пакеты, обновлять их, в общем время кастомизации настало. Для удобства вот пара команд:
dpkg-query -W --showformat='${Installed-Size}\t${Package}\n'|sort -nr|less
Выводит все установленные пакеты упорядочив их по уменьшению занимаемого размера
apt-get purge package-name
Удаление пакета
man gconf
Информация по настройке Gnome
После завершения издевательств над системой рекомендуется всё за собой подчистить:
aptitude clean
rm -rf /tmp/* ~/.bash_history /etc/resolv.conf /var/lib/dbus-machine-id
Теперь отцепляем все маунты и делаем ISO-образ
umount /proc
umount /sys
umount /dev/pts
exit
sudo umount edit/dev
chmod +w extract-cd/casper/filesystem.manifest
sudo chroot edit dpkg-query -W --showformat='${Package} ${Version}\n' > extract-cd/casper/filesystem.manifest
sudo cp extract-cd/casper/filesystem.manifest extract-cd/casper/filesystem.manifest-desktop
sudo sed -i '/ubiquity/d' extract-cd/casper/filesystem.manifest-desktop
sudo sed -i 'casper/d' extract-cd/casper/filesystem.manifest-desktop
sudo rm extract-cd/casper/filesystem.squashfs
sudo mksquashfs edit extract-cd/casper/filesystem.squashfs -b 1048576
sudo vim extract-cd/README.diskdefines
cd extract-cd
sudo rm md5sum.txt
find -type f -print0|sudo xargs -0 md5sum|grep -v isolinux/boot.cat|sudo tee md5sum.txt
sudo mkisofs -D -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 ../имя_нового_образа.iso
Собственно образ готов. Можно его протестировать в виртуальной машине, можно нарезать:
cdrecord dev=/dev/cdrom имя_нового_образа.iso
Комментариев нет:
Отправить комментарий