105 lines
2.7 KiB
Plaintext
105 lines
2.7 KiB
Plaintext
|
#!/bin/bash
|
|||
|
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
|
|||
|
#dieses Framework wird im CVS Repository
|
|||
|
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verf<72>gung gestellt
|
|||
|
#
|
|||
|
#Lage dieser Datei im Archiv: $Source$
|
|||
|
#
|
|||
|
#(c) 2003 Harald Kueller, Germany
|
|||
|
#This program is free software; you can redistribute it and/or
|
|||
|
#modify ist 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.
|
|||
|
#
|
|||
|
#This program 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 this program; if not write to the Free Software Foundation,
|
|||
|
#Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|||
|
#
|
|||
|
#InitScript zum Start des Daemons:
|
|||
|
# Dieses Script l<>d beim Systemstart manuell zu konfigurierende
|
|||
|
# Kernel Module. Diese Module werden als Parameter des modprobe
|
|||
|
# kommandos in die Datei /etc/sysconfig/loadmods eingetragen.
|
|||
|
#
|
|||
|
#Letzte <20>nderung von: $Author$
|
|||
|
#Datum der letzten <20>nderung: $Date$
|
|||
|
#Version der Datei: $Revision$
|
|||
|
#
|
|||
|
#$Log$
|
|||
|
#Revision 1.4 2004/03/03 12:48:08 kueller
|
|||
|
#Header auf neuen Viitor GPL Header umgestellt
|
|||
|
#
|
|||
|
#
|
|||
|
# Revision 1.1.1.1 2001/09/23 00:02:08 kueller
|
|||
|
# Neustart wg. Datenverlust
|
|||
|
#
|
|||
|
# Revision 1.1.1.1 2001/08/08 10:02:32 kueller
|
|||
|
# sysvinit addons
|
|||
|
#
|
|||
|
#
|
|||
|
|
|||
|
source /etc/init.d/functions
|
|||
|
|
|||
|
case "$1" in
|
|||
|
start)
|
|||
|
if [ -f /etc/sysconfig/loadmods ]; then
|
|||
|
sed -e "/^#/d" /etc/sysconfig/loadmods |
|
|||
|
sed -e "/^ *$/d" >/tmp/loadmods
|
|||
|
exec 3</tmp/loadmods
|
|||
|
read <&3 MODULE OPTIONS
|
|||
|
while [ $MODULE ]; do
|
|||
|
echo -n "Loading Module $MODULE with options: $OPTIONS"
|
|||
|
if grep -q $MODULE /proc/modules; then
|
|||
|
echo -n "Module $MODULE already loaded - removing it"
|
|||
|
rmmod $MODULE
|
|||
|
evaluate_retval
|
|||
|
fi
|
|||
|
modprobe -s $MODULE $OPTIONS
|
|||
|
evaluate_retval
|
|||
|
read <&3 MODULE OPTIONS
|
|||
|
done
|
|||
|
exec 3>&-
|
|||
|
rm /tmp/loadmods
|
|||
|
fi
|
|||
|
;;
|
|||
|
stop)
|
|||
|
if [ -f /etc/sysconfig/loadmods ]; then
|
|||
|
Z=0
|
|||
|
while [ "$Z" "<" "9" ]; do
|
|||
|
exec 3</proc/modules
|
|||
|
read <&3 MODNAME INFO
|
|||
|
while [ $MODNAME ]; do
|
|||
|
echo -n "Try to unload $MODNAME"
|
|||
|
rmmod -s $MODNAME 2>/dev/null
|
|||
|
if [ "$?" == "0" ]; then
|
|||
|
print_status success
|
|||
|
else
|
|||
|
if [ "$Z" == "8" ]; then
|
|||
|
print_status failure
|
|||
|
else
|
|||
|
echo "failed"
|
|||
|
fi
|
|||
|
fi
|
|||
|
read <&3 MODNAME INFO
|
|||
|
done
|
|||
|
(( Z = $Z + 1 ))
|
|||
|
exec 3>&-
|
|||
|
done
|
|||
|
fi
|
|||
|
;;
|
|||
|
restart)
|
|||
|
$0 stop
|
|||
|
sleep 1
|
|||
|
$0 start
|
|||
|
;;
|
|||
|
*)
|
|||
|
echo "Usage: $0: {start|stop|restart}"
|
|||
|
exit 1
|
|||
|
;;
|
|||
|
esac
|
|||
|
#end /etc/inet.d/network
|