CentOS 8
Sponsored Link

PXE Boot : Network Installation (UEFI)2020/02/12

 
Install CentOS to a client computer which starts on UEFI from a PXE Server via network.
[1]
[2] Download an ISO image of CentOS first to your PXE server.
On the example below, CentOS 8 ISO image is under [/home/iso].
[root@dlp ~]#
mkdir rpm

[root@dlp ~]#
dnf -y install --downloadonly --downloaddir=/root/rpm shim grub2-efi-x64
[root@dlp ~]#
cd rpm

[root@dlp rpm]#
rpm2cpio shim-x64-*.rpm | cpio -dimv

[root@dlp rpm]#
rpm2cpio grub2-efi-x64-*.rpm | cpio -dimv

[root@dlp rpm]#
cp ./boot/efi/EFI/BOOT/BOOTX64.EFI /var/lib/tftpboot/

[root@dlp rpm]#
cp ./boot/efi/EFI/centos/grubx64.efi /var/lib/tftpboot/

[root@dlp rpm]#
[root@dlp ~]#
mkdir -p /var/pxe/centos8

[root@dlp ~]#
mkdir /var/lib/tftpboot/centos8

[root@dlp ~]#
mount -t iso9660 -o loop,ro /home/iso/CentOS-8.1.1911-x86_64-dvd1.iso /var/pxe/centos8

[root@dlp ~]#
cp /var/pxe/centos8/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/centos8/
[root@dlp ~]#
vi /var/lib/tftpboot/grub.cfg
# create new

# replace PXE servers hostname or IP address to your own one

set timeout=30
menuentry 'Install CentOS 8' {
    linuxefi centos8/vmlinuz ip=dhcp inst.repo=http://10.0.0.30/centos8
    initrdefi centos8/initrd.img
}
[3] Install and Start Apache httpd, refer to here.
Next, add following settings.
[root@dlp ~]#
vi /etc/httpd/conf.d/pxeboot.conf
# create new

Alias /centos8 /var/pxe/centos8
<Directory /var/pxe/centos8>
    Options Indexes FollowSymLinks
    # access permission
    Require ip 127.0.0.1 10.0.0.0/24
</Directory>

[root@dlp ~]#
systemctl restart httpd

[4] Enable network booting on UEFI settings of client computer and start it, then installation menu you set is shown, push Enter key to proceed to install.
[5] Installer starts. It's common procedure for installation after this point.
Matched Content