Auto periodischer Filecheck (fsck) beim Booten für ext4 Datenträger

Hier kommen die Skripte rein, die von euch erstellt wurden.
Gesperrt
Nachricht
Autor
Benutzeravatar
Pike_Bishop
Moderator
Moderator
Beiträge: 2667
Registriert: 11 Feb 2020 22:06
Wohnort: here and there
Receiver 1: Mutant HD2400
Receiver 2: VU Ultimo 4K
Receiver 3: Octagon SF8008
Receiver 4: Gigablue Quad 4K
Receiver 5: VDR
Hat gedankt: 699 Mal
Hat Dank erhalten: 1513 Mal

Auto periodischer Filecheck (fsck) beim Booten für ext4 Datenträger

#1

Beitrag von Pike_Bishop »

Hi,

Hänge hier ein Script an um für die ext4 gemounteten Datenträger den automatischen periodischen Filecheck (fsck) beim Booten zu aktivieren bzw. wieder zu deaktivieren.
Dieses Script ist nicht für Hotkey gedacht sondern für den FileCommander (man kann es natürlich aber auch in ner telnet oder ssh Konsole starten.

Damit das Script funktioniert muss blkid installiert sein (denke aber das ist eh out of the box im OpenATV Image installiert), man kann das leicht prüfen indem man in telnet/ssh folgenden Befehl ausführt;

Code: Alles auswählen

blkid

Wenn dabei ne Ausgabe kommt in der Art;

Code: Alles auswählen

/dev/sdb1: UUID="221688cs-0ffe-42da-bc16-125e9676a7a9" TYPE="ext4"/dev/sdc1: UUID="8A11-2548" TYPE="vfat"
/dev/mmcblk0p4: UUID="1b2388f5-8637-407e-9e73-45a5a516b722" TYPE="ext4"
/dev/sda1: UUID="1ef6d032-9dh0-4067-b34d-880058d38860" TYPE="ext4"

ist es bereits installiert (ansonsten halt nachinstallieren).

Das Script wird wie folgt eingerichtet (konfiguriert):
1.) Script an der Box nach /usr/script kopieren (ich selbst habe für die Scripte die ich mit dem FileCommander ausführe ein eigenes Verzeichnis nämlich /usr/script/filecommander_scripts)
existiert das Verzeichnis noch nicht muss es zuvor manuell erstellt werden.
2.) Script mit folgendem Befehl ausführbar machen;

Code: Alles auswählen

chmod 755 /usr/script/configure_auto_fsck.sh

oder wer das Verzeichnis wie ich verwendet stattdessen;

Code: Alles auswählen

chmod 755 /usr/script/filecommander_scripts/configure_auto_fsck.sh

-> Fertig !


Was macht das Script;
Das Script hat also ne Toggle Funktion und macht abwechselnd das;
1.) Startet man das Script und der Filecheck ist nicht aktiviert wird er aktiviert.
2.) Startet man das Script und der Filecheck ist bereits aktiviert wird er deaktiviert.
das geht dann also abwechselnd immer so weiter.

Dabei wird in die /etc/fstab zum Aktivieren des Filechecks hinter den ext4 gemounteten Datenträgern in Feld 6 statt ner 0 (Null) die 2 eingetragen.
Und es wird sowohl der Max Mount Count als auch ein Intervall für den Filecheck festgelegt.

Beim Deaktivieren des Filechecks wird das umgekehrte getan also in der /etc/fstab hinter den ext4 gemounteten Datenträgern in Feld 6 statt ner 2 wird die 0 (Null) eingetragen.
Und es wird der Max Mount Count auf -1 sowie das Intervall auf 0 (Null) zurück gestellt.

Es gibt im Script oben 3 Variablen die man für das Aktivieren des Filechecks an seine Wünsche anpassen kann wie folgt;

Code: Alles auswählen

MAXIMAL_MOUNT_COUNT=83
INTERVALL=27
INTERVALL_UNIT=d

Bitte keinesfalls andere Variablen im Script oder sonstiges darin ändern.

Kurze Erklärung zu den 3 Variablen;
MAXIMAL_MOUNT_COUNT steht auf 83 -> das bedeutet es wird jedesmal nach 83x mounten des Datenträgers beim Booten darauf der Filecheck ausgeführt.
INTERVALL -> ist auf 27 eingestellt doch ist dafür auch INTERVALL_UNIT ausschlaggebend und das ist auf d eingestellt also d für Tage somit ist das INTERVALL auf 27 Tage gestellt.

Bei mehreren Datenträgern die nach ext4 gemountet sind erhöht sich pro gefundenen Datenträger der MAXIMAL_MOUNT_COUNT um 4 also für den zweiten Datenträger auf 87
ausgehend von der Einstellung MAXIMAL_MOUNT_COUNT=83
und das Intervall erhöht sich immer um 1 also für den zweiten Datenträger auf 28 ausgehend von der Einstellung INTERVALL=27.
Warum das Manöver -> ganz einfach damit bei mehreren Datenträgern der Filecheck möglichst selten beim Booten auf mehrere Datenträger hintereinander ausgeführt wird
, anders gesagt damit der Filecheck so oft wie möglich immer nur auf einen Datenträger pro Booten angewandt wird.

Wer da nun mehr dazu wissen will kann ja selber lesen;
Dateisystemcheck › Wiki › ubuntuusers.de


Nicht vergessen, das Script ist so geschrieben das es den Filecheck nur für ext4 gemountete Datenträger aktiviert oder eben deaktiviert.
Ich hab das Script hier getestet und es funktioniert tadellos, allerdings verwende ich ja mehrere ext4 gemountete Datenträger, doch es sollte
genauso gut bei nur einem ext4 gemounteten Datenträger funktionieren.
Und schön die Ausgaben beobachten wenn man es mit dem FileCommander ausführt, da kommt zum Schluss ne Kontrolle wobei auch die /etc/fstab gezeigt wird.



Grüsse
Pike
Dateianhänge
configure_auto_fsck.sh.zip
(1.49 KiB) 25-mal heruntergeladen
Benutzeravatar
Pike_Bishop
Moderator
Moderator
Beiträge: 2667
Registriert: 11 Feb 2020 22:06
Wohnort: here and there
Receiver 1: Mutant HD2400
Receiver 2: VU Ultimo 4K
Receiver 3: Octagon SF8008
Receiver 4: Gigablue Quad 4K
Receiver 5: VDR
Hat gedankt: 699 Mal
Hat Dank erhalten: 1513 Mal

#2

Beitrag von Pike_Bishop »

Update -> Neue Version in Post #1 hochgeladen.
Gab noch Probleme wenn auch Datenträger in ext4 vorhanden waren die nicht in der fstab sondern halt durch den AutoMounter (mdev) gemountet wurden,
und es gab weiters noch Probleme wenn jemand nen ext4 Datenträger mit in der fstab stehen hatte wobei der Eintrag aber auskommentiert war.
In diesen Fällen kam das alte Script gehörig durcheinander, sollte nun aber gelöst sein.


Grüsse
Pike
Benutzeravatar
Pike_Bishop
Moderator
Moderator
Beiträge: 2667
Registriert: 11 Feb 2020 22:06
Wohnort: here and there
Receiver 1: Mutant HD2400
Receiver 2: VU Ultimo 4K
Receiver 3: Octagon SF8008
Receiver 4: Gigablue Quad 4K
Receiver 5: VDR
Hat gedankt: 699 Mal
Hat Dank erhalten: 1513 Mal

Re: Auto periodischer Filecheck (fsck) beim Booten für ext4 Datenträger

#3

Beitrag von Pike_Bishop »

Hi,

Nur zur Info, also das Script kann zwar das nötige dazu in die fstab eintragen usw.. aber das nützt nix denn das funktioniert zwar in nem Linux am PC aber bei unseren Boxen klappt das keinesfalls, siehe Zitat von @jbleyel;
"Zitat von @jbleyel"
Der Schalter geht deshalb nicht weil die Boxen einen speziellen abgespeckten Kernel und bootloader haben und daher auch nicht alle Funktionen.
Daher das Script hier am Besten vergessen !
Aber gut zu wissen.

Damit sperre ich den Thread, gibt ja nix mehr Relevantes dazu zu sagen.

Grüsse
Pike
Gesperrt

Zurück zu „Skripte“