#!/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: #rcS Script des sysvinit Projektes #Basierend auf einer Vorlage von linuxfromscratch.org # #Letzte Änderung von: $Author$ #Datum der letzten Änderung: $Date$ #Version der Datei: $Revision$ # #$Log$ #Revision 1.8 2007/06/09 13:43:20 kueller #Erkennung ob / nfs ist, und sonderbehandlung fuer nfs boot eingebaut. #angepasst an zukuenftigen Viitor_netboot # #Revision 1.7 2007/04/30 18:05:04 kueller #Neue Udev initialisierung. Ist jetzt konform zur doku und funktioniert auch # #Revision 1.6 2007/04/28 19:59:58 kueller #an /dev muss vor dem start von udev ein tmpfs sein... # #Revision 1.5 2006/07/07 20:36:18 kueller #Umstellung auf udev. es wird kein devfsd mehr gestartet. dafuer muss unter #/dev ein tmpfs gemountet werden. ausserdem muss for dem start von #udevstart (legt die devicefiles fuer die im Kernel vorhandenen Geraete an) #das sysfs gemountet werden. # #Revision 1.4 2004/03/03 12:48:08 kueller #Header auf neuen Viitor GPL Header umgestellt # # #Revision 1.3 2002/01/21 16:52:44 kueller #Volumemanagement wird im Script mountfs initialisiert, nicht mehr hier # #Revision 1.2 2001/11/03 23:55:39 segler # #LVM moechte gerne bevor es so richtig tut einen /sbin/vgscan haben. Solls kriegen... # #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 # # # Begin /etc/init.d/rcS runlevel=S prevlevel=N umask 022 export runlevel prevlevel trap ":" INT QUIT TSTP source /etc/init.d/functions mount -t proc none /proc if mount|grep /dev/root|grep nfs &>/dev/null; then echo -n "Mounting tmpfs on /var" mount -t tmpfs none /var evaluate_retval echo -n "Getting Hostname ..." ifconfig|\ grep Protokoll|\ awk '{ if ( $2 == "Protokoll:Ethernet" ) print $1 }' >/var/devices for i in `cat /var/devices`; do INET=`ifconfig $i|\ grep inet|\ awk -F ":" '{print $2}'|\ awk '{print $1}'` ANET=`echo $INET|awk -F "." '{print $1}'` if [ ! "$ANET" == "127" ]; then HOSTNAME=`getent hosts $INET` HOSTNAME=`echo $HOSTNAME|\ awk '{print $2}'|\ awk -F "." '{print $1}'` break fi done echo -n " $HOSTNAME" evaluate_retval echo -n "Restoring var folder" cd /var tar -zxf /boot/var_${HOSTNAME}.tgz echo $HOSTNAME >etc/sysconfig/nodename cd - evaluate_retval else mount -t tmpfs none /var/lock fi umount /proc if [ -f /sbin/udevstart ]; then . /etc/init.d/functions . /etc/udev/udev.conf prog=udev sysfs_dir=/sys bin=/lib/udev udevd=/sbin/udevd udev_root=/dev echo "Bringing udev sytem up" echo -n "mounting sys " mount -t sysfs none /sys echo -n "/var/lock " if [ ! -d /var/lock/subsys ]; then mkdir /var/lock/subsys fi if [ ! -d $udev_root ]; then mkdir $udev_root fi echo -n "/dev " mount -t tmpfs none /dev export ACTION=add echo -n "Creating initial udev device nodes:" loadproc udevstart mkdir /dev/pts fi for i in /etc/init.d/rcS.d/S??* do [ ! -f "$i" ] && continue; $i start done # End /etc/init.d/rcS