diff -Nur --no-dereference e-smith-lib-2.6.0.old/root/usr/share/perl5/vendor_perl/esmith/util.pm e-smith-lib-2.6.0/root/usr/share/perl5/vendor_perl/esmith/util.pm --- e-smith-lib-2.6.0.old/root/usr/share/perl5/vendor_perl/esmith/util.pm 2021-10-28 00:06:25.915000000 -0400 +++ e-smith-lib-2.6.0/root/usr/share/perl5/vendor_perl/esmith/util.pm 2021-10-28 00:09:41.931000000 -0400 @@ -1123,15 +1123,17 @@ { my ($startScript) = glob("/etc/rc.d/rc7.d/S*$serviceName") ||'' ; my ($systemdScript) = "/usr/lib/systemd/system/$serviceName.service" ||''; + my $multiple = "$serviceName.service"; + ($multiple = $serviceName ) =~ s/([a-zA-Z0-9\-_.]+@)(.*)/$1.service/ if ( $serviceName =~ /@/ ); - unless ( -e $startScript or -e $systemdScript) + unless ( -e $startScript or -e $systemdScript or -e "/usr/lib/systemd/system/$multiple") { warn "serviceControl: startScript not found " . "for service $serviceName\n"; return 0; } - if (-e $systemdScript and ! -e $startScript){ + if ( (-e $systemdScript or -e "/usr/lib/systemd/system/$multiple") and ! -e $startScript){ # systemd is not aware of adjust, sigusr1, sigusr2, sigterm, sighup $serviceAction = ( $serviceAction =~/^(adjust|graceful|sighup|sigusr1|sigusr2)$/ ) ? "reload-or-restart" : $serviceAction; $serviceAction = ( $serviceAction eq "sigterm" ) ? "restart" : $serviceAction;