diff --git a/setup.sh b/setup.sh index 951f96e16..53184af53 100755 --- a/setup.sh +++ b/setup.sh @@ -618,6 +618,9 @@ if [ ! -f "$config_dir/.pre-install" ]; then killmodenonesh=1 fi +# Test if we have systemd system +systemctlcmd=`which systemctl 2>/dev/null` + # Re-generating main scripts echo "Creating start and stop init scripts .." # Start main @@ -671,6 +674,14 @@ echo "#!/bin/sh" >$config_dir/.reload-init echo "echo Reloading Webmin server in $wadir" >>$config_dir/.reload-init echo "pidfile=\`grep \"^pidfile=\" $config_dir/miniserv.conf | sed -e 's/pidfile=//g'\`" >>$config_dir/.reload-init echo "kill -USR1 \`cat \$pidfile\`" >>$config_dir/.reload-init +if [ -x "$systemctlcmd" ]; then + current_version=`cat "$config_dir/version" 2>/dev/null` + ancient_version=`echo $current_version 1.993 | awk '{if ($1 < $2) print 1; else print 0}'` + if [ "$ancient_version" = "1" ];then + echo "$config_dir/.stop-init" >>$config_dir/.reload-init + echo "$config_dir/start" >>$config_dir/.reload-init + fi +fi # Pre install echo "#!/bin/sh" >$config_dir/.pre-install echo "$config_dir/.stop-init" >>$config_dir/.pre-install @@ -699,7 +710,6 @@ ln -s $config_dir/.restart-by-force-kill-init $config_dir/restart-by-force-kill ln -s $config_dir/.reload-init $config_dir/reload >/dev/null 2>&1 # For systemd create different start/stop scripts -systemctlcmd=`which systemctl 2>/dev/null` if [ -x "$systemctlcmd" ]; then rm -f $config_dir/stop $config_dir/start $config_dir/restart $config_dir/restart-by-force-kill $config_dir/reload