作業ログ源泉垂れ流し

しがないIT技術者の作業ログを垂れ流す

Debian bullseye (RC1)を自動インストールするUEFIブート用USBメモリの作成

USBメモリFAT32でフォーマットする。
sdXの部分は実際のデバイス名に置き換える。)

# dd if=/dev/zero of=/dev/sdX bs=1M count=1
# echo "n;p;1;;;t;c;w" | tr ';' '\n' | fdisk /dev/sdX
# partx -u /dev/sdX
# mkdosfs -F32 /dev/sdX1
# mount /dev/sdX1 /mnt

Syslinuxを配置・設定する。

$ wget https://mirrors.edge.kernel.org/pub/linux/utils/boot/syslinux/syslinux-6.03.tar.gz
$ tar zxf syslinux-6.03.tar.gz
# mkdir -p /mnt/EFI/BOOT
# cp syslinux-6.03/efi64/efi/syslinux.efi /mnt/EFI/BOOT/bootx64.efi
# cp syslinux-6.03/efi64/com32/elflink/ldlinux/ldlinux.e64 /mnt/EFI/BOOT/
# cat << EOF > /mnt/syslinux.cfg          
PROMPT 0
TIMEOUT 0
DEFAULT INSTALL
LABEL INSTALL
KERNEL vmlinuz
APPEND vga=788 initrd=initrd.gz --- quiet language=C country=JP locale=C keymap=us file=/hd-media/preseed.cfg preseed-md5=$(md5sum preseed.cfg  | sed 's/ .*//')
EOF

なお、preseed.cfgを変更するたびに、preseed-md5の内容を変更する必要がある。

カーネル、初期RAMディスク、preseed.cfg、インストールCD ISOを配置する。

# wget -P /mnt http://ftp.jp.debian.org/debian/dists/bullseye/main/installer-amd64/current/images/hd-media/vmlinuz
# wget -P /mnt http://ftp.jp.debian.org/debian/dists/bullseye/main/installer-amd64/current/images/hd-media/initrd.gz
# cp preseed.cfg /mnt
# wget -P /mnt https://cdimage.debian.org/cdimage/bullseye_di_rc1/amd64/iso-cd/debian-bullseye-DI-rc1-amd64-netinst.iso
# umount /mnt

作成したUSBメモリで自動インストールに成功!