Hi Leute,
habe gerade ein Script gebastelt was beim herunterfahren prüft ob das Dateisystem beim nächsten start geprüft werden muss und dann entsprechend die Prüfung startet...
vdr:~# cat /etc/init.d/shutdownCheck
#!/bin/sh
#set -x
DEVS="hda1 hda2"
for HD in $DEVS
do
MOUNTCOUNT=`tune2fs -l /dev/$HD | grep "Mount count" | awk '{print $3}'`
MAXCOUNT=`tune2fs -l /dev/$HD | grep "Maximum mount count" | awk '{print $4}'`
if [ $MOUNTCOUNT -eq `expr $MAXCOUNT - 1` ]
then
echo "Vorzeitiger Check von /dev/$HD wird eingeleitet"
FILESYSTEM=`grep $HD /etc/fstab | awk '{print $3}'`
mount -n -o remount,ro /dev/$HD
fsck -f -y $FILESYSTEM /dev/$HD
fi
done
Alles anzeigen
Damit das Scipt läuft muss tune2fs installiert sein...
Es muss natürlich bei den Renleveln 0 und 6 ausgeführt werden, damit es funtioniert...
unter Debian ist dies einfach zu erledigen
update-rc.d shutdownCheck start 39 0 6 .
Die Position ist natürlich auch von Bedeutung.. und zwar sollte es vor dem unmounten der Dateisysteme ausgeführt werden...
Unter Debian schaut es dann so aus:
ZitatAlles anzeigen
vdr:~# ls -la /etc/rc0.d/
insgesamt 8
drwxr-xr-x 2 root root 4096 2005-11-13 21:02 .
drwxr-xr-x 78 root root 4096 2005-11-13 20:07 ..
[....]
lrwxrwxrwx 1 root root 18 2005-07-02 19:12 S20sendsigs -> ../init.d/sendsigs
lrwxrwxrwx 1 root root 17 2005-07-02 19:12 S30urandom -> ../init.d/urandom
lrwxrwxrwx 1 root root 22 2005-07-02 19:12 S31umountnfs.sh -> ../init.d/umountnfs.sh
lrwxrwxrwx 1 root root 20 2005-07-02 19:13 S35networking -> ../init.d/networking
lrwxrwxrwx 1 root root 18 2005-07-02 19:13 S36ifupdown -> ../init.d/ifupdown
lrwxrwxrwx 1 root root 23 2005-11-13 21:02 S39shutdownCheck -> ../init.d/shutdownCheck
lrwxrwxrwx 1 root root 18 2005-07-02 19:12 S40umountfs -> ../init.d/umountfs
lrwxrwxrwx 1 root root 14 2005-07-02 19:12 S90halt -> ../init.d/halt
Gruß,
Thomas