Diff for /doc/loncapafiles/chkconfig.piml between versions 1.6 and 1.47

version 1.6, 2007/12/07 06:01:06 version 1.47, 2019/10/28 16:24:23
Line 1 Line 1
 <!DOCTYPE piml PUBLIC "-//TUX/DTD piml 1.0 Final//EN"   <!DOCTYPE piml PUBLIC "-//TUX/DTD piml 1.0 Final//EN" 
  "http://lpml.sourceforge.net/DTD/piml.dtd">   "http://lpml.sourceforge.net/DTD/piml.dtd">
 <!-- phpcheck.piml -->  <!-- checkconfig.piml -->
 <!-- Matthew Hall -->  <!-- Matthew Hall -->
   
 <!-- $Id$ -->  <!-- $Id$ -->
Line 33  http://www.lon-capa.org/ Line 33  http://www.lon-capa.org/
 <targetroot>/</targetroot>  <targetroot>/</targetroot>
 <files>  <files>
 <file>  <file>
 <target dist="default">/home/httpd/lonUsers</target>  <target dist="default"></target>
 <perlscript mode="fg">  <perlscript mode="fg">
 my $chkconfig_bin = '/sbin/chkconfig';  my $checker_bin = '/sbin/chkconfig';
 exit if (! -x $chkconfig_bin);  my $systemctl_bin = '/bin/systemctl';
   my $systemctl_only = 0;
 my $webserver = 'httpd';  my $webserver ='httpd';
 my @runlevels = qw/3 4 5/;  my @runlevels = qw/3 4 5/;
   my @norunlevels = qw/0 1 6/;
   my $use_systemctl;
   
 if ('<DIST />' eq 'suse9.3' || '<DIST />' eq 'suse9.2' || '<DIST />' eq 'sles9') {  if ('<DIST />' eq 'suse9.3' || '<DIST />' eq 'suse9.2' || '<DIST />' eq 'sles9') {
     $webserver = 'apache';      $webserver = 'apache';
     @runlevels = qw/3 5/;      @runlevels = qw/3 5/;
 } elsif ('<DIST />' eq 'sles10' || '<DIST />' eq 'suse10.1' || '<DIST />' eq 'suse10.2' || '<DIST />' eq 'suse10.3') {  } elsif ('<DIST />' eq 'sles10' || '<DIST />' eq 'sles11' || '<DIST />' eq 'sles12' || '<DIST />' eq 'suse10.1' || '<DIST />' eq 'suse10.2' || '<DIST />' eq 'suse10.3' || '<DIST />' eq 'suse11.1' || '<DIST />' eq 'suse11.2' || '<DIST />' eq 'suse11.3' || '<DIST />' eq 'suse11.4' || '<DIST />' eq 'suse12.1' || '<DIST />' eq 'suse12.2' || '<DIST />' eq 'suse12.3' || '<DIST />' eq 'suse13.1' || '<DIST />' eq 'suse13.2') {
       $webserver = 'apache2';
       @runlevels = qw/3 5/;
   } elsif ('<DIST />' eq 'debian5' || '<DIST />' eq 'debian6' || '<DIST />' eq 'ubuntu6' ||  '<DIST />' eq 'ubuntu8' || '<DIST />' eq 'ubuntu10' || '<DIST />' eq 'ubuntu12' || '<DIST />' eq 'ubuntu14' || '<DIST />' eq 'ubuntu16') {
       @runlevels = qw/2 3 4 5/;
       @norunlevels = qw/0 1 6/;
       $checker_bin = '/usr/sbin/sysv-rc-conf';
       $webserver = 'apache2';
   } elsif (('<DIST />' eq 'ubuntu18') || ('<DIST />' eq 'sles15')) {
     $webserver = 'apache2';      $webserver = 'apache2';
       $use_systemctl = 1;
       $systemctl_only = 1;
   } elsif (('<DIST />' eq 'fedora26') || ('<DIST />' eq 'fedora27') ||
            ('<DIST />' eq 'fedora28') || ('<DIST />' eq 'fedora29') ||
            ('<DIST />' eq 'fedora30') || ('<DIST />' eq 'fedora31') ||
            ('<DIST />' eq 'centos8')  || ('<DIST />' eq 'rhes8')    ||
            ('<DIST />' eq 'oracle7')  || ('<DIST />' eq 'oracle8')) {
       $use_systemctl = 1;
       $systemctl_only = 1;
 }  }
 my $command = $chkconfig_bin.' --list '.$webserver;  if (('<DIST />' eq 'fedora16') || ('<DIST />' eq 'fedora17')    ||
 my $results = `$command`;      ('<DIST />' eq 'fedora18') || ('<DIST />' eq 'fedora19')    ||
 if ($results eq '') {      ('<DIST />' eq 'fedora20') || ('<DIST />' eq 'fedora21')    ||
     print "**** WARNING: $webserver is not set to run on boot.$/".      ('<DIST />' eq 'fedora22') || ('<DIST />' eq 'fedora23')    ||
         "    Execute the following commands to fix this:".$/.      ('<DIST />' eq 'fedora24') || ('<DIST />' eq 'fedora25')    ||
         "        $chkconfig_bin --add $webserver".$/.      ('<DIST />' eq 'suse12.1') || ('<DIST />' eq 'suse12.2')    ||
         "        $chkconfig_bin $webserver on".$/;      ('<DIST />' eq 'suse12.3') || ('<DIST />' eq 'suse13.1')    ||
 } else {      ('<DIST />' eq 'suse13.2') || ('<DIST />' eq 'rhes7')       ||
     my %httpd_runlevels;      ('<DIST />' eq 'centos7')  || ('<DIST />' eq 'scientific7') || 
     for (my $rl = 0;$rl &lt;=6;$rl++) {      ('<DIST />' eq 'sles12')) {
         if ($results =~ /$rl:on/) { $httpd_runlevels{$rl}++; }      $use_systemctl = 1;
     }  
     #  
     my $warning;  
     foreach my $rl (@runlevels) {  
         if (! exists($httpd_runlevels{$rl}) ) {  
             $warning .=   
                "**** WARNING: $webserver is not set to run at runlevel $rl".$/;  
         }  
     }  
     if ($warning) {  
         print $warning.  
             "    Execute the following command to fix this:".$/.  
             "        /sbin/chkconfig $webserver on ".$/;  
     }  
 }  }
   exit if (((!$systemctl_only) && (! -x $checker_bin)) && (! -x $systemctl_bin));
   
 $command = $chkconfig_bin.' --list loncontrol';  my $rlstr = join('',@runlevels);
 $results = `$command`;  my $nrlstr = join('',@norunlevels);
 if ($results eq '') {  foreach my $service ($webserver,'loncontrol') {
     print "**** WARNING: loncontrol is not set to run on boot.$/".      if (($use_systemctl) && ($service eq $webserver) || ($systemctl_only)) {
         "    Execute the following commands to fix this:".$/.          my $command = "systemctl is-enabled ".$service.".service";
         "        $chkconfig_bin --add loncontrol".$/.          my $results = `$command`;
         "        $chkconfig_bin loncontrol on".$/;          chomp($results);
 } else {          if ($results ne 'enabled') {
     my %loncontrol_runlevels;              print "**** WARNING: $service is not set to run on boot.".$/.
     for (my $rl = 0;$rl&lt;=6;$rl++) {                    "    Execute the following commands to fix this:".$/.
         if ($results =~ /$rl:on/) { $loncontrol_runlevels{$rl}++; }                    "    systemctl enable ".$service.".service".$/;
     }          }
     #      } else {
     $warning = '';          my $command = $checker_bin.' --list '.$service;
     foreach my $rl (@runlevels) {          my $results = `$command`;
         if (! exists($loncontrol_runlevels{$rl})) {          if ($results eq '') {
             $warning .=               print "**** WARNING: $service is not set to run on boot.$/".
                 "**** WARNING: loncontrol is not set to run at runlevel $rl\n";              "    Execute the following commands to fix this:".$/;
               if ('<DIST />' eq 'debian5' || '<DIST />' eq 'debian6' || '<DIST />' eq 'ubuntu6' ||  '<DIST />' eq 'ubuntu8' || '<DIST />' eq 'ubuntu10' || '<DIST />' eq 'ubuntu12' || '<DIST />' eq 'ubuntu14' || '<DIST />' eq 'ubuntu16') {
                   print "        $checker_bin --level $nrlstr $service off".$/;
               } else {
                   print "        $checker_bin --add $webserver".$/;
               }
               print "        $checker_bin --level $rlstr $service on".$/;
           } else {
               my %curr_runlevels;
               for (my $rl = 0;$rl &lt;=6;$rl++) {
                   if ($results =~ /$rl:on/) { $curr_runlevels{$rl}++; }
               }
               #
               my $warning;
               foreach my $rl (@runlevels) {
                   if (! exists($curr_runlevels{$rl}) ) {
                       $warning .=
                          "**** WARNING: $service is not set to run at runlevel $rl".$/;
                   }
               }
               if ($warning) {
                   print $warning.
                         "    Execute the following command to fix this:".$/.
                         "        $checker_bin --level $rlstr $service on".$/;
               }
         }          }
     }  
     if ($warning) {  
         print $warning.  
             "    Execute the following command to fix this:".$/.  
             "        /sbin/chkconfig loncontrol on ".$/;  
     }      }
 }  }
   

Removed from v.1.6  
changed lines
  Added in v.1.47


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>