Then I followed this for booting CentOS 7 (since the above guide didn’t have a specific set of steps for that):
When I actually select the option in PXELinux to boot, it loads the image correctly, but I think it’s failing to append the initrd.img.
Here is my default menu for PXELinux:
DEFAULT vesamenu.c32
PROMPT 0
MENU TITLE PXE Boot Menu (x64)
MENU INCLUDE pxelinux.cfg/graphics.conf
MENU AUTOBOOT Starting Local System in 8 seconds
# Option 1 - Exit PXE Linux & boot normally
LABEL bootlocal
MENU label ^Boot Normally
MENU default
localboot 0
timeout 80
TOTALTIMEOUT 9000
# Option 2 - Run WDS
LABEL WDS
MENU LABEL ^Windows Deployment Services - Install Windows
KERNEL pxeboot.0
# Option 3 - Install CentOS 7
LABEL CentOS7
MENU LABEL Install CentOS 7 - 1708
KERNEL /Linux/CentOS/images/pxeboot/vmlinuz
APPEND initrd=/Linux/CentOS/images/pxeboot/initrd.img
# Option 4 - Exit PXE Linux
LABEL Abort
MENU LABEL E^xit
KERNEL abortpxe.0
Note that I’ve omitted these options form the APPEND in that blog post:
inst.repo=[IP of your WDS server]/CentOS/7.2 ks=[IP of your WDS server]/CentOS/7.2/centos-base-ks.cfg
That’s because I don’t have a Kickstart file (ks), and so I shouldn’t need an Installation Repo (inst.repo) as I intend to do the first installation manually.
However, booting this way leads to a bunch of lines showing that dracut can’t find /dev/root and boot fails because it doesn’t exist.
I’m not experienced enough with this to know what I’m doing wrong given that I’m using the settings the veeam guide had listed.
Reading through some stuff about that, it says this error only occurs when you use an initrd.img and a vmlinuz from different installation media with different versions.
However, I pulled both from the same ISO so I have no idea why that’s a thing?
That’s exactly what it says to do in that guide you linked:
If your machine has no DVD drive you can also download CentOS 7 DVD ISO locally using wget or curl utilities from a CentOS mirror and mount it.
After the DVD content is made available, create the centos7 directory and copy CentOS 7 bootable kernel and initrd images from the DVD mounted location to centos7 folder structure.
I am, but I’m using Windows Deployment Services to boot PXELinux. So functionally, all PXELinux guides work with this as far as I can tell.
Welp, it works when I point it here: method=http://mirror.centos.org/centos/7/os/x86_64/
It doesn’t work when I point it here: method=tftp://server-hostname/REMINST/Boot/x64/Linux/CentOS
Which is the file share given by Windows Deployment Services with the contents of the ISO copied there.
It doesn’t work when I have no method stated either.
I’d rather not rely on downloading the OS every time and just use what I have locally.
… I think I know what I’ll do. The point of this PXE setup is to use a bunch of old computers to create a GlusterFS cluster. Once I have the cluster setup, I will configure a FTP with that as the storage point and just store it there with that as the destination. That should work.
I don’t mean to necro this. But there’s a simple solution to this. Discovered it while I was setting this up in my own environment.
Install nfs on the WDS server you;re hosting this on.
Server Manager ->Install Roles ->Server Roles->File and Storage Services->File and iSCSI Services ->Server for NFS
Enable NFS sharing to read only on the centOS repo copy.
Right click the folder and click NFS sharing
after this append the method pointing to the repo so like this as example
append initrd=Linux/CentOS7/images/pxeboot/initrd.img method=nfs:SERVERNAME:/CentOS7 devfs=nomount