diff options
author | khali <khali@7894878c-1315-0410-8ee3-d5d059ff63e0> | 2015-07-06 11:51:24 +0000 |
---|---|---|
committer | khali <khali@7894878c-1315-0410-8ee3-d5d059ff63e0> | 2015-07-06 11:51:24 +0000 |
commit | 0624a34840bb55a7a46f2489a0add31534119f89 (patch) | |
tree | e77b98294c782d47bf153cff8614a89ef581431e | |
parent | 64e07917d979f15708bc58dab47ab1452899ca03 (diff) | |
download | lm-sensors-0624a34840bb55a7a46f2489a0add31534119f89.tar.gz |
sensors-detect: Fix systemd paths
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@6303 7894878c-1315-0410-8ee3-d5d059ff63e0
-rw-r--r-- | CHANGES | 3 | ||||
-rwxr-xr-x | prog/detect/sensors-detect | 53 |
2 files changed, 35 insertions, 21 deletions
@@ -1,6 +1,9 @@ lm-sensors CHANGES file ----------------------- +SVN HEAD + sensors-detect: Fix systemd paths + 3.4.0 (2015-06-25) documentation: Update the note about libsensors license sensors.conf.5: Enhance the hysteresis documentation diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect index fb6658c0..6c0c5664 100755 --- a/prog/detect/sensors-detect +++ b/prog/detect/sensors-detect @@ -2728,7 +2728,7 @@ sub isa_read_i5d6 # AUTODETECTION # ################# -use vars qw($dev_i2c $sysfs_root); +use vars qw($dev_i2c $sysfs_root $systemd_systemctl $systemd_system_dir); sub initialize_conf { @@ -2789,6 +2789,19 @@ sub initialize_conf exit -1; } } + + # Detect systemd presence and paths + if (-x "/usr/bin/systemctl") { + $systemd_systemctl = "/usr/bin/systemctl"; + } elsif (-x "/bin/systemctl") { + $systemd_systemctl = "/bin/systemctl"; + } + + if (-d "/usr/lib/systemd/system") { + $systemd_system_dir = "/usr/lib/systemd/system"; + } elsif (-d "/lib/systemd/system") { + $systemd_system_dir = "/lib/systemd/system"; + } } # [0] -> VERSION @@ -7090,19 +7103,16 @@ EOT print SYSCONFIG "HWMON_MODULES=\"", join(" ", @{$hwmon_modules}), "\"\n"; close(SYSCONFIG); - if (-x "/bin/systemctl" && -d "/lib/systemd/system" && - ! -f "/lib/systemd/system/lm_sensors.service") { - print "Copy prog/init/lm_sensors.service to /lib/systemd/system\n". - "and run 'systemctl enable lm_sensors.service'\n". - "for initialization at boot time.\n"; - return; - } - - if (-x "/bin/systemctl" && - -f "/lib/systemd/system/lm_sensors.service") { - system("/bin/systemctl", "enable", "lm_sensors.service"); - system("/bin/systemctl", "start", "lm_sensors.service"); - # All done, don't check for /etc/init.d/lm_sensors + if ($systemd_systemctl && $systemd_system_dir) { + if (-f "$systemd_system_dir/lm_sensors.service") { + system($systemd_systemctl, "enable", "lm_sensors.service"); + system($systemd_systemctl, "start", "lm_sensors.service"); + # All done, don't check for /etc/init.d/lm_sensors + } else { + print "Copy prog/init/lm_sensors.service to $systemd_system_dir\n". + "and run 'systemctl enable lm_sensors.service'\n". + "for initialization at boot time.\n"; + } return; } @@ -7170,13 +7180,6 @@ sub main exit -1; } - if (-x "/bin/systemctl" && -f "/lib/systemd/system/lm_sensors.service") { - system("/bin/systemctl", "stop", "lm_sensors.service"); - } elsif (-x "/sbin/service" && -f "/etc/init.d/lm_sensors" && - -f "/var/lock/subsys/lm_sensors") { - system("/sbin/service", "lm_sensors", "stop"); - } - initialize_kernel_version(); initialize_conf(); initialize_pci(); @@ -7187,6 +7190,14 @@ sub main initialize_modules_supported(); initialize_cpu_list(); + if ($systemd_systemctl && $systemd_system_dir && + -f "$systemd_system_dir/lm_sensors.service") { + system("$systemd_systemctl", "stop", "lm_sensors.service"); + } elsif (-x "/sbin/service" && -f "/etc/init.d/lm_sensors" && + -f "/var/lock/subsys/lm_sensors") { + system("/sbin/service", "lm_sensors", "stop"); + } + print "# sensors-detect revision $revision\n"; initialize_dmi_data(); print_dmi_summary(); |