#!/bin/bash # initrd "/boot", , VMLINUZ="vmlinuz-3.2.0-4-amd64" INITRD="initrd.img-3.2.0-4-amd64" ISO="iso"<source lang="bash"> # , : apt-get install squashfs-tools apt-get install live-boot live-boot-initramfs-tools apt-get install mtools syslinux dosfstools # [ -d /$ISO ] && rm -rf /$ISO mkdir /$ISO mkdir /$ISO/binary mkdir /$ISO/binary/live mkdir /$ISO/binary/syslinux mkdir /$ISO/fscopy # RootFS tar -cpf - --directory=/ --exclude=proc --exclude=sys --exclude=dev/pts --exclude=boot --exclude=$ISO . | tar xf - -C /$ISO/fscopy/ rm -r /$ISO/fscopy/tmp/* /$ISO/fscopy/var/tmp/* rm /$ISO/fscopy/var/cache/apt/archives/*.deb rm /$ISO/fscopy/etc/udev/rules.d/*-persistent-net.rules rm /$ISO/fscopy/initrd.img /$ISO/fscopy/vmlinuz > /$ISO/fscopy/etc/fstab mkdir /$ISO/fscopy/proc mkdir /$ISO/fscopy/sys mkdir /$ISO/fscopy/dev/pts # RootFS squashfs mksquashfs /$ISO/fscopy/* /$ISO/binary/live/filesystem.squashfs # initrd cp /boot/$INITRD /$ISO/binary/live/initrd.img cp /boot/$VMLINUZ /$ISO/binary/live/vmlinuz # "syslinux.cfg" Syslinux cat > /$ISO/binary/syslinux/syslinux.cfg <<EOF CONSOLE 0 default linux label linux kernel /live/vmlinuz append initrd=/live/initrd.img boot=live quiet splash noconfig ro EOF # , "/iso/binary/" , dd # , "/iso/binary/" # /iso/binary/live/vmlinuz — # /iso/binary/live/initrd.img — initrd, Squashfs # /iso/binary/live/filesystem.squashfs — RootFS # /iso/binary/syslinux/syslinux.cfg — dd if=/dev/zero of=/$ISO/Debian_ro.img bs=10M count=35 LOFI=`losetup -f` losetup $LOFI /$ISO/Debian_ro.img mkdosfs -I $LOFI syslinux $LOFI TMP_DIR="/tmp/$$" mkdir $TMP_DIR mount $LOFI $TMP_DIR cp -r /$ISO/binary/* $TMP_DIR umount $TMP_DIR; rm -r $TMP_DIR losetup -d $LOFI # "Debian_ro.img",
Source: https://habr.com/ru/post/226973/
All Articles