Tftpboot
Tftpboot setting to boot diskless VME controllers
Create file /tftpboot/efi/boot/grub2/grub.cfg with following contents:
function load_video { insmod efi_gop insmod efi_uga insmod video_bochs insmod video_cirrus insmod all_video }
load_video set gfxpayload=keep insmod gzio set timeout=2 menuentry 'Diskless CentOS7 x86_64, any network device' --class redhat --class gnu-linux --class gnu --class os { linuxefi linux-install/CentOS7-x86_64-Diskless/vmlinuz-3.10.0-1062.9.1.el7.x86_64 zram=1 ip=::::::dhcp root=nfs:192.168.10.1:/diskless/CentOS7-devel/x86_64/root ro vga=0x305 module_blacklist=ipmi_si,ipmi_msghandler,ipmi_devintf,w83977f_wdt initrdefi linux-install/CentOS7-x86_64-Diskless/initramfs-jvme-3.10.0-1062.9.1.el7.x86_64.img }
Edit file /etc/dhcp/dhcpd.conf:
subnet 192.168.10.0 netmask 255.255.255.0 { option domain-name "jlab.org"; option domain-name-servers 129.57.32.100, 129.57.32.101; option routers 192.168.10.1; use-host-decl-names true; pool { range 192.168.10.2 192.168.10.20; deny dynamic bootp clients; allow unknown clients; } }
set vendorclass = option vendor-class-identifier; option pxe-system-type code 93 = unsigned integer 16; set pxetype = option pxe-system-type;
# DISKLESS Clients in here group { if substring(vendorclass, 0, 9)="PXEClient" { if pxetype=00:06 or pxetype=00:07 { filename "efi/boot/grub2/x86_64-efi/core.efi"; } else { filename "linux-install/pxelinux.0"; } } next-server 192.168.10.1; host test1 { hardware ethernet 00:20:38:03:10:34; fixed-address 192.168.10.4; } host test4 { hardware ethernet 00:20:38:10:14:f7; fixed-address 192.168.10.5; } } # Diskless clients group