
Walter Hofmann wrote:
Hallo, ist natürlich auch 'ne Idee. Aber ich will ja eigentlich, daß es automatisch und regelmäßig durchgeführt wird. Nur beim Booten stört es mich eben. Ist es denn unbedingt beim Bootvorgang unverzichtbar? (Ich muß vielleicht bemerken, daß ich mich auf ein Einzelplatzsystem beziehe.) Warum ist die Idee eigentlich so schlecht? Immerhin würde so schließlich regelmäßig ein Check durchgeführt, und die Abstände wären nicht so ewig auseinander wie bei tune2fs -c 10000. Und wenn ich ehrlich bin - aus reiner Nachlässigkeit würde das dazu führen, daß ich den Check per Hand ja doch sehr vernachlässigen würde. Deswegen auch mein Bestreben danach es automatisch und regelmäßig durchzuführen. Ciao Tobias -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux

Hallo Walter, ich sende es diesmal nicht als PM, damit eventuell interessierte Leute ihre Erfahrungen mit austauschen können. Trotzdem vielen Dank erstmal für Deine Antworten.
Aber der Check wird doch ohnehin nur alle 10 Mounts (oder was weiß ich - je nach dem eben) durchgeführt. Das heißt doch, daß dies Fehler ebenso in den 9 restlichen Mounts auftreten können.
Wird ja immer noch alle sechs Monate gemacht.
Aber wenn, dann eben beim Bootvorgang, was es ja zu vermeiden gilt. Was jedenfalls mein Ziel war. Und wenn ich beim Booten alles lasse, wie es ist und zusätzlich beim Shutdown alle Platten unmounte und wieder ro mounte, diesmal aber mit check-force. Würde das nicht dazu führen, daß beim Booten kein (jedenfalls längerer) Check mehr durchgeführt würde? Oder Mountcounts auf eine gerade Zahl einstellen und beim Shutdown nochmal booten. Könnte man doch ebenfalls so arangieren, daß der maximale Mountcount in der Regel nur beim Shutdown erreicht würde - oder? Dabei gehe ich davon aus, daß insgesamt zwei Mounts durchgeführt werden: einmal beim Booten, einmal beim Shutdown.
Evtl. kannst du auch /usr immer ro mounten, dann hast du nie Probleme.
Geht auch. Aber nicht mit den anderen Platten. Aber die <neue> Idee mit dem zweimal Mounten klingt doch jedenfalls nicht unsicher. Ciao Tobias -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux

Tobias Markfeld wrote:
Hallo zusammen. Ich habe eben 'mal in /sbin/init.d/ gekramt. Da gibt es in boot eine Stelle, die wo beginnen tut :-) mit: # do fsck and start sulogin, if it fails. IMHO ist das die Stelle, um die es Dir geht, oder? Die Liste möge mir virtuell auf die Finger hauen, wenn ich hier Mist verzapfe. Aber angenommen, dat wär e so.... Dann sollte es Dir genügen, den ganzen Passus von /sbin/init.d/boot in (man stelle sich eine Fanfare vor) /sbin/init.d/halt einzutragen. Aber aufpassen: Bei der Prüfung während des Bootens gibt das System Dir die Möglichkeit zur Reparatur, falls denn eine nötig ist. Ich weiß nicht, wie man Reparaturen durchführen soll, wenn das System herunter fährt, geschweigedenn (ich hoffe, das schreibt man so), ob es überhaupt wieder bootet, _falls_ es zu Probs kommen sollte. Denn zumindest _ein_ Filesystem wäre dann ja im Popöchen. Und wenn das eventuell / ist.... Dann müßte man mindestens schonmal zu einer Bootdiskette oder zu tomsrbt greifen. Und einfach "übernehmen" ist IMHO auch nicht, das eine oder andere muß bestimmt angepaßt werden. Dazu auf jeden Fall "Das SuSE Linux Bootkonzept", man fsck und was weiß ich noch alles lesen. Kann aber auch sein, daß ich hier total daneben liege. Dann bitte ich hiermit um Aufklärung. Gruß Carsten, der davon auf jeden Fall die Fingerchen, die schmutzigen, lassen wird. -- "Etwas nicht tun zu können, ist kein Grund, es nicht zu tun." Gordon "Alf" Shummway Registered Linux User: 106265 -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux

ca.becker@t-online.de,Internet schreibt:
# do fsck and start sulogin, if it fails.
d'Or -- dmb_linux@dmb-sll.de Wir versuchen zu helfen, und wenn es nur mit dummen Sprüchen is. Es bedient euch: cs Christoph Steffes d'Or Dirk Orlet -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux

Hallo, dmb linux wrote:
Da hast Du wohl recht. Aber ist ein fsck vor dem Mounten eine Gewähr, daß das Filesystem ordentlich unmounted wird? Trotzdem muß es aber sein - da stimme ich Dir zu. Das Problem liegt also jetzt noch an zwei Stellen: 1. Wenn beim shutdown fsck durchgeführt wird und ein Fehler auftritt - was dann? 2. Wenn beim Runterfahren mit fsck eben dieser fehler aufgetaucht ist, was soll beim nächsten Hochfahren passieren? Ich glaube, ich habe dazu heute schonmal einen Hinweis im gleichen Thread gelesen. Ciao Tobias -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux

hallo liste, ich hatte diesen thread schonmal am anfang des jahres gestartet. leider hatte ich seitdem keine zeit mehr, mich ganauer mit einer lösungsmöglichkeit zu befassen. in den letzten tagen habe ich aber eine lösung gefunden, die meinen vorstellungen entspricht. ich möchte dennoch gern von euch wissen, was ihr davon haltet und ob evtl. bedenken bestehen. weil's so lange zurückliegt - hier nochmal das problem: beim hochfahren meines rechners, was am tag mehrmals passiert, wird fsck durchgeführt. anschließend werden die partitionen gemountet. soweit alles ok. bei jedem mount wird der index der sog. mount-counts nach oben gesetzt. abhängig von der konfiguration des datenträgers (mit tune2fs) besteht eine grenze (sog. maximal mount-counts), nach deren erreichen fsck einen ausführlichen check durchführt und den wert anschließend wieder auf null setzt. das erkennt man daran, daß normalerweise alle 20 mal beim starten eine meldung in der art "has reached maximal mount count" oder so. abhängig von der größe der jeweiligen partition folgt dann ein z.t. langwieriger check, der natürlich unbestritten in bestimmten abständen durchgeführt werden sollte. mein anliegen war es nun aber, diesen ausführlichen check nicht unbedingt beim hochfahren durchzuführen, weil es manchmal nervt, wenn man vor dem pc sitzt und nur mal eben schnell noch etwas erledigen möchte (emails checken, brief ausdrucken...) und plötzlich fsck den ausführlichen test durchführt. warum also nicht diese prozedur dann durchführen, wenn der rechner heruntergefahren wird. das wäre insoweit ganz nützlich, als ich eine soft-power-off-funktion auf meinem mainboard habe, die den pc nach dem herunterfahren automatisch ausschaltet. problem 1: wenn der datenträger fehlerhaft ist, muß das trotzdem auf jeden fall beim hochfahren erkannt werden. problem 2: wenn der datenträger beim runterfahren als fehlerhaft erkannt wird, darf das nicht dazu führen, daß der rechner ausgeschaltet wird. hier meine derzeitige konfiguration: ich habe das boot -script unangetastet gelassen. fsck wird also weiterhin beim booten durchgeführt. im halt -script habe ich einige zeilen aus dem boot-script eingefügt, so daß fsck zweimal aufgerufen wird: einmal beim hochfahren, einmal beim runterfahren. ich habe die letzten zeilen des halt-scripts einmal angehängt. der effekt: 1. beim hochfahren wird auf jeden fall, d.h. wie bisher, fsck aufgerufen. das ist aufgrund der sicherheit einfach unentbehrlich. 2. beim runterfahren wird fsck nochmal durchgeführt. einmal mehr schadet zumindest nicht. sollte der datenträger fehlerhaft sein, sollte das script auf eine eingabe des users warten und den rechner nicht ausschalten. 3. der maximal mount-count liegt bei mir weiterhin bei 20. Diese Zahl ist gerade. ;-) daher kommt es zu dem ausführlichen check bei erreichen des maximal mount-counts nur regelmäßig beim runterfahren. (es sei denn, das medium wird einmal per hand gemountet - kommt aber normalerweise nicht vor. wenn doch, hilft ein unmount und ein mount und der mount-zähler stimmt wieder.) und nun meine frage: was meint ihr dazu? habt ihr irgendwelche bedenken? ciao tobias <HR> <UL> <LI>application/octet-stream attachment: boot </UL> -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

nachtrag: Tobias Markfeld wrote:
ist natürlich quatsch: daß der ausführliche check von fsck beim runterfahren durchgeführt wird, liegt natürlich daran, daß beim hochfahren der datenträger noch nicht gemountet ist und das erst nach fsck passiert. der maximal mount-count wird also beim hochfahren immer erst nach fsck erreicht. der ausführliche check findet daher immer beim runterfahren statt. ausnahme: die root-partition ist beim boot schon vorher gemountet. hier ist entscheidend, daß 20 gerade ist. (konnte ich meine mathematik-kenntnisse also doch noch anbringen ;-) ciao tobias -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Am 24-Aug-99 schrieb Tobias Markfeld :
Ich würde den mount-counter auf Null setzen, dann macht er das garnicht mehr. Dann würde ich mir versuchen ein Script zu basteln, das ich zu runterfahren aufrufe. Hier könnte man z.B. den Rechner nach init 1 oder init s bringen, dann fsck aufrufen, die Rückgabewerte auswerten und entsprechend reagieren. mfg Peter Küchler Registrierter Linux-User #127408 -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Peter Küchler wrote:
dann kommt es doch aber nie zu dem ausfürhlichen check, der normalerweise alle 20 mal durchgeführt wird. und fsck mit der option auszuführen, daß das jedesmal passiert, gefällt mir auch nicht so recht. ich wil schon, daß jedesmal fsck aufgerufen wird, aber abhängig von den mount-counts der ausführliche check stattfindet. an den mount-counts will ich also aus sicherheitsgründen gar nichts verändern. trotzdem danke für den vorschlag. die idee ist auch nicht so schlecht. ciao tobias -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Hallo Tobias, you wrote:
dann kommt es doch aber nie zu dem ausfürhlichen check, der normalerweise alle 20 mal durchgeführt wird. und fsck mit der option auszuführen, daß
...schreib doch einfach die Zahl der reboots in einer Datei mit. In der Bash koennte das folgendermassen passieren: ============================================================================= bcount=`cat /var/adm/bcount` if [ "$bcount" == "20" ] ; then fsck... echo 0 > /var/adm/bcount else echo $(($bcount + 1)) > /var/adm/bcount fi ============================================================================= CU, Stefan -- Accept nothing short of perfection! -- anon Perfection is achieved only on the point of collapse. -- C.N.Parkinson -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Tobias Markfeld wrote:
Ich weiss, Du moechtest am bestehenden fsck und am mount count nichts aendern. Andererseits ist Linux ja ein System, dass normalerweise sehr selten gebootet wird, und dafuer ist wohl auch der Standard mount count von 20 ausgelegt. Wenn Du aber, so wie ich, den Rechner mindestens einmal taeglich bootest, ist 20 schon recht wenig, und ich halte es nicht fuer fahrlaessig, ihn (mittels /sbin/tune2fs) z.B. auf 100 hinaufzusetzen. Natuerlich bei ge`umount'etem Root-FS aus dem Rettungs-System heraus. Damit dann aber die langwierigen Checks nicht zwar seltener, aber trotzdem genauso ueberraschend und damit oft zum falschen Zeitpunkt kommen, kannst Du ja z.B. den Zaehler beim Booten anzeigen lassen oder beim Shutdown eine (akustische ;-) Meldung anzeigen lassen, wenn beim naechsten mounten ein langwieriger Check faellig wird. In dem Fall kannst Du ja die Maschine gleich nach dem Shutdown noch einmal booten, und die Sache so hinter Dich bringen. Den mount count kannst Du z.B. so auslesen: mcount /dev/hdb1 wobei mcount = #!/usr/bin/bash DEVICE=$1 MOUNTCOUNT=`/sbin/tune2fs -l $DEVICE 2> /dev/null \ |grep '^Mount'|sed 's/.*: *\([0-9]*\).*$/\1/'` echo $MOUNTCOUNT Ist nicht das, wonach Du gesucht hast, aber besser als nix ;-) m. -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Melchior FRANZ wrote:
Ich weiss, Du moechtest am bestehenden fsck und am mount count nichts aendern.
jau.
timmt auch wieder.
genau das würde ja trotzdem passieren...
Ist nicht das, wonach Du gesucht hast, aber besser als nix ;-)
richtig. danke trotzdem. gefällt mir aber nicht hundertprozentig. und zwar weil ich ja aktiv werden muß. ich habe die wahl zwischen einem extra-boot-vorgang, und die nervige sache hinter mich zu bringen. und auf der anderen seite kann ich mich auch weiterhin kalt überraschen lassen. ich will aber eigentlich gar nichts mehr tun. es soll vollkommen automatisch durchgeführt werden, aber nicht beim start. Frank Heilmann wrote:
im prinzip schon. nämlich dann, wenn der ausführliche check durchgeführt wird. das kann ja schließlich auch zu einem anderen zeitpunkt (beim runterfahren passieren.
das wäre auch eine idee. darauf bin ich auch neulich gestoßen. wie genau es geht, habe ich nicht ausprobiert. es würde aber auf dasselbe herauskommen: ich würde nur noch den fast-boot benutzen. fsck würde niemals mehr den ausführlichen check durchführen. das soll ja nicht sein. oder aber ich müßte mich in bestimmten abständen dazu entschließen, den normalen boot mit dem ausführlichen check zu wählen. ich müßte also wieder "aktiv" werden und die "nervige sache" erleben. es sollte doch aber alles vollautomatisch sein. Stefan Giessler wrote:
der weg ist allerdings meiner vorstellung schon amnächsten. kommt mir aber nur etwas umständlich vor. denn warum das rad neu erfinden? die mount-counts und fsck beherrschen die ganze periodische durchführung des ausführlichen checks doch schon. es soll eben nur beim runterfahren passieren. hier also die lösung, an der ich zur zeit tüftele: ich habe das halt-script in /sbin/init.d um einige zeilen aus dem boot-script (das unverändert geblieben ist) ergänzt. das script habe ich einmal angehängt. dabei wird fsck auch beim runterfahren aufgerufen. da die filesysteme beim start erst nach fsck gemountet werden, erhöht sich der jeweilige mount-count erst da. daher kann nur im halt-script der maximale mount-count erreicht sein. nicht beim booten. man muß noch dazu sagen, daß fsck im halt-script natürlich erst dann durchgeführt wird, wenn alle filesysteme ge-umount-et bzw. als ro ge-remountet sind (einschließlich root). andernfalls müßte es zu einer fehlermeldung kommen. die eingefügten zeilen sind durch jeweils zwei dreistellige kommentare der form ### eingeschlossen und beginnen etwa bei # do fsck and start sulogin, if it fails. ich habe es jetzt einige male getestet. und es scheint genau meinen vorstellungen zu entsprechen. was meint ihr dazu? irgendwelche bedenken? ich nehme an, die bedenken hinsichtlich des root- filesystems, das als rw gemountet sein könnte, konnte ich ausräumen. ciao tobias <HR> <UL> <LI>application/octet-stream attachment: boot </UL> -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

* Tobias Markfeld <Tobias@Markfeld.de> schrieb am 26.Aug.1999:
Melchior FRANZ wrote:
Sorry, die Mail von Melchior habe ich wohl überlesen.
Auf einem System das nur ganz selten gebootet wird, wird bei jedem booten geprüft. Die 20 ist offensichtlich schon eine Zugeständnis. Bernd -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Melchior FRANZ wrote:
Wie wäre es damit: ----8<---- for i in `cat /etc/fstab |grep ext2 |grep -v 0$ | cut --delimiter=' ' -f 1`; do TEXT=$(tune2fs -l $i 2>/dev/null) COUNT=$(echo "$TEXT"|grep Mount|awk '{print $3}') MAXCOUNT=$(echo "$TEXT"|grep Maximum|awk '{print $4}') echo "Mount count for $i is $COUNT"; if [ "$COUNT" -ge "$MAXCOUNT" ]; then echo -e "$i has reached maximum mount count and\nwill therefore be checked on next boot"| mail -s "filesystem check on next boot" root fi done ---->8---- das Stück gehört in /sbin/init.d/boot irgendwo nach den Teil, in dem die Filesysteme gemountet werden (ab Zeile 172 bei 6.0). Falls der Maximale Mount Count erreicht wurde, wird man per mail über den bevorstehenden Check benachrichtigt. Theoretisch könnte man eine Benachrichtigung auch in eine Datei umleiten und lilo damit aufrufen (man lilo.conf => /message). Den Check kann man umgehen, indem man am lilo-prompt fastboot=1 anfügt, oder den Rechner mit shutdown -f ... herunterfährt. cu Ludwig -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com

Am 25-Aug-99 schrieb Tobias Markfeld :
Den hat er ja beim runterfahren schon gemacht.
auszuführen, daß das jedesmal passiert, gefällt mir auch nicht so recht. ich wil schon, daß jedesmal fsck aufgerufen wird,
Wird es doch, aber solange das Filesystem ok ist macht er halt nichts. Sollte das Dateisystem beschädigt sein (durch den fsck beim runterfahren unwahrscheinlich), dann macht er sehr wol einen check, unabhängig vom Counter.
Wenn Du das script schreibst hast Du alle Fäden in der Hand und kannst Das gestalten wie Du willst.
trotzdem danke für den vorschlag. die idee ist auch nicht so schlecht.
Bitte. mfg Peter Küchler Registrierter Linux-User #127408 -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
participants (9)
-
a8603365@unet.univie.ac.at
-
B.Brodesser@online-club.de
-
ca.becker@t-online.de
-
dmb_linux@dmb-sll.de
-
ludwig.nussel@gmx.de
-
peter.kuechler@frankfurt.netsurf.de
-
Stefan.Giessler@edmd.str.daimler-benz.com
-
TMarkfeld@r-w.de
-
Tobias@Markfeld.de