From 7cf3e98090a3e9f0a9cc960d07c5f259adab6a19 Mon Sep 17 00:00:00 2001 From: Marius Cramer <m.cramer@pixcept.de> Date: Thu, 14 Nov 2013 08:39:08 -0500 Subject: [PATCH] Merge remote-tracking branch 'origin/stable-3.0.5' --- server/lib/classes/system.inc.php | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 57b1e1f..a1e7c00 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -1597,6 +1597,23 @@ exec($cmd, $output, $return_var); return $return_var == 0 ? true : false; } + + function getinitcommand($servicename, $action, $init_script_directory = ''){ + global $conf; + // systemd + if(is_executable('/bin/systemd')){ + return 'systemctl '.$action.' '.$servicename.'.service'; + } + // upstart + if(is_executable('/sbin/initctl')){ + exec('/sbin/initctl version 2>/dev/null | /bin/grep -q upstart', $retval['output'], $retval['retval']); + if(intval($retval['retval']) == 0) return 'service '.$servicename.' '.$action; + } + // sysvinit + if($init_script_directory == '') $init_script_directory = $conf['init_scripts']; + if(substr($init_script_directory, -1) === '/') $init_script_directory = substr($init_script_directory, 0, -1); + return $init_script_directory.'/'.$servicename.' '.$action; + } } ?> -- Gitblit v1.9.1