Rechner macht bei JEDEM Boot ein fsck
Moin, Mein Problem: s. Subject. Ich finde einfach die Stelle nicht, an der ich scheiter. Ich habe: PC mit 2 mal 1TB SATA Disk; die ersten 50 GB als Raid1 für das Root-FS; der Rest als Raid1 mit lvm. Gebootet werden kann von beiden Platten; ich boote derzeit von (hd0). Der Rechner sagt mir beim booten (sinngemäss), das seit dem letzen fsck 0 mal gemountet wurde und er deshalb jetzt die Platte prüfen muss; das passiert DIREKT nachdem er das root-dev. /dev/md0 erkannt hat. Ich habe (testweise) mal eine Ausgabe in /etc/init.d/boot.rootfsk gemacht; das kommt aber er _lange_ nach dem hier stattfindenden fsck zur Anwendung. Wo zum Henker nimmt der Recher das her, das er die Platte prüfen will? (/etc/sysconfig/boot habe ich gecheckt; in / liegt auch keine Datei /forcefsck - ich finde es einfach nicht. Danach läuft der Rechner einwandfrei hoch; das FS ist ein fehlerfreies ext3-FS mit max-mount-count=9999; er müsste also ein paar Bootvorgänge verkraften bevor er einen Check braucht. Any Ideas? Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
On Thu, 14 Jul 2011 07:04:12 +0200, Kyek, Andreas, VF-DE wrote:
Moin,
Mein Problem: s. Subject.
Ich finde einfach die Stelle nicht, an der ich scheiter.
Ich habe: PC mit 2 mal 1TB SATA Disk; die ersten 50 GB als Raid1 für das Root-FS; der Rest als Raid1 mit lvm.
Gebootet werden kann von beiden Platten; ich boote derzeit von (hd0).
Der Rechner sagt mir beim booten (sinngemäss), das seit dem letzen fsck 0 mal gemountet wurde und er deshalb jetzt die Platte prüfen muss; das passiert DIREKT nachdem er das root-dev. /dev/md0 erkannt hat.
Ich habe (testweise) mal eine Ausgabe in /etc/init.d/boot.rootfsk gemacht; das kommt aber er _lange_ nach dem hier stattfindenden fsck zur Anwendung.
Wo zum Henker nimmt der Recher das her, das er die Platte prüfen will? (/etc/sysconfig/boot habe ich gecheckt; in / liegt auch keine Datei /forcefsck - ich finde es einfach nicht.
Danach läuft der Rechner einwandfrei hoch; das FS ist ein fehlerfreies ext3-FS mit max-mount-count=9999; er müsste also ein paar Bootvorgänge verkraften bevor er einen Check braucht.
Any Ideas?
Andreas
Ist evtl. die BIOS Batterie leer, so dass das Datum nicht stimmt? --- Lutz Thuns openSUSE official member (lOtz1009) LXDE team -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Lutz Thuns wrote:
On Thu, 14 Jul 2011 07:04:12 +0200, Kyek, Andreas, VF-DE wrote:
Moin,
Mein Problem: s. Subject. [...]
Ist evtl. die BIOS Batterie leer, so dass das Datum nicht stimmt?
Sorry, hatte ein paar andere Baustellen; ich bin erst gestern zu ersten Tests gekommen. Zu deiner Idee: Nein, Datum am Rechner ist aktuell. Trotzdem ein fsck. Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am 14. Juli 2011 07:04 schrieb Kyek, Andreas, VF-DE
Moin,
Mein Problem: s. Subject.
Ich finde einfach die Stelle nicht, an der ich scheiter.
Ich habe: PC mit 2 mal 1TB SATA Disk; die ersten 50 GB als Raid1 für das Root-FS; der Rest als Raid1 mit lvm.
Gebootet werden kann von beiden Platten; ich boote derzeit von (hd0).
Der Rechner sagt mir beim booten (sinngemäss), das seit dem letzen fsck 0 mal gemountet wurde und er deshalb jetzt die Platte prüfen muss; das passiert DIREKT nachdem er das root-dev. /dev/md0 erkannt hat.
Ich habe (testweise) mal eine Ausgabe in /etc/init.d/boot.rootfsk gemacht; das kommt aber er _lange_ nach dem hier stattfindenden fsck zur Anwendung.
Wo zum Henker nimmt der Recher das her, das er die Platte prüfen will? (/etc/sysconfig/boot habe ich gecheckt; in / liegt auch keine Datei /forcefsck - ich finde es einfach nicht.
Versuch doch mal per tune2fs das Datum des letzen Checks manuell zu setzen. und den Check intervall herauszunehmen. gruß Sebastian
Danach läuft der Rechner einwandfrei hoch; das FS ist ein fehlerfreies ext3-FS mit max-mount-count=9999; er müsste also ein paar Bootvorgänge verkraften bevor er einen Check braucht.
Any Ideas?
Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
-- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Thu, 14 Jul 2011, Kyek, Andreas, VF-DE schrieb:
Ich habe (testweise) mal eine Ausgabe in /etc/init.d/boot.rootfsk gemacht; das kommt aber er _lange_ nach dem hier stattfindenden fsck zur Anwendung.
Evtl. ein Fehler im initrd boot/81-mount.sh. Darin findet sich u.a. ein: ==== [..] elif [ -x "$rootfsck" ] && ! [ -s /proc/vmcore ] ; then # fsck is unhappy without it echo "$rootdev / $rootfstype defaults 1 1" > /etc/fstab [..] fsck -t $rootfstype $fsckopts $rootdev [..] if [ "$read_only" ]; then echo "fsck succeeded. Mounting root device read-only." else echo "fsck succeeded. Mounting root device read-write." fi [..] # mount the actual root device on /root echo "Mounting root $rootdev" ==== Die Zeile echo "$rootdev / $rootfstype defaults 1 1" > /etc/fstab bedeutet der fsck von / wird immer ausgeführt wenn Mountcount oder Zeitraum (-> tune2fs) bzw. "clean-state" das für sinnvoll halten, egal was in der /etc/fstab steht (obiges ist ja die fstab in der initrd-Ramdisk). Guck mal, ob der fsck vor oder nach dem "Mounting root ..." kommt. Dann wäre das Problem schonmal sehr deutlich auf die initrd eingegrenzt. Beobachte auch mal das Herunterfahren, ob die /-Partition sauber unmounted wird. Und kontrolliere nochmal die 'tune2fs -l' Ausgabe und die Uhrzeit (danke an den Vorschreiber, daran hätte ich jetzt nicht gedacht). Du kannst testhalber mal Folgendes einfügen vor Zeile 86 (oS 11.4) (hier als Patch, per Hand nur die 3 Zeilen mit '+' einfügen). ==== /lib/mkinitrd/boot/81-mount.sh ==== --- 81-mount.sh~ 2011-04-26 21:47:49.000000000 +0200 +++ 81-mount.sh 2011-07-14 09:49:53.812000669 +0200 @@ -83,6 +83,9 @@ ID_FS_TYPE= fi +date +tune2fs -l $rootdev + # check filesystem if possible if [ -z "$rootfstype" ]; then echo "invalid root filesystem -- exiting to /bin/sh" ==== Ah, und in /lib/mkinitrd/scripts/boot-mount mußt du noch eine Zeile ändern: #%programs: /sbin/fsck $rootfsck /bin/on_ac_power in #%programs: /sbin/fsck $rootfsck /bin/on_ac_power /sbin/tune2fs damit auch tune2fs mit in der initrd landet[0]. 'date' ist schon in der initrd. Und dann die initrd mal neu erstellen (mkinitrd). HTH, -dnh [0] die ich mit 4.4M übrigens eh schon gruselig groß finde, und dabei hab ich fast nix (selber) drin. -- Me: "What, December 1999 wasn't that long ago?" Them: "For a phone, that's ancient." Me: "The phone on my desk was built in 1937, and that still works fine..." -- S. Septimus -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (4)
-
David Haller
-
Kyek, Andreas, VF-DE
-
Lutz Thuns
-
Sebastian Gödecke