7 Nisan 2022 Perşembe

Pardus costum iso hazırlama 2022

 Merhabalar,

Tübitak ile ortak çalışma sonrasında Ali hocamın hazırladığı scripti sizin ile paylaşmak istiyorum.


##################################################################
#!/bin/bash
set -e
:
if [[ "$1" == "" || ! -f "$1" ]] ; then
    echo "Usage: $0 iso_path"
    exit 1
fi
iso="$1"
if [[ $UID -ne 0 ]] ; then
    echo "You must be root!"
    exit 1
fi
apt update
apt install grub-pc-bin grub-efi-amd64-bin grub-efi-ia32-bin mtools xorriso squashfs-tools -y
echo -ne "\033c"
if [[ ! -d work/isowork/ ]] ; then
    mkdir -p work/iso work/sfs work/chroot work/isowork
    mount "$iso" work/iso
    mount work/iso/live/filesystem.squashfs work/sfs
    cp -prfv work/sfs/* work/chroot/
    sync #### ramdaki gecici bilgileri diske yazmasını bekliyor.
    cp -prfv work/iso/* work/isowork/
    rm -rf work/isowork/live/* work/isowork/live/isolinux work/isowork/*sum*
    sync
fi
for dir in /dev /dev/pts /sys /proc /run ; do
    mount --bind $dir work/chroot/$dir
done
mount --bind /etc/resolv.conf work/chroot/etc/resolv.conf
#xhost +
#echo -ne "\033c"
#echo "Burada çalıştıracağınız komutlar düzenlenmiş iso içerisinde gelir."
#echo "Devam etmek için exit veya ctrl+d yapın."
chroot work/chroot bash || true
for dir in /run /proc /sys /dev/pts /dev ; do
    umount -lf -R work/chroot/$dir
done
umount --bind /etc/resolv.conf work/chroot/etc/resolv.conf
echo -ne "\033c"
mksquashfs work/chroot work/isowork/live/filesystem.squashfs -comp gzip -wildcards
cp -pf work/chroot/boot/initrd* work/isowork/live/
cp -pf work/chroot/boot/vmlinuz* work/isowork/live/
cp -pf work/chroot/boot/initrd* work/isowork/live/initrd.img
cp -pf work/chroot/boot/vmlinuz* work/isowork/live/vmlinuz
grub-mkrescue -o custom.iso work/isowork
################################################################


yukarıdaki scripti isoedit.sh isimli olarak kaydettim. scriptin bulunduğu dizine klasör oluşturup çalışmaya başlayacak. 

chmod 755 isoedit.sh

root olarak scripti çalıştırdım. editlemek istediğim iso gosterdim.

 ./isoedit.sh /data/Pardus21/download/Pardus-21.2-XFCE-amd64.iso