ArchIso - gdamjan/gdamjan.github.io GitHub Wiki
За да креираме custom live Arch треба да користиме mkarchiso (доаѓа во пакетот archiso).
Прво креираме директориум каде што ќе го правиме системот:
export WORK_DIR=/tmp/work mkarchiso -p "base" create $WORK_DIR
со ``-p "пакет"`` се инсталираат соодветни пакети во $WORK_DIR мора да имаме syslinux, а и mkinitcpio-nfs-utils е корисно:
mkarchiso -p "syslinux mkinitcpio-nfs-utils" create $WORK_DIR
Потоа може да chroot-ираме и да менуваме ствари:
mkarchroot -n -r bash $WORK_DIR
(за крај ##exit##)
креираме mkinitcpio.conf::
cp /lib/initcpio/hooks/archiso $WORK_DIR/root-image/lib/initcpio/hooks cp /lib/initcpio/install/archiso $WORK_DIR/root-image/lib/initcpio/install cat <<EOF > /tmp/mkinitcpio.conf HOOKS="base udev archiso sata ide scsi net filesystems usbinput" COMPRESSION="xz" EOF
креираме $WORK_DIR/iso/arch/boot/i686/, во него ќе стојат кернелот и initramfs-то::
mkdir -p $WORK_DIR/iso/arch/boot/i686/ mkinitcpio -c ./mkinitcpio.conf -b $WORK_DIR/root-image \ -k /boot/vmlinuz26 -g $WORK_DIR/iso/arch/boot/i686/archiso.img cp $WORK_DIR/root-image/boot/vmlinuz26 /tmp/work/iso/arch/boot/i686
го средуваме syslinux:
mkdir -p $WORK_DIR/iso/arch/boot/syslinux cat <<EOF > $WORK_DIR/iso/arch/boot/syslinux/syslinux.cfg DEFAULT menu.c32 PROMPT 0 MENU TITLE Arch Linux TIMEOUT 300 LABEL arch MENU LABEL Arch Linux LINUX /arch/boot/i686/vmlinuz26 INITRD /arch/boot/i686/archiso.img APPEND archisolabel=MY_ARCH ONTIMEOUT arch EOF cp $WORK_DIR/root-image/usr/lib/syslinux/menu.c32 /tmp/work/iso/arch/boot/syslinux/
Го средуваме isolinux за да може да правиме .iso:
mkdir $WORK_DIR/iso/isolinux cp $WORK_DIR/root-image/usr/lib/syslinux/isolinux.bin /tmp/work/iso/isolinux/ cat <<EOF > $WORK_DIR/iso/isolinux/isolinux.cfg DEFAULT loadconfig LABEL loadconfig CONFIG /arch/boot/syslinux/syslinux.cfg APPEND /arch/boot/syslinux/ EOF
креираме aitab:
cat <<EOF > $WORK_DIR/iso/arch/aitab # <img> <mnt> <arch> <sfs_comp> <fs_type> <fs_size> root-image / i686 xz ext4 50% EOF
Го компресираме filesystem-от:
mkarchiso prepare $WORK_DIR
И конечно креираме iso слика:
mkarchiso -L "MY_ARCH" iso $WORK_DIR "my-arch.iso"
Одиме на пиво.