53725ed8b6
git-svn-id: svn://svn.compuextreme.de/Viitor/V962/Viitor_sysvinit@4439 504e572c-2e33-0410-9681-be2bf7408885
139 lines
4.3 KiB
Bash
139 lines
4.3 KiB
Bash
#!/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ü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:
|
|
#install des systemvinit prozesses
|
|
#Abschluss des Installation Prozesses
|
|
#
|
|
#Letzte Änderung von: $Author$
|
|
#Datum der letzten Änderung: $Date$
|
|
#Version der Datei: $Revision$
|
|
#
|
|
#$Log$
|
|
#Revision 1.13 2007/01/24 16:09:55 segler
|
|
#There is no /dev/cdroms/* without devfs any more...
|
|
#Hopefully some /dev/cdr* devices like /dev/cdrom or /dev/cdrw
|
|
#
|
|
#Revision 1.12 2004/03/03 12:48:08 kueller
|
|
#Header auf neuen Viitor GPL Header umgestellt
|
|
#
|
|
#
|
|
#Revision 1.11 2003/04/19 08:05:46 kueller
|
|
#Soweit nicht vorhanden, erweiterung um restart option. Ansonsten anpassung
|
|
#an aktuellen Umfang von functions. reload und status funktioniert hier unter
|
|
#viitor nicht!
|
|
#
|
|
#Revision 1.10 2003/04/06 19:45:47 kueller
|
|
#FOUNDCD Variable muss natürlich vor continiue anweisung gesetzt werden.
|
|
#
|
|
#Revision 1.9 2003/04/06 19:43:58 kueller
|
|
#FOUNDCD Variable wird nun vor jedem notwendigen CDWechel richtig initialisiert.
|
|
#
|
|
#Revision 1.8 2003/04/06 18:19:59 kueller
|
|
#Korrectur der cdromabfragen. Korrektur der afterinstall routine
|
|
#
|
|
#Revision 1.7 2003/04/06 12:40:46 kueller
|
|
#Anpassung an neue Option "-d" des installpkg kommandos. Hier werden
|
|
#alle Postinstall scripten nicht ausgeführt, sondern nach
|
|
#/tmp/afterinstall/pkgname.postinstall kopiert.
|
|
#install führt diese Scripten nun nach fertigstellung des kopiervorgangs aus.
|
|
#
|
|
#Revision 1.6 2003/04/06 12:10:08 kueller
|
|
#Mehere CDROM Laufwerke werden nun erkannt. Wenn eine Passende CD in einem
|
|
#der vorhandenen CDROM Laufwerke liegt, wird diese Automatisch erkannt und
|
|
#verwendet
|
|
#
|
|
#Revision 1.5 2003/01/16 07:40:10 kueller
|
|
#Nach Abschluss der Installation wird die LD Configuration nun mittels
|
|
#ldconfig aktualisiert.
|
|
#
|
|
#Revision 1.4 2003/01/06 20:33:23 kueller
|
|
#Meldung "....press some key" in "...press ENTER" Geändert
|
|
#
|
|
#Revision 1.3 2002/10/04 08:00:34 kueller
|
|
#Routine Eingefügt, die Überprüft, ob die richtige CD Eingelegt wurde
|
|
#
|
|
#Revision 1.2 2002/06/12 10:38:07 hkueller
|
|
#Diverse Korrekturen ($ bei Variablennamen vergessen, falscher Dateidescriptor
|
|
#bei read (<$3 statt <&3) etc.
|
|
#
|
|
#Revision 1.1 2002/06/12 09:46:23 hkueller
|
|
#Post Install Script - sorgt dafür das Packete die in /var/install/pkg_to_do
|
|
#gelistet sind nach einem Reboot installiert werden. (Stage 2 des Monsum
|
|
#installation vorgangs)
|
|
#
|
|
#
|
|
|
|
source /etc/init.d/functions
|
|
|
|
case "$1" in
|
|
start)
|
|
if [ -f /var/install/pkg_to_do ]; then
|
|
exec 3</var/install/pkg_to_do
|
|
read <&3 INSTCD INSTPKG
|
|
AKTCD=""
|
|
while [ "$INSTCD" ]; do
|
|
if [ ! "$INSTCD" == "$AKTCD" ]; then
|
|
FOUNDCD=0
|
|
umount /mnt >/dev/null 2>&1
|
|
while [ ! -d /mnt/$INSTCD ]; do
|
|
for i in /dev/cdr*; do
|
|
mount -o ro $i /mnt >/dev/null 2>&1
|
|
if [ -d /mnt/$INSTCD ]; then
|
|
FOUNDCD=1
|
|
continue
|
|
else
|
|
FOUNDCD=0
|
|
umount /mnt >/dev/null 2>&1
|
|
fi
|
|
done
|
|
if [ "$FOUNDCD" == "0" ]; then
|
|
echo -n "CD not found - Please insert $INSTCD in any CDROM and press ENTER"
|
|
read
|
|
fi
|
|
done
|
|
AKTCD=$INSTCD
|
|
fi
|
|
installpkg -di /mnt/$INSTPKG
|
|
read <&3 INSTCD INSTPKG
|
|
done
|
|
exec 3>&-
|
|
rm /var/install/pkg_to_do
|
|
umount /mnt
|
|
if [ -d /tmp/afterinstall ]; then
|
|
for i in /tmp/afterinstall/*; do
|
|
source $i /
|
|
cd - >/dev/null
|
|
rm $i
|
|
done
|
|
rm -r /tmp/afterinstall
|
|
fi
|
|
ldconfig
|
|
fi
|
|
;;
|
|
*)
|
|
echo "Usage: $0 {start}"
|
|
exit 1
|
|
;;
|
|
|
|
esac
|