einmal mehr quäle ich Euch mit Fragen....:
Ich habe in einem Server einen eSATA-Controller mit zwei Platten
angehangen, die Lenny fortan logisch vor dem bereits vorhandenen
SCSI-RAID5 angeordnet hat. Ergo wurde aus ehemals /dev/sda1 (mit dem
Betriebsystem) /dev/sdc1 und der Bootvorgang lief vor die Wand. Das
konnte ich reparieren, indem ich in /etc/fstab und /boot/grub/menu.lst
die Platten mit den IDs aus /dev/disk/by-id/ adressiert habe. Das geht
sehr hübsch und löst das Problem. Ich habe nun nur noch Trouble mit
/etc/init.d/checkroot und /etc/init.d/checkfs. Beide loggen nach
/var/log/fsck/checkroot bzw. /var/log/fsck/checkfs und in beiden Logs
steht 'keine Berechtigung'. Das ist bestimmt nicht so super, aber ich
weiß nicht, wo ich was ändern muss....
Außerdem möchte ich gerne, dass die Maschine das elendig lange
automatische fsck nach jedem 30sten Start nicht beim Start, sondern beim
29ten Shutdown durchführt. Ist das eine gute Idee? Wie kann ich das
elegant lösen?
Thanks,
Boris
--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/
Zum AUSTRAGEN schicken Sie eine Mail an debian-user-g...@lists.debian.org
mit dem Subject "unsubscribe". Probleme? Mail an listm...@lists.debian.org (engl)
> Außerdem möchte ich gerne, dass die Maschine das elendig lange
> automatische fsck nach jedem 30sten Start nicht beim Start, sondern beim
> 29ten Shutdown durchführt. Ist das eine gute Idee? Wie kann ich das
> elegant lösen?
man tune2fs
Moin Heinz,
danke für Deinen Beitrag.
Ich habe allerdings die leise Vermutung, als wäre der Kern meiner Frage
nicht so recht angekommen: Mir geht es darum, den Scan auszuführen, wenn
der Rechner runtergefahren wird! Das meine ich in de Manpage nicht
gefunden zu haben, oder übersehe ich was?
Grüße,
Boris
Heinz Diehl wrote:
> On 30.03.2009, Boris wrote:
>
> > Außerdem möchte ich gerne, dass die Maschine das elendig lange
> > automatische fsck nach jedem 30sten Start nicht beim Start, sondern
> > beim 29ten Shutdown durchführt. Ist das eine gute Idee? Wie kann
> > ich das elegant lösen?
>
> man tune2fs
Ich kann da nichts entsprechendes finden. Ich hätte ja spontan auf "-O
feature" getippt. Da dort nichts entsprechendes steht, habe ich dann
doch die ganze manpage gelesen und bin immer noch nicht fündig
geworden. Oder gibt's das nicht in stable?
Ulrich Fürst
--
This mail was scanned by BitDefender
For more information please visit http://www.bitdefender.com
> Ich habe allerdings die leise Vermutung, als wäre der Kern meiner Frage
> nicht so recht angekommen: Mir geht es darum, den Scan auszuführen, wenn
> der Rechner runtergefahren wird!
Sorry, ich habe nicht richtig gelesen, deshalb...
> Das meine ich in de Manpage nicht
> gefunden zu haben, oder übersehe ich was?
...kannst du auch nichts finden.
Wenn du den check beim Runterfahren haben willst, dann musst du ihn in einen
der Skripte einbauen, die da aktiviert werden. Oder du haengst einen eigenen
Skript mit in den shutdown Prozess ein.
Als Vorgehensweise: zunaechst suchst du dir die Stelle, wo die
entspr. Dateisysteme ausgehaengt ("umount") werden, und fuegst danach deinen
eigenen Aufruf von fsck ein. Die typischen Startskripte vieler Distributionen
benutzen fsck mit der Option "-A". Damit schaut fsck in die fstab und checkt
die Systeme, die dort aufgefuehrt sind.
Du kannst auch den Check beim Hochfahren abstellen, in dem du die
entspr. Skripte editierst oder in fstab die letzte Zahl ("fs_passno", siehe
dazu "man fstab") auf Null stellst (oder weglaesst).
>> Außerdem möchte ich gerne, dass die Maschine das elendig lange
>> automatische fsck nach jedem 30sten Start nicht beim Start, sondern beim
>> 29ten Shutdown durchführt. Ist das eine gute Idee? Wie kann ich das
>> elegant lösen?
Da musst Du Dich mit den Runleveln und den Skripten in
/etc/init.d/ befassen. Hab da lang nicht reingeschaut,
heisst IIRC checkfs und muss statt in Runlevel S in
Runlevel 0 gestartet werden.
> man tune2fs
Nein. Ihm ging es nicht um die Fequenz.
--
flori
Komfortables Web2News-Gateway http://www.newsoffice.de/
Vim-Hilfe auf Deutsch http://www.florianrehnisch.de/vimhelp/
Aaahhhh, ja, naklar....
Danke Florian, das ist sicherlich der Weg!
Ich finde in /etc/rcS.d einen Symlink zum checkfs. Reicht es wohl,
diesen Symlink in /rc0.d zu moven? Das wäre ja hübsch einfach.....
Grüße,
Boris
> Florian Rehnisch schrieb:
> Da musst Du Dich mit den Runleveln und den Skripten in
>>
>> /etc/init.d/ befassen. Hab da lang nicht reingeschaut,
>> heisst IIRC checkfs und muss statt in Runlevel S in
>> Runlevel 0 gestartet werden.
>>
>
> Aaahhhh, ja, naklar....
> Danke Florian, das ist sicherlich der Weg!
> Ich finde in /etc/rcS.d einen Symlink zum checkfs. Reicht es wohl,
> diesen Symlink in /rc0.d zu moven? Das wäre ja hübsch einfach.....
Wahrscheinlich nicht. Du kannst keinen Filesystemcheck auf ein rw
gemountetes Device loslassen. Beim boot ist das kein Problem. Beim
shutdown dürfte das eine größere Operation werden.
Allerdings frage ich mich ob dieser periodische Check bei einem
modernen Journaling Filesystem überhaupt noch notwendig ist.
ttyl8er, t.k.
Moin Thomas,
> Wahrscheinlich nicht. Du kannst keinen Filesystemcheck auf ein rw
> gemountetes Device loslassen. Beim boot ist das kein Problem. Beim
> shutdown dürfte das eine größere Operation werden.
Das eben ist die Frage: Ist das Filesystem im Runlevel 0 noch gemountet?
> Allerdings frage ich mich ob dieser periodische Check bei einem modernen
> Journaling Filesystem überhaupt noch notwendig ist.
Dadrüber ist viel zu lesen im Netz der Netze und meine elementare Essenz
ist, dass es keinesfalls schaden kann....
> Allerdings frage ich mich ob dieser periodische Check bei einem
> modernen Journaling Filesystem überhaupt noch notwendig ist.
Ja.
Denn e2fsck fängt andere Fehler ab als der Grund für das Vorhandensein
des Journals.
S°
--
Sig lost. Core dumped.
> Thomas Kosch schrieb:
> Moin Thomas,
>
>> Wahrscheinlich nicht. Du kannst keinen Filesystemcheck auf ein rw
>> gemountetes Device loslassen. Beim boot ist das kein Problem. Beim
>> shutdown dürfte das eine größere Operation werden.
>
> Das eben ist die Frage: Ist das Filesystem im Runlevel 0 noch
> gemountet?
Nein. Denn dann ist der Computer aus. Im Prinzip müsste es reichen das
nach "umountroot" zu platzieren.
ttyl8er, t.k.
Wow, sehr interessanter Ansatz. Ist doch auch wirklich sinnvoll, die
Startzeit zu minimieren. Mir passiert es oft: Ich brauche mal eben eine
Info und schalte den Rechner ein. Bumms: Fsck braucht dann erst einmal
und ich komme nicht weiter.
Beim Runterfahren stört es nicht weiter, ausschalten und soll doch der
Rechner für fsck so lange brauchen wie er will.
Da dieser Ansatz auch lösbar zu sein scheint frage ich mich, wieso das
bei keiner Distro so eingebaut wird.
Viele Grüße
Frank Becker
Ist wenn das root nicht mehr gemountet ist wieder die initrd aktiv,
sprich wird das auf der Platte liegende root einfach ueber die initrd
gemountet?
Und wech,
Manne
> Thomas Kosch schrieb:
>
> > Nein. Denn dann ist der Computer aus. Im Prinzip müsste es reichen das
> > nach "umountroot" zu platzieren.
> >
> Ist wenn das root nicht mehr gemountet ist wieder die initrd aktiv,
> sprich wird das auf der Platte liegende root einfach ueber die initrd
> gemountet?
>
Das war ein Denkfehler meinerseits, ich sehe gerade umountroot remountet
die Dateisystem einfach read only, fsck wird also in jedem Fall gefunden
werden ;)
Trotzdem reicht es glaube ich nicht einfach checkfs.sh passend zu symlinken
da der automatische check ja aufgrund des hochgelaufen Zaehlers beim mounten
gestartet wird.
> Das war ein Denkfehler meinerseits, ich sehe gerade umountroot
> remountet
> die Dateisystem einfach read only, fsck wird also in jedem Fall
> gefunden
> werden ;)
> Trotzdem reicht es glaube ich nicht einfach checkfs.sh passend zu
> symlinken
Ja, das wird eine größere Operation.
> da der automatische check ja aufgrund des hochgelaufen Zaehlers beim
> mounten
> gestartet wird.
Den willst du ja auch in dieser Form nicht. Im Prinzip willst du ja
'max_mounts_count' auf '-1' setzen und dann beim herunterfahren aus
der Ausgabe von 'dumpe2fs -h $VOLUME' den Mount Count herauspulen
(wenn du was anderes als ext* als Dateisystem benutzt hast du, je nach
Dateisystem, möglicherweise verloren) und beim überschreiten einer
bestimmten Anzahl dann einen Filesystemcheck auslösen.
ttyl8er, t.k.
Thomas Kosch schrieb am Mittwoch, den 01. April 2009:
> Den willst du ja auch in dieser Form nicht. Im Prinzip willst du ja
> 'max_mounts_count' auf '-1' setzen und dann beim herunterfahren aus
> der Ausgabe von 'dumpe2fs -h $VOLUME' den Mount Count herauspulen
> (wenn du was anderes als ext* als Dateisystem benutzt hast du, je
> nach Dateisystem, möglicherweise verloren) und beim überschreiten
> einer bestimmten Anzahl dann einen Filesystemcheck auslösen.
Spricht eigentlich was dagegen checkfs.sh so zu ändern, dass es nicht
den Check ausführt, sondern einfach den auszuführenden Befehl in
meinetwegen /forcefsck schreibt.
Dann könnte man beim beenden einfach prüfen, ob /forcefsck existiert
und wenn ja, den dortigen Befehl ausführen. Man muß natürlich dafür
sorgen, dass /forcefsck nicht von checkfs.sh gelöscht wird, was es
momentan ja noch tut.
Problematisch könnte aber sein, dass hinterher kein Logfile mehr zur
Verfügung steht.
Grüße
Christian
--
hundred-and-one symptoms of being an internet addict:
173. You keep tracking down the email addresses of all your friends
(even childhood friends).
> Spricht eigentlich was dagegen checkfs.sh so zu ändern, dass es nicht
> den Check ausführt, sondern einfach den auszuführenden Befehl in
> meinetwegen /forcefsck schreibt.
>
> Dann könnte man beim beenden einfach prüfen, ob /forcefsck existiert
> und wenn ja, den dortigen Befehl ausführen. Man muß natürlich dafür
> sorgen, dass /forcefsck nicht von checkfs.sh gelöscht wird, was es
> momentan ja noch tut.
Man kann so was natürlich beliebig komplizieren.
Darf ich dir dann schon mal die Schrotflinte reichen oder bevorzugst
du 9mm?
ttyl8eter, t.k.
Wahrscheinlich weil beim Start der fsck eher gebraucht wird, zum
Beispiel nach einem Stromausfall o.ä. aber da spricht ja auch nichts
dagegen. Wenn man beim Start die Überprüfung nur bei "force" macht,
ist das ja vertretbar.
Ich finde den Gedanken der Umstellung echt interessant.
Paul
--
Besser wäre ein Dialogfenster (Drücken Sie Escape), das mitteilt: Es ist
jetzt Routine, wollen sie den Schritt übergehen und das nächste Mal ,
Warnhinweis etc.
M.
> Besser wäre ein Dialogfenster (Drücken Sie Escape), das mitteilt: Es ist
> jetzt Routine, wollen sie den Schritt übergehen und das nächste Mal ,
> Warnhinweis etc.
>
Bei der Desktopinstallation von Ubuntu kann man die Routine mit ESC
abbrechen. Vielleicht sollte man das übernehmen.
Beim Ausschalten fände ich so einen fsck eher schlecht. Wenn z.B. die
USV sagt, geh aus PC, dann soll der kein fsck machen was unter Umständen
die Laufzeit der USV überschreitet (Ok, der Event wäre wahrscheinlich
abfangbar).
--
Grüße
Michael
-
Bitte kein Cc an mich, ich lese die Liste.
Thomas Kosch schrieb am Mittwoch, den 01. April 2009:
> On 01.04.2009, at 09:32, Christian Brabandt wrote:
>
>> Spricht eigentlich was dagegen checkfs.sh so zu ändern, dass es nicht
>> den Check ausführt, sondern einfach den auszuführenden Befehl in
>> meinetwegen /forcefsck schreibt.
>>
>> Dann könnte man beim beenden einfach prüfen, ob /forcefsck existiert
>> und wenn ja, den dortigen Befehl ausführen. Man muß natürlich dafür
>> sorgen, dass /forcefsck nicht von checkfs.sh gelöscht wird, was es
>> momentan ja noch tut.
>
> Man kann so was natürlich beliebig komplizieren.
>
War auch nur eine spontane Idee, auf die bereits vorhandene Logik
zurückzugreifen.
> Darf ich dir dann schon mal die Schrotflinte reichen oder bevorzugst du
> 9mm?
Was genau möchtest Du mir sagen?
Grüße
Christian
--
hundred-and-one symptoms of being an internet addict:
175. You send yourself e-mail before you go to bed to remind you
what to do when you wake up.
CTRL-C
??
--
Grüße
Michael
-
Bitte kein Cc an mich, ich lese die Liste.
Am Laptop hilft auch "auf Akku" starten ;-)
>
>
--
Bernhard Vodicka
Ich hab' hier bloß ein Amt und keine Meinung.
-- Friedrich Schiller
> Hallo Thomas!
>
> Thomas Kosch schrieb am Mittwoch, den 01. April 2009:
>
>> On 01.04.2009, at 09:32, Christian Brabandt wrote:
>>
>>> Spricht eigentlich was dagegen checkfs.sh so zu ändern, dass es
>>> nicht
>>> den Check ausführt, sondern einfach den auszuführenden Befehl in
>>> meinetwegen /forcefsck schreibt.
>>>
>>> Dann könnte man beim beenden einfach prüfen, ob /forcefsck existiert
>>> und wenn ja, den dortigen Befehl ausführen. Man muß natürlich dafür
>>> sorgen, dass /forcefsck nicht von checkfs.sh gelöscht wird, was es
>>> momentan ja noch tut.
>>
>> Man kann so was natürlich beliebig komplizieren.
>>
>
> War auch nur eine spontane Idee, auf die bereits vorhandene Logik
> zurückzugreifen.
>
>> Darf ich dir dann schon mal die Schrotflinte reichen oder
>> bevorzugst du
>> 9mm?
>
> Was genau möchtest Du mir sagen?
Hast du dir checkfs.sh und checkroot.sh mal angesehen? Das von dir
angedachte da reinzuhacken ohne das da unter Umständen unangenehme
Seitenwirkungen auftreten dürfte nicht ganz trivial sein.
Die Chance dir dabei in den Fuß zu schießen ist relativ hoch. Ich
wollte nur wissen was du dabei bevorzugst.
ttyl8er, t.k.
Moin zusammen,
erstmal vielen Dank an alle für die zahlreichen Beiträge und für die
vielen Gedanken zu dieser Sache.
Die Motivation ist von Frank nochmal gut beschrieben worden, und es sind
vielfältige zusätzlichen Aspekte (Runlevel, Verhalten beim Stromausfall,
Logfile usw.) dargestellt worden.
Zusammenfassend komme ich dazu, dass das Feature schon Einige
interessiert, die Umsetzung aber (für mich) wohl 'ne Nummer zu groß ist.
Ist das ein Fall für ein Feature Request? Oder findet sich hier ein
Kreis Interessierter, die daran zusammen basteln wollen?
Grüße,
Boris
Ich will das ja sowieso nicht :-)
Aber so ungefaehr hoert sich das im Prinzip schon mal nicht verkehrt an.
Thomas Kosch schrieb am Mittwoch, den 01. April 2009:
>
> Hast du dir checkfs.sh und checkroot.sh mal angesehen? Das von dir
> angedachte da reinzuhacken ohne das da unter Umständen unangenehme
> Seitenwirkungen auftreten dürfte nicht ganz trivial sein.
>
Ich hab jetzt mal einen experimentellen Patch¹ gegen checkfs.sh und
checkroot.sh erstellt. Ich konnte den patch nur sehr begrenzt testen²,
da ich hier aktuell nur eine VM zur Verfügung habe und kein richtiges
System mit mehreren Devices.
Zur Anwendung:
Als root ins /etc/init.d Verzeichnis wechseln.
patch -p1 < patchfile
und dann /etc/init.d/chkfshalt.sh nach /etc/rc0.d/S65chkfshalt
verlinken. Das chkfshalt Script sollte als letztes vor S90halt
ausgeführt werden, also eine Nummer wählen, die entsrpechend hoch ist,
aber kleiner als der halt link.
Die Grundidee ist, dass wenn checkfs.sh einen Dateisystemcheck
durchführen möchte, der Aufruf in /fsck_halt gespeichert wird und
diese Datei beim runterfahren ausgeführt wird. Dummerweise, kann man
dann die Datei nicht mehr löschen und auch kein Log mehr anlegen, weil
bereits alle Dateisysteme ausgehängt worden. Daher wird die Datei dann
nach dem einhängen des root-devices gelöscht (chkroot.sh). In
chkroot.sh wird außerdem grundsätzlich auf den Dateisystemcheck
verzichtet. Durch setzen der Variable CHECK_ON_HALT in den beiden
Scripten kann man das alte Verhalten wieder herstellen. (oder durch
rückgängig machen des Patches).
Wer möchte kann es ja mal testen. Ich übernehme keine Verantwortung.
> Die Chance dir dabei in den Fuß zu schießen ist relativ hoch. Ich
> wollte nur wissen was du dabei bevorzugst.
No risk, no fun ;)
Grüße
Christian
__
¹) Ich habe den Patch auf einem nicht ganz aktuellen testing/sid
System erstellt. Es könnte also sein, dass er nicht passt.
²) Ich halte diese Funktionalität eigentlich auch nicht für sonderlich
sinnvoll.
--
hundred-and-one symptoms of being an internet addict:
176. You lie, even to user-friends, about how long you were online yesterday.
Wow Christian,
da hast Du ja richtig Arbeit reingesteckt!! Vielen Dank!
Ich werde beizeiten einmal daran gehen, diesen Patch auf meinem Server
zu testen. Dazu muss ich den aber erstmal von Etch auf Lenny heben. ;-)
Ich markiere daher den Thread zunächst als closed.
Viele Grüße,
Boris