Problem: Hello, as part of our attempt to get off legacy systems we have stood up a new katello/foreman system however 1 class of hardware is not able to pxe as such our workaround if to shove the affected harware to a legacy tftp server we would like to get off that however. The issue in question seems to be that this line in a tftp map file “rg (.*)$ \1” is not able to be parsed correctly on RHEL8 and higher thus a marvel 10g card on Lenovo workstations cannot pxeboot.
The entire file is
cat /etc/tftpd.map
Convert backslashes to slashes
re ^bootmgr.exe boot/bootmgr.exe
re ^\Boot\ boot/
rg \ /
rg (.*)$ \1
this works fine on EL7 with tftpserver tftp-server-5.2-22.el7.x86_64 but in RHEL8.9 and higher with
tftp-server-5.2-27.el8.x86_64 it causes the tftpserver to stop serving all traffic as it seems the ‘$’ operator which should match to the end of the line isn’t supported any longer. Does anyone know of an expression that will remap the request string back to \1 ?
Expected outcome:
Allow the legacy tftpd.map file to still function as it did in RHEL7 or find a comparable expression to allow hardware to still be utilized.
Foreman and Proxy versions:
Old - foreman-2.2.1 with xinetd
New - foreman-3.8.0
Foreman and Proxy plugin versions:
Distribution and version:
RHEL7.9 vs RHEL8.9
Other relevant data: