Mich hat es die ganze Zeit genervt, wenn der VDR mehrere Minuten für den FSCK beim booten braucht. Meißtens tritt das ja genau dann auf wenn man es überhaupt nicht brauchen kann.
Ich hab deshalb mal die Datei /etc/vdr/shutdown-hooks/S90.custom
angepasst. Jetzt wird überprüft, ob in den nächsten 24h ein FSCK nötig ist.
Falls ja, wird das SHUTDOWNCMD mit "shutdown -F -r now" überschrieben.
Also der VDR wird neu gebootet und ein FSCK auf allen Partitionen durchgeführt.
Zusätzlich wird auch noch ein entsprechender Kommentar ins Syslog geschrieben.
Damit alles richtig funktioniert sollte noch /usr/share/vdr/shutdown-hooks/S90.nvram-wakeup in /usr/share/vdr/shutdown-hooks/S80.nvram-wakeup umbenannt werden.
Die Nummerierung kann auch anders sein, hauptsache Sx0.nvram-wakeup wird vor Sy0.custom ausgeführt, also x < y. Sonst wird das SHUTDOWNCMD von nvram-wakeup nochmal überschrieben.
Mit "tune2fs /dev/hda1 -c 0" kann der FSCK nach "Max Mount Count" deaktiviert werden. (Das sollte für alle Partitionen entsprechend gemacht werden).
Mit "tune2fs /dev/hda1 -i 1m" wird das Intervall für den FSCK auf 1 Monat eingestellt.
Es reicht wenn man das Intervall für die Partition, die im Shutdown-Hook abgefragt wird, einstellt. Durch "shutdown -F -r now" werden trotzdem alle Partitionen überprüft. Es kann aber auch nichts schaden wenn man für alle Partitionen ein Intervall einstellt.
Was noch stört / fehlt:
Nach dem Reboot für den FSCK sollte der VDR automatisch wieder heruntergefahren werden, da er ja sonst für die "Mindest Benutzer-Inaktivität" weiterläuft. Im schlimmsten Fall läuft der VDR dann 2x die "Mindest Benutzer-Inaktivität", ohne das es nötig wäre.
Gibt es sowas wie einen Start-Hook? z.B. könnte man dem VDR ja nach dem Start ein Shutdown-Command übergeben, falls der Mount Count auf der Root-Partition 1 ist, weil dann davor gerade ein FSCK durchgeführt wurde. Die Frage ist nur wann und wo ich das dem VDR übergeben kann.
Vor dem Shutdown / Reboot sollte noch eine Message über das OSD ausgegeben werden, die darüber informiert dass ein Reboot für den FSCK gemacht wird. Sonst fragen mich meine Eltern einmal im Monat warum der VDR sich manchmal nicht ausschaltet. Gibt es da ein entsprechendes Gegenstück zu ABORT_MESSAGE?
Falls da noch jemand eine Idee / Tipp hat, wäre ich sehr dankbar.
Gruß Hermann