Hallo!
Ich habe Linvdr 0.7 und es giet so ca. bei jeden 20 mal Starten ein
File System Check und der dauert dann immer sehr lange!
Kann ich das irgendwo abschalten oder den interwall verlänger?
Gruß Mark.
Hallo!
Ich habe Linvdr 0.7 und es giet so ca. bei jeden 20 mal Starten ein
File System Check und der dauert dann immer sehr lange!
Kann ich das irgendwo abschalten oder den interwall verlänger?
Gruß Mark.
Hi,
also der fsck sollte bei v0.7 eigentlich vor dem Shutdown gemacht werden. Mit tunefs kann man am Filesystem schrauben, ob das aber bei Linvdr dabei ist kann ich Dir nicht sagen; Knoppix ist Dein Freund. Allerdings sollte man bei solchen Änderungen sehr vorsichtig sein, sonst sind die Daten futsch.
Wenn das bei jedem 20 Start auftaucht erscheint mir das außerdem etwas zu oft, gibt es vielleicht Probleme mit Deiner Platte oder dem IDE Controllen?
... das kommt davon, wenn man in der manuellen Installation die Platte nicht formatieren lässt, dann wird auch tune2fs -c 0 -i 1m ${PARTITION} nicht ausgeführt.
Viele Grüße, Mirko
Wenn Du gar keinen Check willst (nicht empfehlenswert), dann
tune2fs -c 0 /dev/deinepartition
Ansonsten siehe cooper's Antwort, dann wird's 1 mal monatlich geprüft.
Uli
Danke für die Hilfe!
Gruß Mark.
Da hab ich nun ebenfalls ne Frage zu...
(Gerade heute habe ich die Dateisystemprüfung erstmals bemerkt beim Hochfahren!)
Ich habe vorletzte Woche noch die tolle Animation installiert um die Zeit während der Prüfung zu überbrücken mit Information im Display...
Und ich hatte es so verstanden, als würde LinVDR automatisch beim Runterfahren prüfen, und nicht beim Hochfahren.
Jetzt war heute der Test aber beim Hochfahren! - Warum?
Obiger tune2fs-Befehl sagt ja nur, dass die Mountcounts ignoriert werden, und stattdessen 1x monatlich geprüft werden soll! Allerdings ja nichts über den Zeitpunkt, und das geht ja laut Man-Page auch nicht mit standardmäßig!
Was stimmt denn hier nicht, wenn das ganze beim Hochfahren passiert?
Welches Skript ist bei inkorrekt?
Danke für sachdienliche Hinweise, Gruß,
Marcus
@marcusfischer
Das kann man so direkt nicht spezifizieren.
Wie das funktioniert verstehe ich so:
Im rcShutdown wird dann ein fsck forciert, wenn der nächste Check innerhalb 24 Std ansteht. fsck -y -f $ROOTDISK
Im rcStart steht auch ein fsck, der aber nur dann greift, wenn das Filesystem nicht clean ist, was bei Dir wohl der Fall war oder siehe unten. fsck -y /
Mit diesem Mechanismus sollte also ein fsck normalerweise nur beim Shutdown durchgeführt werden, falls er demnächst fällig ist.
Das betraf bisher jetzt nur das Rootfilesystem /dev/hda1
So wie es für mich aussieht, werden alle anderen Filesysteme in der fstab in rcStart gecheckt: fsck -y -A -R
Soweit, was ich aus den Start/Stop-Skripten rcStart und rcShutdown herauslesen konnte.
Ich lasse mich da aber gerne belehren.
Uli
Ah, dann ist das "Problem" vielleicht garkeins!
Wenn dem so ist wie du schreibst, dann ist klar warum beim Hochfahren die Prüfung stattfand: Ich habe das Gerät seit Donnerstag Abend nicht angehabt! - Wenn also der VDR innerhalb dieser drei Tage nun über den Zeitpunkt für den Test läuft, dann findet der Test beim nächsten Starten statt!
Danke und Gruß,
Marcus
ZitatOriginal von marcusfischer
Ah, dann ist das "Problem" vielleicht garkeins!
Genau.
Viele Grüße, Mirko
Kann das zu einem Problem werden, wenn der VDR öfter mal länger aus ist, aber pünktlich zu ner Aufnahme wach werden soll?
Ich überlege gerade, ob man nicht unterhalb von /var/lock/ eine Datei ablegen sollte, die einen festen Zeitpunkt für nen Check beinhaltet.
Dann könnte man den Check tatsächlich pauschal ausschalten im Dateisystem.
Das Shutdown-Skript könnte dann in die Datei gucken! - Wenn das Datum überschritten ist wird der Test beim Runterfahren durchgeführt, ansonsten nicht.
Nach dem Check wird die Lock-Datei mit nem neuen Datum in der Zukunft versehen und fertig!
Nur so ins unreine gesprochen
Gruß,
Marcus
Schalte den monatlichen Fsck ab, und vergleiche den Monat des letzten fsck mit dem aktuellen Monat, sind sie unterschiedlich führe den fsck beim runterfahren aus.
MONTH=`date | awk '{print $2}'`
LASTCHECK=`tune2fs -l /dev/hda1 | grep "Last checked:" | awk '{print $4}'`
if [ $MONTH != $LASTCHECK ]; then
/etc/init.d/runvdr loaddriver
RunFsck="true"
fi
Achtung: Bei der Aufwachmethode 'settime' ist beim Ausführen der rcShutdown die Systemzeit bereits auf Mai 2004 gestellt und weder das Überprüfen des Monats, noch auf die nächsten 24h bewirkt einen fsck.
Bei abgeschaltetem monatlichen fsck würde dieser somit NIE ausgeführt.
Gruß Jens.
ZitatOriginal von marcusfischer
Kann das zu einem Problem werden, wenn der VDR öfter mal länger aus ist, aber pünktlich zu ner Aufnahme wach werden soll?
Ja, könnte. Bei einer 300- oder gar 500-GB-Platte dauert der fsck durchaus mal ne halbe Stunde.
Die Abhilfe ist einfach: Lass halt wieder alle X mal checken, z.B. alle 30 oder 40 mal, wenn du deinen VDR so selten benutzt. Dann prüfst du im Shutdown-Script halt nur, ob die nächsten ein oder zwei Systemstarts der max-mount-count erreicht würde und gut ist's.
Oder du lässt den VDR einfach jeden Tag um 2 Uhr aufwachen, dann holt er bei der Gelegenhei auch gleich das aktuelle EPG und füttert den Autotimer entsprechend.
Viele Grüße, Mirko
Hallo,
hat nur bedingt mit dem Thema selbst zu tun, sonder mehr mit den von marcusfischer erwähnten Animationen zu tun.
Zitatch habe vorletzte Woche noch die tolle Animation installiert um die Zeit während der Prüfung zu überbrücken mit Information im Display...
Hab auch Animationen, wenn der VDR startet eine Upload-Animation und wenn er runterfährt eine Poweroff-Animation. Jetzt wäre meine Idee / mein Wunsch diese Animationen zu unterbrechen, wenn ein Check ansteht und eine Fsck-Animation abzuspielen bzw. auch nur einzublenden. Wäre schon hilfreich, damit man weiß, warum kein TV-Bild kommt.
Wie frage ich nun ab, ob hier ein Check stattfindet. Die laufende Animation abbrechen kann ich ja mit killall showpic.
Was auch nett wäre, wenn die fsck-Animation wieder von vorne gestartet wird, sollt der Check noch laufen.
Wäre für Code-Beispiel oder Anregungen dankbar.
Mfg Josef
P.S.: Hab ich das richtig verstanden, dass er in der rcShutdown nur die Platte / Partition überprüft, auf der LinVDR installiert ist, also ROOTDISK. Warum fragt er eigentlich nicht auch alle anderen ab?
ZitatJetzt wäre meine Idee / mein Wunsch diese Animationen zu unterbrechen, wenn ein Check ansteht und eine Fsck-Animation abzuspielen bzw. auch nur einzublenden. Wäre schon hilfreich, damit man weiß, warum kein TV-Bild kommt.
Beim Runterfahren zeigt LinVDR 0.7 automatisch eine entsprechende Grafik an.
Beim Hochfahren geht es wegen dem RO-Dateisystem nicht, da lassen sich die DVB-Treiber nicht ohne weiteres laden.
ZitatP.S.: Hab ich das richtig verstanden, dass er in der rcShutdown nur die Platte / Partition überprüft, auf der LinVDR installiert ist, also ROOTDISK.
Genau.
ZitatWarum fragt er eigentlich nicht auch alle anderen ab?
Darum. LinVDR ist eben von Anfang an darauf ausgelegt, mit einer Partition für alles zu arbeiten.
Viele Grüße, Mirko
Hallo,
danke für Deine Antworten cooper und für Deine Arbeit!
Zitat
Beim Runterfahren zeigt LinVDR 0.7 automatisch eine entsprechende Grafik an.
Beim Hochfahren geht es wegen dem RO-Dateisystem nicht, da lassen sich die DVB-Treiber nicht ohne weiteres laden.
Hab mich wohl nicht genau genug ausgedrückt. Das mit der Grafik und LinVDR auf dem TV weiß ich.
Was ich will, ist eine Splash-Grafik auf meinem GLCD. Beim Starten läuft bereits eine. Den Aufruf sieht man hier in der rcStart. Und diese läuft bzw. steht irgendwann beim fsck.
#!/bin/sh
#
# by Thomas Koch <tom@linvdr.org>
# 10.05.2003
#
PATH=/sbin:/bin:/usr/sbin:/usr/bin
umask 022
export PATH
# GLCD splash abspielen
/usr/bin/splash_lcd_image.sh upload &
#
stty onlcr
hwclock -s --directisa
progress() {
i=0
total=80
line=7
let t=$1*$total/100
while [ $i -lt $t ]; do
echo -n -e "\033[$line;${i}H"
echo -n -e "\033[42;32m \033[0m"
echo -n -e "\033[$(($line+1));0H"
echo -n -e "\033[2K"
echo -n $2
let i=$i+1
done
}
....
Alles anzeigen
Was ich will, ist, daß diese Animation, bei startendem fsck, gestoppt wird und eine für fsck aufgerufen wird.
killall showpic
/usr/bin/splash_lcd_image.sh fsck &
Möglichst sollte die Animation wie ich oben schon erwähnt habe im loop laufen, bis fsck beendet ist.
Die Frage ist nun, wie stelle ich fest, ob ein fsck gestartet wurde und wie wann bzw. ob er beendet ist.
Hoff ich hab mich diesesmal klarer ausgedrückt.
Mfg Josef
Schau dir mal die Manpage von fsck an.
Wenn ich das richtig sehe, kannst du mit "fsck -N" über den Exit Code rausbekommen, ob er einen Check machen würde oder nicht. Dann kümmerst du dich ums Graph-LCD und startest fsck ohne -N.
Könnte funktionieren.
Viele Grüße, Mirko
ZitatOriginal von cooper
... das kommt davon, wenn man in der manuellen Installation die Platte nicht formatieren lässt, dann wird auch tune2fs -c 0 -i 1m ${PARTITION} nicht ausgeführt.
Viele Grüße, Mirko
Hi,
muss ich den tune2fs-Befehl nur einmalig ausführen oder wird der Befehl irgendwo in eine Startdatei mit eingebaut? Ist das ein Problem, wenn fsck auf 2 Platten gleichzeitig ausgeführt wird?
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!