Adjust check for iptables binary
[grml-terminalserver.git] / grml-terminalserver
index 1ce20ca..f3c8afc 100755 (executable)
@@ -154,7 +154,7 @@ function runIptables
 
 function startIptables
 {
-  if [ -x /sbin/iptables ] ; then
+  if [ -x $(command -v iptables) ] ; then
     if [[ $NAT_INTERFACE_ != "" ]]; then
        local nat_source_ip_=`netGetIp "$NAT_INTERFACE_" warn`
 
@@ -176,7 +176,7 @@ function startIptables
        fi
     fi
   else
-    warn "iptables executable not avilable"
+    warn "iptables executable not available"
   fi
 }
 
@@ -185,7 +185,7 @@ function stopIptables
   if [[ $IPTABLES_SNAT_ != "true" ]]; then
     return
   fi
-  if [ -x /sbin/iptables ] ; then
+  if [ -x $(command -v iptables) ] ; then
     if [[ $NAT_INTERFACE_ != "" ]]; then
        local nat_source_ip_=`netGetIp "$NAT_INTERFACE_" warn`
 
@@ -209,7 +209,11 @@ function createTftpConf
   removeTftpConf
 
   execute "mkdir -p $TFTPD_DATA_DIR_/pxelinux.cfg" die
-  execute "install -m 644 /usr/lib/syslinux/pxelinux.0 $TFTPD_DATA_DIR_" die
+  if [ -r /usr/lib/PXELINUX/pxelinux.0 ] ; then
+    execute "install -m 644 /usr/lib/PXELINUX/pxelinux.0 $TFTPD_DATA_DIR_" die
+  else # older versions of syslinux-common (<= 2:4.05+dfsg-6+deb7u1):
+    execute "install -m 644 /usr/lib/syslinux/pxelinux.0 $TFTPD_DATA_DIR_" die
+  fi
   if [ -d "$MOUNT_POINT_"/boot/release ] ; then
     cp -r "$MOUNT_POINT_"/boot/release "$TFTPD_DATA_DIR_"
   fi
@@ -217,7 +221,11 @@ function createTftpConf
   execute "install -m 644 $PXE_BOOT_MSG_ $TFTPD_DATA_DIR_" die
   [ -f "$PXE_BOOT_LOGO_" ] && execute "install -m 644 $PXE_BOOT_LOGO_ $TFTPD_DATA_DIR_" die
 
+  # PXE / BIOS boot (pxelinux)
   execute "source $TEMPLATE_CONFIG_DIR_/grub-pxelinux_config" die
+
+  # PXE / EFI boot (GRUB)
+  execute "source $TEMPLATE_CONFIG_DIR_/grub-shim_config" die
 }
 
 function stopTftp