File:  [LON-CAPA] / doc / loncapafiles / chkconfig.piml
Revision 1.6: download - view: text, annotated - select for diffs
Fri Dec 7 06:01:06 2007 UTC (14 years, 9 months ago) by raeburn
Branches: MAIN
CVS tags: version_2_8_X, version_2_8_2, version_2_8_1, version_2_8_0, version_2_7_X, version_2_7_99_1, version_2_7_99_0, version_2_7_1, version_2_7_0, version_2_6_X, version_2_6_99_1, version_2_6_99_0, version_2_6_3, version_2_6_2, version_2_6_1, version_2_6_0, version_2_5_99_1, HEAD, GCI_1
support SuSE 10.3

<!DOCTYPE piml PUBLIC "-//TUX/DTD piml 1.0 Final//EN" 
	"http://lpml.sourceforge.net/DTD/piml.dtd">
<!-- phpcheck.piml -->
<!-- Matthew Hall -->

<!-- $Id: chkconfig.piml,v 1.6 2007/12/07 06:01:06 raeburn Exp $ -->

<!--

This file is part of the LearningOnline Network with CAPA (LON-CAPA).

LON-CAPA is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

LON-CAPA is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with LON-CAPA; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

/home/httpd/html/adm/gpl.txt

http://www.lon-capa.org/

-->

<piml>
<targetroot>/</targetroot>
<files>
<file>
<target dist="default">/home/httpd/lonUsers</target>
<perlscript mode="fg">
my $chkconfig_bin = '/sbin/chkconfig';
exit if (! -x $chkconfig_bin);

my $webserver = 'httpd';
my @runlevels = qw/3 4 5/;
if ('<DIST />' eq 'suse9.3' || '<DIST />' eq 'suse9.2' || '<DIST />' eq 'sles9') {
    $webserver = 'apache';
    @runlevels = qw/3 5/;
} elsif ('<DIST />' eq 'sles10' || '<DIST />' eq 'suse10.1' || '<DIST />' eq 'suse10.2' || '<DIST />' eq 'suse10.3') {
    $webserver = 'apache2';
}
my $command = $chkconfig_bin.' --list '.$webserver;
my $results = `$command`;
if ($results eq '') {
    print "**** WARNING: $webserver is not set to run on boot.$/".
        "    Execute the following commands to fix this:".$/.
        "        $chkconfig_bin --add $webserver".$/.
        "        $chkconfig_bin $webserver on".$/;
} else {
    my %httpd_runlevels;
    for (my $rl = 0;$rl &lt;=6;$rl++) {
        if ($results =~ /$rl:on/) { $httpd_runlevels{$rl}++; }
    }
    #
    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 ".$/;
    }
}

$command = $chkconfig_bin.' --list loncontrol';
$results = `$command`;
if ($results eq '') {
    print "**** WARNING: loncontrol is not set to run on boot.$/".
        "    Execute the following commands to fix this:".$/.
        "        $chkconfig_bin --add loncontrol".$/.
        "        $chkconfig_bin loncontrol on".$/;
} else {
    my %loncontrol_runlevels;
    for (my $rl = 0;$rl&lt;=6;$rl++) {
        if ($results =~ /$rl:on/) { $loncontrol_runlevels{$rl}++; }
    }
    #
    $warning = '';
    foreach my $rl (@runlevels) {
        if (! exists($loncontrol_runlevels{$rl})) {
            $warning .= 
                "**** WARNING: loncontrol is not set to run at runlevel $rl\n";
        }
    }
    if ($warning) {
        print $warning.
            "    Execute the following command to fix this:".$/.
            "        /sbin/chkconfig loncontrol on ".$/;
    }
}

</perlscript>
</file>
</files>
</piml>

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