Ich möchte den Thread noch einmal aufwärmen, da noch keine befriedigende Lösung vorliegt.
Also noch einige Gedanken dazu:
cron fällt aus, da nicht sicher ist, ob der VDR überhaupt an ist, wenn der Job laufen soll.
Der ideale Zeitpunkt ist immer dann, wenn der VDR nix zu tun hat.
Das ist dann der Fall, wenn er abschalten soll.
Ein Ansatz wäre es, mittels Autotimer eine Aufnahme zu programmieren, die im gewünschten Turnus ausgestrahlt wird und die man ansonsten nicht braucht.
Ein Skript in den shutdown-hooks prüft dann das Vorhandensein des Aufnahmeverzeichnisses. Gibt es das nicht, passiert auch nichts. Gibt es das Verzeichnis, wird es gelöscht und ein reboot mit fsck-Schalter (shutdown -rF) ausgelöst.
Man muss eigentlich nur aufpassen, dass der Hook erst nach der Abfrage auf laufende VDR-Erweiterungen (vdrconvert, noad o.ä.) und vor dem Special-Shutdown vom nvram-wakeup aufgerufen wird.
Gruß
Claus
file system check automatisieren
- m. keller
- Geschlossen
-
-
Zitat
Original von thc
cron fällt aus, da nicht sicher ist, ob der VDR überhaupt an ist, wenn der Job laufen soll.
Naja, dann programmiere mit cron eine Aufwachzeit (z.B. 04:30), dann ist der vdr zu diesem Zeitpunkt an!ZitatEin Ansatz wäre es, mittels Autotimer eine Aufnahme zu programmieren, die im gewünschten Turnus ausgestrahlt wird und die man ansonsten nicht braucht.
Halte ich für Blödsinn- was passiert, wenn die Sendung abgesetzt wird? Und warum soll er das evtl. täglich aufnehmen, wenn einmal im Monat ein fsck laufen soll?Mein ja nur...
-
Zitat
Originally posted by thc
Ich möchte den Thread noch einmal aufwärmen, da noch keine befriedigende Lösung vorliegt.
Also noch einige Gedanken dazu:
<snip>Und was spricht dagegen einfach bei jedem Ausschalten mit fstune zu überprüfen ob der Mount-count erreicht ist und dann den check zu erzwingen?
Das ist doch das einfachste und wahrscheinlich zuverlässigste.
Klar muss man vorher sicherstellen, dass die einzelnen Partitionen read-only gemounted sind, aber das Problem hat man bei anderen Lösungen ja auch.
Um das Readonly-Problem zu lösen könnte man in shutdown-script ja auch feststellen ob ein Check fällig ist und dann einen Neustart erzwingen. Wie man allerdings einen Neustart erzwingt weiss ich nicht.
Tschüss Jo
-
Servus,
ZitatIch möchte den Thread noch einmal aufwärmen, da noch keine befriedigende Lösung vorliegt.
Ähm, doch. Check beim runterfahren, wenn ein fsck innerhalb der nächsten 24h anstünde. So einfach. Und genau so implementiert bei LinVDR 0.7.ZitatDer ideale Zeitpunkt ist immer dann, wenn der VDR nix zu tun hat.
Das ist dann der Fall, wenn er abschalten soll.
Genau, weshalb dann der fsck beim shutdown durchgeführt wird. Und wenn du die Kiste täglich um 2 Uhr zum EPG-Scan weckst, hast du gute Chancen, dass der FSCK am Ende des EPG-Updates kommt.ZitatEin Ansatz wäre es, mittels Autotimer eine Aufnahme zu programmieren
Nein, das wäre kein Ansatz. Wirklich nicht.Viele Grüße, Mirko
-
im prinziep hat doch cooper das problem gelöst und hat auch das notwendige skript dazu gepostet.
Kann man das eigentlich direkt verwenden (copy&paste ) oder war das nur ne vermutung/nur für linvdr 0.7 (wann kommts denn *drauf freu*) gültig?
momentan komm ich nicht dazu es zu testen/bzw bin zu faul dazu, da ich noch zig andere sachen machen muss (schule, arbeiten im haus).... -
Das Listing war nur ein Auszug aus dem, was derzeit in der 0.6.2 drin ist. Ich hab es halt um die Teile von Hand bereinigt, die auf einem LinVDR 0.6 nicht laufen können. Ist also auf LinVDR 0.6 ungetestet, aber man sieht ja, was man machen muss. Könnte sein, dass man evtl. noch das eine oder andere Programm austauschen müsste.
Viele Grüße, Mirko
-
Hi,
gehe ich richtig mit der Annahme das die 0.62 eine "interne" Version ist?
-
Das ist eine Development-Version. Mehr nicht. Du wirst halt wohl nicht upgraden können, und das Dingen hat auch ein paar Bugs. Aber wer's sich ansehen will, warum nicht? Mit Erscheinen der 0.7 wird halt in jedem Fall eine Neuinstallation fällig.
Viele Grüße, Mirko
-
hier mal noch meine version...
Codecur=`tune2fs -l /dev/hda1 | grep "Mount count" | awk '{print $3}'` max=`tune2fs -l /dev/hda1 | grep "Maximum mount count" | awk '{print $4}'` if [ $cur -eq $[$max-1] ] then mount -no remount, ro / fsck.ext3 /dev/hda1 -y -f -c -v mount -no remount, rw / fi
zeilt halt auf die version mit max mount count ab, nicht auf die mit dem datum... ist aber noch nicht wirklich getestet..
aber die idee ist wirklich gut den check am ende durchzuführen... das hat mich gleichma dazu angeregt schnell was zu basteln
Gruß,
Thomas -
Zitat
Original von cooper
Servus,... das hatten wir doch alles schon mal. Warum benutzt du nicht einfach tune2fs, um auf einen fsck pro Monat statt alle 25 mounts umzuschalten?
Ansonsten, in der poweroff.pl hat das ganze nichts zu suchen, sondern sinnvollerweise in der rcShutdown:
Bash
Alles anzeigen#!/bin/bash ROOTDISK=/dev/hda1 .............. umount -a -r # Vorgezogener fsck, falls ein fsck innerhalb der nächsten 24h ansteht NextFsck=`tune2fs -l $ROOTDISK | grep "Next check after" | cut -d":" -f2-` if [ `date -d "$NextFsck" +%s` -lt $[`date +%s`+86400] ]; then touch /etc/mtab if [ $? -eq 0 ]; then echo "root fs still mountet, skipping fsck!" else echo "Running fsck in advance" fsck -y -f $ROOTDISK echo "fsck done" fi else echo "No fsck needed" >/dev/tty1 fi
Du musst dann noch das Busybox-Grep gegen das Original austauschen, fertig.Viele Grüße, Mirko
Hi!
Habe mal die relevanten Sachen in ein Test.Script geschrieben, und noch ein Fehler bei meinen System gefunden:
Wobei in Zeile 7 folgendes steht:
Das bezieht sich doch sicherlich auf das Programm date. Dieses ist bei mir auf die busybox verlinkt.
Wie kann ich das mit debtool herunterladen?
ein "debtool -s date" bringt viele Ergebnisse, aber ebend nicht das einfache Programm date als Ergebnis.Kann mir vielleicht jemand "date" hier zur Verfügung stellen?
Uwe
PS: grep habe ich ausgetauscht!
-
Zitat
Original von Uwe
Kann mir vielleicht jemand "date" hier zur Verfügung stellen?
Klar, funzt unter linvdr. Wenn Du Deinen Test abgeschlossen hast, haben wir ja dann eine Lösung, um fsck beim Ausschalten ausführen zu lassen
Zumindest für alle Ungeduldigen, die nicht auf linvdr 0.7 warten können.
Nils
-
Zitat
Original von starter
Klar, funzt unter linvdr. Wenn Du Deinen Test abgeschlossen hast, haben wir ja dann eine Lösung, um fsck beim Ausschalten ausführen zu lassen
Zumindest für alle Ungeduldigen, die nicht auf linvdr 0.7 warten können.
Nils
Hi, Danke für das File!
Nun funktioniert das Script (von cooper) auch bei mir.
starter: Das ist kein neues Script oder so, sondern nur das von cooper, hier auf Seite 1. Ich habe mir nur ein "Test-Script" gemacht, um zu sehen, ob alles richtig ausgeführt wird.
Uwe
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!