diff options
-rw-r--r-- | src/lib/Client/Tools/Chkconfig.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/lib/Client/Tools/Chkconfig.py b/src/lib/Client/Tools/Chkconfig.py index 0ef0b46ea..ded4ef16a 100644 --- a/src/lib/Client/Tools/Chkconfig.py +++ b/src/lib/Client/Tools/Chkconfig.py @@ -30,13 +30,17 @@ class Chkconfig(Bcfg2.Client.Tools.SvcTool): except IndexError: onlevels = [] - pstatus = self.cmd.run('/sbin/service %s status' % \ - entry.get('name'))[0] - # chkconfig/init.d service if entry.get('status') == 'on': - status = (len(onlevels) > 0 ) and not pstatus + status = (len(onlevels) > 0 ) else: - status = (len(onlevels) == 0) and pstatus + status = (len(onlevels) == 0) + + if entry.get('supervised', 'false') == 'true': + pstatus, pout = self.cmd.run('/sbin/service %s status' % \ + entry.get('name')) + # chkconfig/init.d service + if entry.get('status') == 'on': + status = status and not pstatus if not status: if entry.get('status') == 'on': |