I'm back home now and executed all above three steps and got following results:
pxe-install succeeded with two messages:
Then I noticed I had to do two important updates:
1) Replace the IP of the dhcp proxy with the IP of the Synology nfs server in cmdline and etc/fstab (192.168.0.9 <=> Synology, 192.168.0.194 <=> dhcp proxy)
2) Add the volume in front of the export path. Synology exports all nfs directories prefixed with the volume (/volume1/pxe-images instead of /pxe-images)
But other than that pxe-boot and pxe-root were created and populated successfully.
Original files generated by pxe-add:Updated files:When I powered on the RPi3 I then got the rainbow screen and the initial boot messages but then the client was unable to mount pxe-root: Mount call failed: Permission denied
When I initially setup the dhcp proxy by hand I had /pxe-boot and /pxe-root exported on my Synology and everything worked fine. So I moved /pxe-images/pxe-boot and /pxe-images/pxe-root into /pxe-boot and /pxe-root on the Synology, exported both directories, updated the nfs mounts in cmdline and etc/fstab without /pxe-images and then the RPi3 boots successfully. As far as I remember you initially didn't use pxe-images as the root folder for pxe-boot and pxe-root. I agree it's a good idea to have a common root directory for the pxe stuff but for some reasons this doesn't work on Synology.
Whoever want's to have the root filesystem located on a Synology and use RonRs nice scripts to support PXE clients has to keep in mind and update the scripts accordingly:
1) Don't use a root folder pxe-images and have pxe-root and pxe-boot exported directly
2) Prefix nfs exports with the volume string like /volume1 in cmdline and etc/fstab
3) Update the dhcp proxy IP address for the nfs exports of pxe-root to the IP address of the Synology nfs server
pxe-install succeeded with two messages:
Code:
sudo ./pxe-add 87f728f5 /mnt/trixie64.img Access will be granted to ALLAdd 87f728f5 (/mnt/trixie64.img) to PXE Network Boot Server (y/n)? yAdding BOOT filesAdding ROOT filesexportfs: /pxe-images/pxe-root/87f728f5 requires fsid= for NFS exportexportfs: /pxe-images/pxe-boot/87f728f5 requires fsid= for NFS export87f728f5 (/mnt/trixie64.img) added to PXE Network Boot Server1) Replace the IP of the dhcp proxy with the IP of the Synology nfs server in cmdline and etc/fstab (192.168.0.9 <=> Synology, 192.168.0.194 <=> dhcp proxy)
2) Add the volume in front of the export path. Synology exports all nfs directories prefixed with the volume (/volume1/pxe-images instead of /pxe-images)
But other than that pxe-boot and pxe-root were created and populated successfully.
Original files generated by pxe-add:
Code:
pi@raspberrypi:~/pxe-boot $ mount | grep synosynolix:/volume1/pxe-images on /pxe-images type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.0.194,local_lock=none,addr=192.168.0.9,_netdev)pi@raspberrypi:~/pxe-boot $ pi@raspberrypi:~/pxe-boot $ ls -la /pxe-images/pxe-boot/total 52drwxr-xr-x 1 root root 40 Jan 7 16:25 .drwxrwxrwx 1 root root 44 Jan 7 16:22 ..drwxr-xr-x 1 root root 1506 Jan 7 16:32 87f728f5-rwxr-xr-x 1 root root 52624 Jan 7 16:22 bootcode.binpi@raspberrypi:~/pxe-boot $ ls -la /pxe-images/pxe-root/total 0drwxr-xr-x 1 root root 16 Jan 7 16:25 .drwxrwxrwx 1 root root 44 Jan 7 16:22 ..drwxr-xr-x 1 root root 142 Dec 28 17:03 87f728f5pi@raspberrypi:~/pxe-boot $ cat /pxe-images/pxe-boot/87f728f5/cmdline.txt console=serial0,115200 console=tty1 root=/dev/nfs nfsroot=192.168.0.194:/pxe-images/pxe-root/87f728f5,vers=3 rw ip=dhcp rootwaitpi@raspberrypi:~/pxe-boot $ cat /pxe-images/pxe-root/87f728f5/etc/fstab proc /proc proc defaults 0 0192.168.0.194:/pxe-images/pxe-boot/87f728f5 /boot/firmware nfs defaults,vers=4.1,proto=tcp 0 0192.168.0.194:/pxe-images/pxe-root/87f728f5 / nfs defaults,vers=4.1,proto=tcp 0 0Code:
pi@raspberrypi:~/pxe-boot $ cat /pxe-images/pxe-boot/87f728f5/cmdline.txt console=serial0,115200 console=tty1 root=/dev/nfs nfsroot=192.168.0.9:/volume1/pxe-images/pxe-root/87f728f5,vers=3 rw ip=dhcp rootwaitpi@raspberrypi:~/pxe-boot $ cat /pxe-images/pxe-root/87f728f5/etc/fstab proc /proc proc defaults 0 0192.168.0.194:/pxe-images/pxe-boot/87f728f5 /boot/firmware nfs defaults,vers=4.1,proto=tcp 0 0192.168.0.9:/volume1/pxe-images/pxe-root/87f728f5 / nfs defaults,vers=4.1,proto=tcp 0 0When I initially setup the dhcp proxy by hand I had /pxe-boot and /pxe-root exported on my Synology and everything worked fine. So I moved /pxe-images/pxe-boot and /pxe-images/pxe-root into /pxe-boot and /pxe-root on the Synology, exported both directories, updated the nfs mounts in cmdline and etc/fstab without /pxe-images and then the RPi3 boots successfully. As far as I remember you initially didn't use pxe-images as the root folder for pxe-boot and pxe-root. I agree it's a good idea to have a common root directory for the pxe stuff but for some reasons this doesn't work on Synology.
Whoever want's to have the root filesystem located on a Synology and use RonRs nice scripts to support PXE clients has to keep in mind and update the scripts accordingly:
1) Don't use a root folder pxe-images and have pxe-root and pxe-boot exported directly
2) Prefix nfs exports with the volume string like /volume1 in cmdline and etc/fstab
3) Update the dhcp proxy IP address for the nfs exports of pxe-root to the IP address of the Synology nfs server
Statistics: Posted by framp — Wed Jan 07, 2026 4:20 pm