dnsmasqを使用したPXEBoot

# **PXEBOOT**  
  
以下のパッケージを組合せPXEBootによるLinuxとWindowsのインストール環境を実現する。  
  
* dnsmasq  
* tftpd  
* apache2  
* samba  
* iPXE  
  
以下、実行に必要な追加パッケージ
  
* syslinux-common、syslinux-efi、pxelinux  
* grub-common、grub-efi-amd64、grub-pc-bin  
* rsync  
* 7zip、bzip2、gzip、lz4、lzop、xz-utils、zstd  
  
::: note warn
* ベースとなる仮想環境は[この手順](https://github.com/office-itou/Linux/blob/master/base-pc/Readme_base-pc_debian.md)で作成  
* SELinuxの関係でdnsmasqのtftp機能は使用しない  
* Windowsを扱うのでiPXEを使用する  
* syslinuxのmemdiskはUEFI環境に対応していないので使用しない  
:::
  
::: note info
システム構築は別途シェルを準備しある程度は自動化する  
参照: [GitHub office-itou Linux/shell-script/mk_pxeboot_conf.sh](https://github.com/office-itou/Linux/blob/master/shell-script/mk_pxeboot_conf.sh)  
:::
  
## 表示例  
  
### iPXE版  
  
| スクリーンショット |
| :---------------: |
| ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113490/ed7594cd-2299-3bcf-7222-4c982ba6d095.png) |
  
## システム構成  
  
### ソフトウェア  
  
| 使用目的          | 項目           | 詳細                             |
| ----------------- | -------------- | -------------------------------- |
| Host PC           | Windows        | Windows 10 Pro 22H2              |
|                   | Virtual system | VMware Workstation 16 Pro        |
| Guest PC (Server) | Linux          | Debian 12 (stable)               |
|                   | DNS/DHCP       | dnsmasq 2.89                     |
|                   | TFTP           | tftpd-hpa 5.2                    |
|                   | HTTP           | apache2 2.4.59                   |
|                   | SMB/CIFS       | samba 4.17.12                    |
|                   | iPXE           | undionly.kpxe 3.70 or newer      |
|                   |                | ipxe.efi                         |
|                   |                | wimboot 2.8.0                    |
  
### ハードウェア  
  
| 使用目的          | 項目           | 詳細                             |
| ----------------- | -------------- | -------------------------------- |
| Host PC           | Processor      | Intel Core i7-6700 CPU @ 3.40GHz |
|                   | Memory         | 32GiB                            |
|                   | Storage        |                                  |
|                   | Network        |                                  |
| Guest PC (Client) | Processor      | 1 processor / 2 cores (i7-6700)  |
|                   | Memory         | 4GiB (Live mode is 8GiB)         |
|                   | Storage        | NVMe 64 GiB / SATA 20GiB         |
|                   | Network        | NIC1 e1000e / NIC2 e1000e        |
| Guest PC (Server) | Processor      | 1 processor / 2 cores (i7-6700)  |
|                   | Memory         | 4GiB                             |
|                   | Storage        | NVMe 20 GiB / SATA 500GiB        |
|                   | Network        | NIC1 e1000e / NIC2 -             |
| Guest PC (Server) | Processor      | 1 processor / 2 cores (i7-6700)  |
| Application Test  | Memory         | 4GiB                             |
|                   | Storage        | NVMe 64 GiB / SATA 20GiB         |
|                   | Network        | NIC1 e1000e / NIC2 e1000e        |
  
### ネットワーク  
  
| 使用目的          | 項目           | 詳細                             |
| ----------------- | -------------- | -------------------------------- |
| Guest PC (Server) | Interface      | ens160                           |
|                   | IP address     | 192.168.1.10                     |
|                   | Netmask        | 24 (255.255.255.0)               |
|                   | DHCP server    | 192.168.1.254 (Router)           |
|                   | DNS server     | 192.168.1.10,192.168.1.254       |
|                   | Domain name    | workgroup                        |
| Guest PC (Server) | Interface      | ens160                           |
| Application Test  | IP address     | 192.168.1.12                     |
|                   | Netmask        | 24 (255.255.255.0)               |
|                   | DHCP server    | 192.168.1.254 (Router)           |
|                   | DNS server     | 192.168.1.12,192.168.1.254       |
|                   | Domain name    | workgroup                        |
  
Note:  
* Test Applications: DNS / DHCP Proxy / TFTP / WEB / Samba  
  
## Tree図  
  
``` bash: Tree図
~/share/
|-- back ---------------------- backup directory
|-- conf ---------------------- configuration file
|   |-- _template
|   |   |-- kickstart_common.cfg
|   |   |-- nocloud-ubuntu-user-data
|   |   |-- preseed_debian.cfg
|   |   |-- preseed_ubuntu.cfg
|   |   `-- yast_opensuse.xml
|   |-- autoyast
|   |-- kickstart
|   |-- nocloud
|   |-- preseed
|   |-- script
|   |   `-- late_command.sh
|   `-- windows
|       |-- bypass.cmd
|       |-- inst_w10.cmd
|       |-- inst_w11.cmd
|       |-- shutdown.cmd
|       |-- startnet.cmd
|       |-- unattend.xml
|       `-- winpeshl.ini
|-- html ---------------------- html contents
|   |-- conf -> ../conf
|   |-- imgs -> ../imgs
|   |-- isos -> ../isos
|   |-- load -> ../tftp/load
|   `-- rmak -> ../rmak
|-- imgs ---------------------- iso file extraction destination
|-- isos ---------------------- iso file
|-- orig ---------------------- backup directory (original file)
|-- rmak ---------------------- remake file
|-- temp ---------------------- temporary directory
`-- tftp ---------------------- tftp contents
    |-- autoexec.ipxe --------- ipxe script file (menu file)
    |-- memdisk --------------- memdisk of syslinux
    |-- boot
    |   `-- grub
    |       |-- bootx64.efi --- bootloader (i386-pc-pxe)
    |       |-- grub.cfg ------ menu base
    |       |-- menu.cfg ------ menu file
    |       |-- pxelinux.0 ---- bootloader (x86_64-efi)
    |       |-- fonts
    |       |   `-- unicode.pf2
    |       |-- i386-pc
    |       |-- locale
    |       `-- x86_64-efi
    |-- imgs -> ../imgs
    |-- ipxe ------------------ ipxe module
    |   |-- ipxe.efi
    |   |-- undionly.kpxe
    |   `-- wimboot
    |-- isos -> ../isos
    |-- load ------------------ load module
    |-- menu-bios
    |   |-- syslinux.cfg ------ syslinux configuration for mbr environment
    |   |-- boot -> ../load
    |   |-- imgs -> ../imgs
    |   |-- isos -> ../isos
    |   |-- load -> ../load
    |   `-- pxelinux.cfg
    |       `-- default -> ../syslinux.cfg
    `-- menu-efi64
        |-- syslinux.cfg ------ syslinux configuration for uefi(x86_64) environment
        |-- boot -> ../load
        |-- imgs -> ../imgs
        |-- isos -> ../isos
        |-- load -> ../load
        `-- pxelinux.cfg
            `-- default -> ../syslinux.cfg

/var/lib/
`-- tftpboot -> ${HOME}/share/tftp

/var/www/
`-- html -> ${HOME}/share/html

/etc/dnsmasq.d/
`-- pxe.conf ------------------ pxeboot dnsmasq configuration file
```
  
## 構成ファイル  
  
### [/etc/dnsmasq.d/pxe.conf](https://github.com/office-itou/Linux/blob/master/shell-script/example/server/etc/dnsmasq.d/pxe.conf)  
  
``` bash: /etc/dnsmasq.d/pxe.conf
# --- log ---------------------------------------------------------------------
#log-queries												# dns query log output
#log-dhcp													# dhcp transaction log output
#log-facility=												# log output file name

# --- dns ---------------------------------------------------------------------
#port=5353													# listening port
bogus-priv													# do not perform reverse lookup of private ip address on upstream server
domain-needed												# do not forward plain names
domain=workgroup											# local domain name
expand-hosts												# add domain name to host
filterwin2k													# filter for windows
interface=lo,ens160											# listen to interface
listen-address=::1,127.0.0.1,192.168.1.10					# listen to ip address
#server=8.8.8.8												# directly specify upstream server
#server=8.8.4.4												# directly specify upstream server
#no-hosts													# don't read the hostnames in /etc/hosts
#no-poll													# don't poll /etc/resolv.conf for changes
#no-resolv													# don't read /etc/resolv.conf
strict-order												# try in the registration order of /etc/resolv.conf
bind-dynamic												# enable bind-interfaces and the default hybrid network mode

# --- dhcp --------------------------------------------------------------------
dhcp-range=192.168.1.0,proxy,24								# proxy dhcp
#dhcp-range=192.168.1.64,192.168.1.79,12h					# dhcp range
#dhcp-option=option:netmask,255.255.255.0					#  1 netmask
dhcp-option=option:router,192.168.1.254						#  3 router
dhcp-option=option:dns-server,192.168.1.10,192.168.1.254	#  6 dns-server
dhcp-option=option:domain-name,workgroup					# 15 domain-name
#dhcp-option=option:28,192.168.1.255						# 28 broadcast
#dhcp-option=option:ntp-server,133.243.238.164				# 42 ntp-server
#dhcp-option=option:tftp-server,192.168.1.10				# 66 tftp-server
#dhcp-option=option:bootfile-name,							# 67 bootfile-name
dhcp-no-override											# disable re-use of the dhcp servername and filename fields as extra option space

# --- pxe boot ----------------------------------------------------------------
#pxe-prompt="Press F8 for boot menu", 0						# pxe boot prompt
#pxe-service=x86PC            , "PXEBoot-x86PC"            , boot/grub/pxelinux		#  0 Intel x86PC
#pxe-service=PC98             , "PXEBoot-PC98"             ,						#  1 NEC/PC98
#pxe-service=IA64_EFI         , "PXEBoot-IA64_EFI"         ,						#  2 EFI Itanium
#pxe-service=Alpha            , "PXEBoot-Alpha"            ,						#  3 DEC Alpha
#pxe-service=Arc_x86          , "PXEBoot-Arc_x86"          ,						#  4 Arc x86
#pxe-service=Intel_Lean_Client, "PXEBoot-Intel_Lean_Client",						#  5 Intel Lean Client
#pxe-service=IA32_EFI         , "PXEBoot-IA32_EFI"         ,						#  6 EFI IA32
#pxe-service=BC_EFI           , "PXEBoot-BC_EFI"           , boot/grub/bootx64.efi	#  7 EFI BC
#pxe-service=Xscale_EFI       , "PXEBoot-Xscale_EFI"       ,						#  8 EFI Xscale
#pxe-service=x86-64_EFI       , "PXEBoot-x86-64_EFI"       , boot/grub/bootx64.efi	#  9 EFI x86-64
#pxe-service=ARM32_EFI        , "PXEBoot-ARM32_EFI"        ,						# 10 ARM 32bit
#pxe-service=ARM64_EFI        , "PXEBoot-ARM64_EFI"        ,						# 11 ARM 64bit

# --- ipxe block --------------------------------------------------------------
dhcp-match=set:iPXE,175																# 
pxe-prompt="Press F8 for boot menu", 0												# pxe boot prompt
pxe-service=tag:iPXE ,x86PC     , "PXEBoot-x86PC"     , /autoexec.ipxe				#  0 Intel x86PC (iPXE)
pxe-service=tag:!iPXE,x86PC     , "PXEBoot-x86PC"     , ipxe/undionly.kpxe			#  0 Intel x86PC
pxe-service=tag:!iPXE,BC_EFI    , "PXEBoot-BC_EFI"    , ipxe/ipxe.efi				#  7 EFI BC
pxe-service=tag:!iPXE,x86-64_EFI, "PXEBoot-x86-64_EFI", ipxe/ipxe.efi				#  9 EFI x86-64

# --- tftp --------------------------------------------------------------------
#enable-tftp=ens160											# enable tftp server
#tftp-root=/var/lib/tftpboot								# tftp root directory
#tftp-lowercase												# convert tftp request path to all lowercase
#tftp-no-blocksize											# stop negotiating "block size" option
#tftp-no-fail												# do not abort startup even if tftp directory is not accessible
#tftp-secure												# enable tftp secure mode

# --- dnsmasq manual page -----------------------------------------------------
# https://thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html

# --- eof ---------------------------------------------------------------------
```
  
### [/var/lib/tftpboot/autoexec.ipxe](https://github.com/office-itou/Linux/blob/master/shell-script/example/server/var/lib/tftpboot/autoexec.ipxe)  

``` ipxe: /var/lib/tftpboot/autoexec.ipxe
#!ipxe

cpuid --ext 29 && set arch amd64 || set arch x86

dhcp

set optn-timeout 3000
set menu-timeout 0
isset ${menu-default} || set menu-default exit

:start

:menu
menu Select the OS type you want to boot
item --gap --                           --------------------------------------------------------------------------
item --gap --                           [ Auto install mini.iso ... ]
item -- debian-mini-11                  - Debian 11 .......................................... 2024-06-24 17:01:08
item -- debian-mini-12                  - Debian 12 .......................................... 2024-06-24 11:54:34
item -- debian-mini-13                  - Debian 13 .......................................... 2023-06-07 01:01:56
item -- debian-mini-testing             - Debian testing ..................................... 2024-06-29 00:02:26
item -- ubuntu-mini-18.04               - Ubuntu 18.04 ....................................... 2021-09-15 15:14:00
item -- ubuntu-mini-20.04               - Ubuntu 20.04 ....................................... 2023-03-14 22:28:31
item --gap --                           [ Auto install Net install ... ]
item -- debian-netinst-11               - Debian 11 .......................................... 2024-06-29 16:09:30
item -- debian-netinst-12               - Debian 12 .......................................... 2024-06-29 11:56:31
item -- debian-netinst-testing          - Debian testing ..................................... 2024-06-29 22:29:29
item -- fedora-netinst-39               - Fedora Server 39 ................................... 2023-10-31 22:05:26
item -- fedora-netinst-40               - Fedora Server 40 ................................... 2024-04-14 18:30:19
item -- centos-stream-netinst-9         - CentOS Stream 9 .................................... 2024-06-24 03:57:51
item -- almalinux-netinst-9             - Alma Linux 9 ....................................... 2024-05-03 22:12:51
item -- rockylinux-netinst-8            - Rocky Linux 8 ...................................... 2024-05-27 14:13:45
item -- rockylinux-netinst-9            - Rocky Linux 9 ...................................... 2024-05-05 01:12:29
item -- miraclelinux-netinst-8          - Miracle Linux 8 .................................... 2023-10-04 10:06:21
item -- miraclelinux-netinst-9          - Miracle Linux 9 .................................... 2023-10-04 08:24:35
item -- opensuse-leap-netinst-15.5      - openSUSE Leap 15.5 ................................. 2023-05-23 15:09:21
item -- opensuse-leap-netinst-15.6      - openSUSE Leap 15.6 ................................. 2024-06-20 11:42:39
item -- opensuse-tumbleweed-netinst     - openSUSE Tumbleweed ................................ 2024-06-28 17:16:06
item --gap --                           [ Auto install DVD media ... ]
item -- debian-11                       - Debian 11 .......................................... 2024-06-29 16:10:15
item -- debian-12                       - Debian 12 .......................................... 2024-06-29 11:57:27
item -- debian-testing                  - Debian testing ..................................... 2024-06-24 04:56:14
item -- ubuntu-server-18.04             - Ubuntu 18.04 Server ................................ 2021-09-16 00:01:34
item -- ubuntu-live-18.04               - Ubuntu 18.04 Live Server ........................... 2021-09-15 20:42:12
item -- ubuntu-live-20.04               - Ubuntu 20.04 Live Server ........................... 2023-03-14 23:02:35
item -- ubuntu-live-22.04               - Ubuntu 22.04 Live Server ........................... 2024-02-16 23:52:36
item -- ubuntu-live-23.10               - Ubuntu 23.10 Live Server ........................... 2023-10-11 04:52:01
item -- ubuntu-live-24.04               - Ubuntu 24.04 Live Server ........................... 2024-04-23 12:46:14
item -- ubuntu-live-oracular            - Ubuntu oracular Live Server ........................ 2024-06-27 08:31:59
item -- fedora-39                       - Fedora Server 39 ................................... 2023-11-01 01:01:16
item -- fedora-40                       - Fedora Server 40 ................................... 2024-04-14 22:54:06
item -- centos-stream-9                 - CentOS Stream 9 .................................... 2024-06-24 04:11:56
item -- almalinux-9                     - Alma Linux 9 ....................................... 2024-05-03 22:26:18
item -- rockylinux-8                    - Rocky Linux 8 ...................................... 2024-05-27 15:14:45
item -- rockylinux-9                    - Rocky Linux 9 ...................................... 2024-05-05 22:41:50
item -- miraclelinux-8                  - Miracle Linux 8 .................................... 2023-10-04 10:06:21
item -- miraclelinux-9                  - Miracle Linux 9 .................................... 2023-10-04 09:37:20
item -- opensuse-leap-15.5              - openSUSE Leap 15.5 ................................. 2023-05-23 15:21:52
item -- opensuse-leap-15.6              - openSUSE Leap 15.6 ................................. 2024-06-20 11:56:54
item -- opensuse-tumbleweed             - openSUSE Tumbleweed ................................ 2024-06-28 17:18:52
item -- windows-10                      - Windows 10                                                
item -- windows-11                      - Windows 11                                                
item --gap --                           [ Live media Install mode ... ]
item -- debian-live-11                  - Debian 11 Live ..................................... 2024-06-29 15:22:22
item -- debian-live-12                  - Debian 12 Live ..................................... 2024-06-29 09:06:14
item -- debian-live-testing             - Debian testing Live ................................ 2024-06-24 02:13:06
item -- ubuntu-desktop-20.04            - Ubuntu 20.04 Desktop ............................... 2023-03-16 15:58:09
item -- ubuntu-desktop-22.04            - Ubuntu 22.04 Desktop ............................... 2024-02-20 19:39:40
item -- ubuntu-desktop-23.10            - Ubuntu 23.10 Desktop ............................... 2023-10-16 11:31:22
item -- ubuntu-desktop-24.04            - Ubuntu 24.04 Desktop ............................... 2024-04-24 11:29:21
item -- ubuntu-desktop-oracular         - Ubuntu oracular Desktop ............................ 2024-06-28 06:57:28
item -- ubuntu-legacy-23.10             - Ubuntu 23.10 Legacy Desktop ........................ 2023-10-10 04:57:59
item --gap --                           [ Live media Live mode ... ]
item -- live-debian-live-11             - Debian 11 Live ..................................... 2024-06-29 15:22:22
item -- live-debian-live-12             - Debian 12 Live ..................................... 2024-06-29 09:06:14
item -- live-debian-live-testing        - Debian testing Live ................................ 2024-06-24 02:13:06
item -- live-ubuntu-desktop-20.04       - Ubuntu 20.04 Desktop ............................... 2023-03-16 15:58:09
item -- live-ubuntu-desktop-22.04       - Ubuntu 22.04 Desktop ............................... 2024-02-20 19:39:40
item -- live-ubuntu-desktop-23.10       - Ubuntu 23.10 Desktop ............................... 2023-10-16 11:31:22
item -- live-ubuntu-desktop-24.04       - Ubuntu 24.04 Desktop ............................... 2024-04-24 11:29:21
item -- live-ubuntu-desktop-oracular    - Ubuntu oracular Desktop ............................ 2024-06-28 06:57:28
item -- live-ubuntu-legacy-23.10        - Ubuntu 23.10 Legacy Desktop ........................ 2023-10-10 04:57:59
item --gap --                           [ System tools ... ]
item -- memtest86+                      - Memtest86+                                                
item -- winpe-x64                       - WinPE x64                                                 
item -- ati2020x64                      - ATI2020x64                                                
item -- ati2020x86                      - ATI2020x86                                                
item --gap --                           [ System command ]
item -- shell                           - iPXE shell
#item -- shutdown                       - System shutdown
item -- restart                         - System reboot
item --gap --                           --------------------------------------------------------------------------
choose --timeout ${menu-timeout} --default ${menu-default} selected || goto menu
goto ${selected}

:debian-mini-11
echo Loading Debian 11 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile mini-bullseye-amd64.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-mini-11
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/linux ${options} --- || goto error
initrd ${knladdr}/initrd.gz || goto error
boot || goto error
exit

:debian-mini-12
echo Loading Debian 12 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile mini-bookworm-amd64.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-mini-12
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/linux ${options} --- || goto error
initrd ${knladdr}/initrd.gz || goto error
boot || goto error
exit

:debian-mini-13
echo Loading Debian 13 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile mini-trixie-amd64.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-mini-13
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/linux ${options} --- || goto error
initrd ${knladdr}/initrd.gz || goto error
boot || goto error
exit

:debian-mini-testing
echo Loading Debian testing ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile mini-testing-amd64.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-mini-testing
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/linux ${options} --- || goto error
initrd ${knladdr}/initrd.gz || goto error
boot || goto error
exit

:ubuntu-mini-18.04
echo Loading Ubuntu 18.04 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile mini-bionic-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_ubuntu_server_old.cfg
set netname sv-ubuntu.workgroup
set network sv-ubuntu.workgroup netcfg/target_network_config=NetworkManager
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-mini-18.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/linux ${options} --- || goto error
initrd ${knladdr}/initrd.gz || goto error
boot || goto error
exit

:ubuntu-mini-20.04
echo Loading Ubuntu 20.04 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile mini-focal-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_ubuntu_server_old.cfg
set netname sv-ubuntu.workgroup
set network sv-ubuntu.workgroup netcfg/target_network_config=NetworkManager
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-mini-20.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/linux ${options} --- || goto error
initrd ${knladdr}/initrd.gz || goto error
boot || goto error
exit

:debian-netinst-11
echo Loading Debian 11 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-11.10.0-amd64-netinst.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-netinst-11
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install.amd/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install.amd/initrd.gz || goto error
boot || goto error
exit

:debian-netinst-12
echo Loading Debian 12 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-12.6.0-amd64-netinst.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-netinst-12
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install.amd/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install.amd/initrd.gz || goto error
boot || goto error
exit

:debian-netinst-testing
echo Loading Debian testing ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-testing-amd64-netinst.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-netinst-testing
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install.amd/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install.amd/initrd.gz || goto error
boot || goto error
exit

:fedora-netinst-39
echo Loading Fedora Server 39 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Fedora-Server-netinst-x86_64-39-1.5.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/fedora-netinst-39
set install inst.ks=http://${svraddr}/conf/kickstart/ks_fedora-39_net.cfg
set netname sv-fedora.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/fedora-netinst-39
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:fedora-netinst-40
echo Loading Fedora Server 40 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Fedora-Server-netinst-x86_64-40-1.14.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/fedora-netinst-40
set install inst.ks=http://${svraddr}/conf/kickstart/ks_fedora-40_net.cfg
set netname sv-fedora.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/fedora-netinst-40
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:centos-stream-netinst-9
echo Loading CentOS Stream 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile CentOS-Stream-9-latest-x86_64-boot.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/centos-stream-netinst-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_centos-stream-9_net.cfg
set netname sv-centos.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/centos-stream-netinst-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:almalinux-netinst-9
echo Loading Alma Linux 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile AlmaLinux-9-latest-x86_64-boot.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/almalinux-netinst-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_almalinux-9_net.cfg
set netname sv-almalinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/almalinux-netinst-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:rockylinux-netinst-8
echo Loading Rocky Linux 8 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Rocky-8.10-x86_64-boot.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/rockylinux-netinst-8
set install inst.ks=http://${svraddr}/conf/kickstart/ks_rockylinux-8_net.cfg
set netname sv-rockylinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/rockylinux-netinst-8
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:rockylinux-netinst-9
echo Loading Rocky Linux 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Rocky-9-latest-x86_64-boot.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/rockylinux-netinst-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_rockylinux-9_net.cfg
set netname sv-rockylinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/rockylinux-netinst-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:miraclelinux-netinst-8
echo Loading Miracle Linux 8 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile MIRACLELINUX-8.8-rtm-minimal-x86_64.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/miraclelinux-netinst-8
set install inst.ks=http://${svraddr}/conf/kickstart/ks_miraclelinux-8_net.cfg
set netname sv-miraclelinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/miraclelinux-netinst-8
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:miraclelinux-netinst-9
echo Loading Miracle Linux 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile MIRACLELINUX-9.2-rtm-minimal-x86_64.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/miraclelinux-netinst-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_miraclelinux-9_net.cfg
set netname sv-miraclelinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/miraclelinux-netinst-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:opensuse-leap-netinst-15.5
echo Loading openSUSE Leap 15.5 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile openSUSE-Leap-15.5-NET-x86_64-Media.iso
set install autoyast=http://${svraddr}/conf/autoyast/autoinst_leap-15.5_net.xml
set netname sv-opensuse.workgroup
set network ifcfg=eth0=192.168.1.1/24,192.168.1.254,192.168.1.254,workgroup hostname=${netname}
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 load_ramdisk=1 showopts ramdisk_size=4096
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/opensuse-leap-netinst-15.5
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/boot/x86_64/loader/linux ${options} --- || goto error
initrd ${knladdr}/boot/x86_64/loader/initrd || goto error
boot || goto error
exit

:opensuse-leap-netinst-15.6
echo Loading openSUSE Leap 15.6 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile openSUSE-Leap-15.6-NET-x86_64-Media.iso
set install autoyast=http://${svraddr}/conf/autoyast/autoinst_leap-15.6_net.xml
set netname sv-opensuse.workgroup
set network ifcfg=eth0=192.168.1.1/24,192.168.1.254,192.168.1.254,workgroup hostname=${netname}
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 load_ramdisk=1 showopts ramdisk_size=4096
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/opensuse-leap-netinst-15.6
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/boot/x86_64/loader/linux ${options} --- || goto error
initrd ${knladdr}/boot/x86_64/loader/initrd || goto error
boot || goto error
exit

:opensuse-tumbleweed-netinst
echo Loading openSUSE Tumbleweed ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile openSUSE-Tumbleweed-NET-x86_64-Current.iso
set install autoyast=http://${svraddr}/conf/autoyast/autoinst_tumbleweed_net.xml
set netname sv-opensuse.workgroup
set network ifcfg=ens160=192.168.1.1/24,192.168.1.254,192.168.1.254,workgroup hostname=${netname}
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 load_ramdisk=1 showopts ramdisk_size=4096
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/opensuse-tumbleweed-netinst
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/boot/x86_64/loader/linux ${options} --- || goto error
initrd ${knladdr}/boot/x86_64/loader/initrd || goto error
boot || goto error
exit

:debian-11
echo Loading Debian 11 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-11.10.0-amd64-DVD-1.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-11
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install.amd/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install.amd/initrd.gz || goto error
boot || goto error
exit

:debian-12
echo Loading Debian 12 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-12.6.0-amd64-DVD-1.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-12
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install.amd/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install.amd/initrd.gz || goto error
boot || goto error
exit

:debian-testing
echo Loading Debian testing ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-testing-amd64-DVD-1.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_server.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-testing
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install.amd/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install.amd/initrd.gz || goto error
boot || goto error
exit

:ubuntu-server-18.04
echo Loading Ubuntu 18.04 Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-18.04.6-server-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_ubuntu_server_old.cfg
set netname sv-ubuntu.workgroup
set network sv-ubuntu.workgroup netcfg/target_network_config=NetworkManager
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-server-18.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install/netboot/ubuntu-installer/amd64/linux ${options} --- || goto error
initrd ${knladdr}/install/netboot/ubuntu-installer/amd64/initrd.gz || goto error
boot || goto error
exit

:ubuntu-live-18.04
echo Loading Ubuntu 18.04 Live Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-18.04.6-live-server-amd64.iso
set isoaddr url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_server_old
set netname sv-ubuntu.workgroup
set network ip=ens160,192.168.1.1,255.255.255.0,192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-live-18.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-live-20.04
echo Loading Ubuntu 20.04 Live Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-20.04.6-live-server-amd64.iso
set isoaddr url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_server
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-live-20.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-live-22.04
echo Loading Ubuntu 22.04 Live Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-22.04.4-live-server-amd64.iso
set isoaddr url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_server
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-live-22.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-live-23.10
echo Loading Ubuntu 23.10 Live Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-23.10-live-server-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_server
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-live-23.10
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-live-24.04
echo Loading Ubuntu 24.04 Live Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-24.04-live-server-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_server
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-live-24.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-live-oracular
echo Loading Ubuntu oracular Live Server ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile oracular-live-server-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_server
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-live-oracular
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:fedora-39
echo Loading Fedora Server 39 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Fedora-Server-dvd-x86_64-39-1.5.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/fedora-39
set install inst.ks=http://${svraddr}/conf/kickstart/ks_fedora-39_web.cfg
set netname sv-fedora.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/fedora-39
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:fedora-40
echo Loading Fedora Server 40 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Fedora-Server-dvd-x86_64-40-1.14.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/fedora-40
set install inst.ks=http://${svraddr}/conf/kickstart/ks_fedora-40_web.cfg
set netname sv-fedora.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/fedora-40
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:centos-stream-9
echo Loading CentOS Stream 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile CentOS-Stream-9-latest-x86_64-dvd1.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/centos-stream-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_centos-stream-9_web.cfg
set netname sv-centos.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/centos-stream-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:almalinux-9
echo Loading Alma Linux 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile AlmaLinux-9-latest-x86_64-dvd.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/almalinux-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_almalinux-9_web.cfg
set netname sv-almalinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/almalinux-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:rockylinux-8
echo Loading Rocky Linux 8 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Rocky-8.10-x86_64-dvd1.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/rockylinux-8
set install inst.ks=http://${svraddr}/conf/kickstart/ks_rockylinux-8_web.cfg
set netname sv-rockylinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/rockylinux-8
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:rockylinux-9
echo Loading Rocky Linux 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile Rocky-9-latest-x86_64-dvd.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/rockylinux-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_rockylinux-9_web.cfg
set netname sv-rockylinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/rockylinux-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:miraclelinux-8
echo Loading Miracle Linux 8 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile MIRACLELINUX-8.8-rtm-x86_64.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/miraclelinux-8
set install inst.ks=http://${svraddr}/conf/kickstart/ks_miraclelinux-8_web.cfg
set netname sv-miraclelinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/miraclelinux-8
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:miraclelinux-9
echo Loading Miracle Linux 9 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile MIRACLELINUX-9.2-rtm-x86_64.iso
set isoaddr inst.stage2=http://${svraddr}/imgs/miraclelinux-9
set install inst.ks=http://${svraddr}/conf/kickstart/ks_miraclelinux-9_web.cfg
set netname sv-miraclelinux.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:none,auto6 nameserver=192.168.1.254
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/miraclelinux-9
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/images/pxeboot/vmlinuz ${options} --- || goto error
initrd ${knladdr}/images/pxeboot/initrd.img || goto error
boot || goto error
exit

:opensuse-leap-15.5
echo Loading openSUSE Leap 15.5 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile openSUSE-Leap-15.5-DVD-x86_64-Media.iso
set isoaddr install=http://${svraddr}/imgs/opensuse-leap-15.5
set install autoyast=http://${svraddr}/conf/autoyast/autoinst_leap-15.5_dvd.xml
set netname sv-opensuse.workgroup
set network ifcfg=eth0=192.168.1.1/24,192.168.1.254,192.168.1.254,workgroup hostname=${netname}
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 load_ramdisk=1 showopts ramdisk_size=4096
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/opensuse-leap-15.5
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/boot/x86_64/loader/linux ${options} --- || goto error
initrd ${knladdr}/boot/x86_64/loader/initrd || goto error
boot || goto error
exit

:opensuse-leap-15.6
echo Loading openSUSE Leap 15.6 ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile openSUSE-Leap-15.6-DVD-x86_64-Media.iso
set isoaddr install=http://${svraddr}/imgs/opensuse-leap-15.6
set install autoyast=http://${svraddr}/conf/autoyast/autoinst_leap-15.6_dvd.xml
set netname sv-opensuse.workgroup
set network ifcfg=eth0=192.168.1.1/24,192.168.1.254,192.168.1.254,workgroup hostname=${netname}
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 load_ramdisk=1 showopts ramdisk_size=4096
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/opensuse-leap-15.6
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/boot/x86_64/loader/linux ${options} --- || goto error
initrd ${knladdr}/boot/x86_64/loader/initrd || goto error
boot || goto error
exit

:opensuse-tumbleweed
echo Loading openSUSE Tumbleweed ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile openSUSE-Tumbleweed-DVD-x86_64-Current.iso
set isoaddr install=http://${svraddr}/imgs/opensuse-tumbleweed
set install autoyast=http://${svraddr}/conf/autoyast/autoinst_tumbleweed_dvd.xml
set netname sv-opensuse.workgroup
set network ifcfg=ens160=192.168.1.1/24,192.168.1.254,192.168.1.254,workgroup hostname=${netname}
set locales locale=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 load_ramdisk=1 showopts ramdisk_size=4096
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/opensuse-tumbleweed
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/boot/x86_64/loader/linux ${options} --- || goto error
initrd ${knladdr}/boot/x86_64/loader/initrd || goto error
boot || goto error
exit

:windows-10
echo Loading Windows 10 ...
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server} ||
set cfgaddr http://${svraddr}/conf/windows
set knladdr http://${svraddr}/imgs/windows-10
echo Loading kernel and initrd ...
kernel ipxe/wimboot
initrd ${cfgaddr}/unattend.xml                 unattend.xml || goto error
initrd ${cfgaddr}/shutdown.cmd                 shutdown.cmd || goto error
initrd -n install.cmd ${cfgaddr}/inst_w10.cmd  install.cmd  || goto error
initrd ${cfgaddr}/winpeshl.ini                 winpeshl.ini || goto error
initrd ${knladdr}/boot/bcd                     BCD          || goto error
initrd ${knladdr}/boot/boot.sdi                boot.sdi     || goto error
initrd -n boot.wim ${knladdr}/sources/boot.wim boot.wim     || goto error
boot || goto error
exit

:windows-11
echo Loading Windows 11 ...
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server} ||
set cfgaddr http://${svraddr}/conf/windows
set knladdr http://${svraddr}/imgs/windows-11
echo Loading kernel and initrd ...
kernel ipxe/wimboot
initrd ${cfgaddr}/unattend.xml                 unattend.xml || goto error
initrd ${cfgaddr}/shutdown.cmd                 shutdown.cmd || goto error
initrd -n install.cmd ${cfgaddr}/inst_w11.cmd  install.cmd  || goto error
initrd ${cfgaddr}/winpeshl.ini                 winpeshl.ini || goto error
initrd ${knladdr}/boot/bcd                     BCD          || goto error
initrd ${knladdr}/boot/boot.sdi                boot.sdi     || goto error
initrd -n boot.wim ${knladdr}/sources/boot.wim boot.wim     || goto error
boot || goto error
exit

:debian-live-11
echo Loading Debian 11 Live ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-live-11.10.0-amd64-lxde.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_desktop.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-live-11
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/d-i/vmlinuz ${options} --- || goto error
initrd ${knladdr}/d-i/initrd.gz || goto error
boot || goto error
exit

:debian-live-12
echo Loading Debian 12 Live ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-live-12.6.0-amd64-lxde.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_desktop.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-live-12
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install/initrd.gz || goto error
boot || goto error
exit

:debian-live-testing
echo Loading Debian testing Live ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-live-testing-amd64-lxde.iso
set isoaddr fetch=http://${svraddr}/isos/${isofile}
set install auto=true url=http://${svraddr}/conf/preseed/ps_debian_desktop.cfg
set netname sv-debian.workgroup
set network netcfg/disable_autoconfig=true netcfg/choose_interface=ens160 netcfg/get_hostname=${netname} netcfg/get_ipaddress=192.168.1.1 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.254 netcfg/get_nameservers=192.168.1.254
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-live-testing
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/install/vmlinuz ${options} --- || goto error
initrd ${knladdr}/install/initrd.gz || goto error
boot || goto error
exit

:ubuntu-desktop-20.04
echo Loading Ubuntu 20.04 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-20.04.6-desktop-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt auto=true url=http://${svraddr}/conf/preseed/ps_ubiquity_desktop.cfg
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:static:192.168.1.254
set locales debian-installer/locale=ja_JP.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-20.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-desktop-22.04
echo Loading Ubuntu 22.04 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-22.04.4-desktop-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt auto=true url=http://${svraddr}/conf/preseed/ps_ubiquity_desktop.cfg
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:static:192.168.1.254
set locales debian-installer/locale=ja_JP.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-22.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-desktop-23.10
echo Loading Ubuntu 23.10 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-23.10.1-desktop-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_desktop
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-23.10
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-desktop-24.04
echo Loading Ubuntu 24.04 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-24.04-desktop-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_desktop
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-24.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-desktop-oracular
echo Loading Ubuntu oracular Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile oracular-desktop-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt autoinstall ds=nocloud-net;s=http://${svraddr}/conf/nocloud/ubuntu_desktop
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0::ens160:static:192.168.1.254 hostname=${netname}
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-oracular
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:ubuntu-legacy-23.10
echo Loading Ubuntu 23.10 Legacy Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-23.10-desktop-legacy-amd64.iso
set isoaddr iso-url=http://${svraddr}/isos/${isofile}
set install automatic-ubiquity noprompt auto=true url=http://${svraddr}/conf/preseed/ps_ubiquity_desktop.cfg
set netname sv-ubuntu.workgroup
set network ip=192.168.1.1::192.168.1.254:255.255.255.0:${netname}:ens160:static:192.168.1.254
set locales debian-installer/locale=ja_JP.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-legacy-23.10
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:live-debian-live-11
echo Loading Debian 11 Live ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-live-11.10.0-amd64-lxde.iso
set isoaddr boot=live components fetch=http://${svraddr}/imgs/debian-live-11/live/filesystem.squashfs
set network ip=dhcp
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-live-11
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/live/vmlinuz-5.10.0-30-amd64 ${options} --- || goto error
initrd ${knladdr}/live/initrd.img-5.10.0-30-amd64 || goto error
boot || goto error
exit

:live-debian-live-12
echo Loading Debian 12 Live ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-live-12.6.0-amd64-lxde.iso
set isoaddr boot=live components fetch=http://${svraddr}/imgs/debian-live-12/live/filesystem.squashfs
set network ip=dhcp
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-live-12
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/live/vmlinuz ${options} --- || goto error
initrd ${knladdr}/live/initrd.img || goto error
boot || goto error
exit

:live-debian-live-testing
echo Loading Debian testing Live ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile debian-live-testing-amd64-lxde.iso
set isoaddr boot=live components fetch=http://${svraddr}/imgs/debian-live-testing/live/filesystem.squashfs
set network ip=dhcp
set locales locales=ja_JP.UTF-8 timezone=Asia/Tokyo keyboard-layouts=jp keyboard-model=jp106
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/debian-live-testing
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/live/vmlinuz ${options} --- || goto error
initrd ${knladdr}/live/initrd.img || goto error
boot || goto error
exit

:live-ubuntu-desktop-20.04
echo Loading Ubuntu 20.04 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-20.04.6-desktop-amd64.iso
set isoaddr boot=casper maybe-ubiquity iso-url=http://${svraddr}/isos/${isofile}
set network ip=dhcp
set locales debian-installer/locale=ja_JP.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-20.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:live-ubuntu-desktop-22.04
echo Loading Ubuntu 22.04 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-22.04.4-desktop-amd64.iso
set isoaddr boot=casper maybe-ubiquity iso-url=http://${svraddr}/isos/${isofile}
set network ip=dhcp
set locales debian-installer/locale=ja_JP.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-22.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:live-ubuntu-desktop-23.10
echo Loading Ubuntu 23.10 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-23.10.1-desktop-amd64.iso
set isoaddr boot=casper layerfs-path=minimal.standard.live.squashfs iso-url=http://${svraddr}/isos/${isofile}
set network ip=dhcp
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-23.10
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:live-ubuntu-desktop-24.04
echo Loading Ubuntu 24.04 Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-24.04-desktop-amd64.iso
set isoaddr boot=casper layerfs-path=minimal.standard.live.squashfs iso-url=http://${svraddr}/isos/${isofile}
set network ip=dhcp
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-24.04
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:live-ubuntu-desktop-oracular
echo Loading Ubuntu oracular Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile oracular-desktop-amd64.iso
set isoaddr boot=casper layerfs-path=minimal.standard.live.squashfs iso-url=http://${svraddr}/isos/${isofile}
set network ip=dhcp
set locales debian-installer/locale=en_US.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-desktop-oracular
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:live-ubuntu-legacy-23.10
echo Loading Ubuntu 23.10 Legacy Desktop ...
set root tftp
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server}' ||
set isofile ubuntu-23.10-desktop-legacy-amd64.iso
set isoaddr boot=casper maybe-ubiquity iso-url=http://${svraddr}/isos/${isofile}
set network ip=dhcp
set locales debian-installer/locale=ja_JP.UTF-8 keyboard-configuration/layoutcode=jp keyboard-configuration/modelcode=jp106
set ramdisk root=/dev/ram0 ramdisk_size=1500000
set options ${isoaddr} ${install} ${network} ${locales} ${ramdisk} fsck.mode=skip
set knladdr http://${svraddr}/imgs/ubuntu-legacy-23.10
form                                    Configure Boot Options
item options                            Boot Options
present ||
echo Loading kernel and initrd ...
kernel ${knladdr}/casper/vmlinuz ${options} --- || goto error
initrd ${knladdr}/casper/initrd || goto error
boot || goto error
exit

:memtest86+
echo Loading Memtest86+ ...
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server} ||
set knladdr http://${svraddr}/imgs/memtest86+
iseq ${platform} efi && set knlfile ${knladdr}/EFI/BOOT/memtest || set knlfile ${knladdr}/boot/memtest
echo Loading kernel ...
kernel ${knlfile} || goto error
boot || goto error
exit

:winpe-x64
echo Loading WinPE x64 ...
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server} ||
set knladdr http://${svraddr}/imgs/winpe-x64
echo Loading kernel and initrd ...
kernel ipxe/wimboot
initrd ${knladdr}/Boot/BCD                     BCD      || goto error
initrd ${knladdr}/Boot/boot.sdi                boot.sdi || goto error
initrd -n boot.wim ${knladdr}/sources/boot.wim boot.wim || goto error
boot || goto error
exit

:ati2020x64
echo Loading ATI2020x64 ...
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server} ||
set knladdr http://${svraddr}/imgs/ati2020x64
echo Loading kernel and initrd ...
kernel ipxe/wimboot
initrd ${knladdr}/Boot/BCD                     BCD      || goto error
initrd ${knladdr}/Boot/boot.sdi                boot.sdi || goto error
initrd -n boot.wim ${knladdr}/sources/boot.wim boot.wim || goto error
boot || goto error
exit

:ati2020x86
echo Loading ATI2020x86 ...
set svraddr 192.168.1.10
isset ${next-server} && set svraddr ${next-server} ||
set knladdr http://${svraddr}/imgs/ati2020x86
echo Loading kernel and initrd ...
kernel ipxe/wimboot
initrd ${knladdr}/Boot/BCD                     BCD      || goto error
initrd ${knladdr}/Boot/boot.sdi                boot.sdi || goto error
initrd -n boot.wim ${knladdr}/sources/boot.wim boot.wim || goto error
boot || goto error
exit

:shell
echo "Booting iPXE shell ..."
shell
goto start

:shutdown
echo "System shutting down ..."
poweroff
exit

:restart
echo "System rebooting ..."
reboot
exit

:error
prompt Press any key to continue
exit

:exit
exit
```
  
## 実行結果  
  
| Media        | File name                                  | kernel  | Lood | Boot | Inst | Note                                       |
| ------------ | ------------------------------------------ | ------- | :-----: | :-----: | :-----: | ------------------------------------------ |
| mini.iso     | mini-buster-amd64.iso                      | 4.19.0  |    O    |    X    |    -    | Crash during startup                       |
|              | mini-bullseye-amd64.iso                    | 5.10.0  |    O    |    O    |    O    | Network installation only                  |
|              | mini-bookworm-amd64.iso                    | 6.1.0   |    O    |    O    |    O    | "                                          |
|              | mini-trixie-amd64.iso                      | 6.1.0   |    -    |    -    |    -    | Kernel module mismatch                     |
|              | mini-testing-amd64.iso                     | 6.8.12  |    O    |    O    |    O    | Network installation only                  |
|              | mini-bionic-amd64.iso                      | 4.15.0  |    O    |    X    |    -    | Crash during startup                       |
|              | mini-focal-amd64.iso                       | 5.4.0   |    O    |    X    |    -    | "                                          |
| Net install  | debian-10.13.0-amd64-netinst.iso           | 4.19.0  |    O    |    X    |    -    | Crash during startup                       |
|              | debian-11.9.0-amd64-netinst.iso            | 5.10.0  |    O    |    O    |    X    | Unable to detect media                     |
|              | debian-12.5.0-amd64-netinst.iso            | 6.1.0   |    O    |    O    |    X    | "                                          |
|              | debian-testing-amd64-netinst.iso           | 6.8.12  |    O    |    O    |    X    | "                                          |
|              | Fedora-Server-netinst-x86_64-39-1.5.iso    | 6.5.6   |    O    |    O    |    O    | No special mention                         |
|              | Fedora-Server-netinst-x86_64-40-1.14.iso   | 6.8.5   |    O    |    O    |    O    | "                                          |
|              | CentOS-Stream-9-latest-x86_64-boot.iso     | 5.14.0  |    O    |    O    |    O    | "                                          |
|              | AlmaLinux-9-latest-x86_64-boot.iso         | 5.14.0  |    O    |    O    |    O    | "                                          |
|              | Rocky-8.9-x86_64-boot.iso                  | 4.18.0  |    O    |    X    |    -    | Crash during startup                       |
|              | Rocky-9-latest-x86_64-boot.iso             | 5.14.0  |    O    |    O    |    O    | No special mention                         |
|              | MIRACLELINUX-8.8-rtm-minimal-x86_64.iso    | 4.18.0  |    O    |    X    |    -    | Crash during startup                       |
|              | MIRACLELINUX-9.2-rtm-minimal-x86_64.iso    | 5.14.0  |    O    |    O    |    O    | No special mention                         |
|              | openSUSE-Leap-15.5-NET-x86_64-Media.iso    | 5.14.21 |    O    |    O    |    O    | No special mention                         |
|              | openSUSE-Leap-15.6-NET-x86_64-Media.iso    | 6.4.0   |    O    |    O    |    O    | "                                          |
|              | openSUSE-Tumbleweed-NET-x86_64-Current.iso | 6.9.5   |    O    |    O    |    O    | "                                          |
| DVD          | debian-10.13.0-amd64-DVD-1.iso             | 4.19.0  |    O    |    X    |    -    | Crash during startup                       |
|              | debian-11.9.0-amd64-DVD-1.iso              | 5.10.0  |    O    |    O    |    X    | Unable to detect media                     |
|              | debian-12.5.0-amd64-DVD-1.iso              | 6.1.0   |    O    |    O    |    X    | "                                          |
|              | debian-testing-amd64-DVD-1.iso             | 6.8.12  |    O    |    O    |    X    | "                                          |
|              | ubuntu-18.04.6-server-amd64.iso            | 4.15.0  |    O    |    X    |    -    | Crash during startup                       |
|              | ubuntu-18.04.6-live-server-amd64.iso       | 4.15.0  |    O    |    X    |    -    | "                                          |
|              | ubuntu-20.04.6-live-server-amd64.iso       | 5.4.0   |    O    |    X    |    -    | "                                          |
|              | ubuntu-22.04.4-live-server-amd64.iso       | 5.15.0  |    O    |    X    |    -    | Hangs during startup                       |
|              | ubuntu-23.10-live-server-amd64.iso         | 6.5.0   |    O    |    O    |    O    | No special mention                         |
|              | ubuntu-24.04-live-server-amd64.iso         | 6.8.0   |    O    |    O    |    O    | "                                          |
|              | oracular-live-server-amd64.iso             | 6.8.0   |    O    |    O    |    O    | "                                          |
|              | Fedora-Server-dvd-x86_64-39-1.5.iso        | 6.5.6   |    O    |    O    |    O    | No special mention                         |
|              | Fedora-Server-dvd-x86_64-40-1.14.iso       | 6.8.5   |    O    |    O    |    O    | "                                          |
|              | CentOS-Stream-9-latest-x86_64-dvd1.iso     | 5.14.0  |    O    |    O    |    O    | "                                          |
|              | AlmaLinux-9-latest-x86_64-dvd.iso          | 5.14.0  |    O    |    O    |    O    | "                                          |
|              | Rocky-8.9-x86_64-dvd1.iso                  | 4.18.0  |    O    |    X    |    -    | Crash during startup                       |
|              | Rocky-9-latest-x86_64-dvd.iso              | 5.14.0  |    O    |    O    |    O    | No special mention                         |
|              | MIRACLELINUX-8.8-rtm-x86_64.iso            | 4.18.0  |    O    |    X    |    -    | Crash during startup                       |
|              | MIRACLELINUX-9.2-rtm-x86_64.iso            | 5.14.0  |    O    |    O    |    O    | No special mention                         |
|              | openSUSE-Leap-15.5-DVD-x86_64-Media.iso    | 5.14.21 |    O    |    O    |    O    | No special mention                         |
|              | openSUSE-Leap-15.6-DVD-x86_64-Media.iso    | 6.4.0   |    O    |    O    |    O    | "                                          |
|              | openSUSE-Tumbleweed-DVD-x86_64-Current.iso | 6.9.5   |    O    |    O    |    O    | "                                          |
|              | Win10_22H2_Japanese_x64.iso                |    -    |    O    |    O    |    O    | samba connection requires manual operation |
|              | Win11_23H2_Japanese_x64v2_custom.iso       |    -    |    O    |    O    |    O    | "                                          |
| Live DVD     | debian-live-10.13.0-amd64-lxde.iso         | 4.19.0  |    O    |    X    |    -    | Crash during startup                       |
|              | debian-live-11.9.0-amd64-lxde.iso          | 5.10.0  |    O    |    O    |    X    | Unable to detect media                     |
|              | debian-live-12.5.0-amd64-lxde.iso          | 6.1.0   |    O    |    O    |    X    | "                                          |
|              | debian-live-testing-amd64-lxde.iso         | 6.7.12  |    O    |    O    |    X    | "                                          |
|              | ubuntu-20.04.6-desktop-amd64.iso           | 5.15.0  |    O    |    O    |    X    | Unable to detect media                     |
|              | ubuntu-22.04.4-desktop-amd64.iso           | 6.5.0   |    O    |    O    |    X    | "                                          |
|              | ubuntu-23.10.1-desktop-amd64.iso           | 6.5.0   |    O    |    O    |    O    | Minimum memory is 8GiB                     |
|              | ubuntu-24.04-desktop-amd64.iso             | 6.8.0   |    O    |    O    |    X    | Unable to start install mode               |
|              | ubuntu-23.10-desktop-legacy-amd64.iso      | 6.5.0   |    O    |    O    |    O    | No special mention                         |
|              | oracular-desktop-amd64.iso                 | 6.8.0   |    O    |    O    |    X    | Hangs during install                       |
| Live mode    | debian-live-10.13.0-amd64-lxde.iso         | 4.19.0  |    O    |    X    |    -    | Crash during startup                       |
|              | debian-live-11.9.0-amd64-lxde.iso          | 5.10.0  |    O    |    O    |    -    | Boot of live mode                          |
|              | debian-live-12.5.0-amd64-lxde.iso          | 6.1.0   |    O    |    O    |    -    | "                                          |
|              | debian-live-testing-amd64-lxde.iso         | 6.7.12  |    O    |    O    |    -    | "                                          |
|              | ubuntu-20.04.6-desktop-amd64.iso           | 5.15.0  |    O    |    -    |    -    | Unable to detect media                     |
|              | ubuntu-22.04.4-desktop-amd64.iso           | 6.5.0   |    O    |    -    |    -    | "                                          |
|              | ubuntu-23.10.1-desktop-amd64.iso           | 6.5.0   |    O    |    O    |    -    | Boot of live mode                          |
|              | ubuntu-24.04-desktop-amd64.iso             | 6.8.0   |    O    |    O    |    -    | Unable to start live mode                  |
|              | ubuntu-23.10-desktop-legacy-amd64.iso      | 6.5.0   |    O    |    O    |    -    | Minimum memory is 8GiB                     |
|              | oracular-desktop-amd64.iso                 | 6.8.0   |    O    |    O    |    -    | "                                          |
| System tools | mt86plus_7.00_64.grub.iso                  |    -    |    O    |    O    |    -    | No special mention                         |
|              | WinPEx64.iso                               |    -    |    O    |    O    |    -    | "                                          |
|              | WinPE_ATI2020x64.iso                       |    -    |    O    |    O    |    -    | "                                          |
|              | WinPE_ATI2020x86.iso                       |    -    |    O    |    O    |    -    | "                                          |
  
Note:  
* Ubuntu Desktop minimum memory is 8GiB  
  
## 参照  
  
| Application | URL                                                |
| ----------- | -------------------------------------------------- |
| Markdown    | https://qiita.com/Qiita/items/c686397e4a0f4f11683d |
| Dnsmasq     | https://man.archlinux.org/man/dnsmasq.8            |
| iPXE(WinPE) | https://ipxe.org/howto/winpe                       |

::: note info
構成ファイルの詳細については各マニュアルを参照
:::
  
## 参考  
  
::: note info
最小限の環境で確認する場合は[この手順](https://github.com/office-itou/Linux/blob/master/base-pc/Readme_manual_setup.md)でも可能
:::