Hallo,
auf einem Cubietruck läuft Debian Stretch.
Als Hardware ist zusätzlich eine SSD Platte eingebaut worden.
Nach einigen Tagen im Betrieb ist mir aufgefallen, dass die Partition für /var/log voll gelaufen ist.
Habe bislang nicht herausfinden können, in welcher Datei der Service "zram" eingerichtet wird.
zram ist Bestandteil des Pakets "util-Linux".
Im zram ist neben einer swap-Partition nur ein Pfad /var/log eingetragen.
Kann mir jemand erläutern, wie verhindert werden, kann, dass die Partition für /var/log im zram voll läuft, oder wie die größe der Partition vergrößert werden kann?
/var/log läuft voll - Pfad zeigt auf ZRAM
Re: /var/log läuft voll - Pfad zeigt auf ZRAM
Sind das nicht zwei getrennte Probleme?s837ubc hat geschrieben:30.01.2019 10:28:06Nach einigen Tagen im Betrieb ist mir aufgefallen, dass die Partition für /var/log voll gelaufen ist.
Habe bislang nicht herausfinden können, in welcher Datei der Service "zram" eingerichtet wird.
Wenn /var/log verstopft, dann solltest du schauen, warum da so viele Logmeldungen produziert werden und ggfls. Fehler beheben.
Re: /var/log läuft voll - Pfad zeigt auf ZRAM
Du weißt, was zram technisch macht? Es erstellt eine RAMdisk auf der dann komprimiert ein Dateisystem (auch swap) abgelegt wird.
Die Idee dahinter ist, dass auf Rechnern mit wenig RAM und langsamem Swap der Flaschenhals entschärft wird, indem man von dem ohnehin knappen RAM noch etwas mehr abzweigt um diesen Teil dann in komprimierter Form wieder als Swap zur Verfügung zu stellen.
Das Resultat ist, dass das System praktisch ständig swapt. Da der Swap aber prinzipiell genauso schnell ist wie der RAM, ist das an sich kein Problem und da der Swap komprimiert ist, hat man insgesamt mehr virtuellen Speicher.
Ob das Konzept Vor- oder Nachteile bringt hängt davon ab, ob die CPU es beim (De-)Komprimieren schafft, die potenzielle Geschwindigkeit des zswap tatsächlich weit genug auszureizen und ob der insgesamt größere virtuelle Speicher das System tatsächlich schneller macht als es der Kontextwechsel zwischen RAM und zswap langsamer macht.
Meiner Erfahrung nach ist die Chance ob sich zram lohnt etwa 50:50, je nach Szenario. Beim arm-SoC des Cubietruck in Verbindung mit einer per SATA angeschlossenen SSD würde ich vermuten, dass es nichts bringt. Ich denke es wäre sinnvoller, zram zu deaktivieren, um den gesamten RAM als solchen nutzen zu können und dafür einen regulären Swap auf der SSD anzulegen.
Das Gleiche gilt für /var/log. Das wird bei dir wohl per zram als Partition in's RAM gemountet. Die Partition zu vergrößern ginge nur auf Kosten von noch mehr RAM und den Sinn halte ich für fraglich, wenn mit der SSD ein ordentlicher Massenspeicher zur Verfügung steht.
Wo zram konfiguriert wird weiß ich ohne Recherche nicht. Ich würde aber vermuten, dass es zumindest für /var/log einen Eintrag in der fstab gibt. Wenn du den auskommentierst wird nach dem nächsten Boot /var/log auf deiner Root-Partition angelegt.
Die Idee dahinter ist, dass auf Rechnern mit wenig RAM und langsamem Swap der Flaschenhals entschärft wird, indem man von dem ohnehin knappen RAM noch etwas mehr abzweigt um diesen Teil dann in komprimierter Form wieder als Swap zur Verfügung zu stellen.
Das Resultat ist, dass das System praktisch ständig swapt. Da der Swap aber prinzipiell genauso schnell ist wie der RAM, ist das an sich kein Problem und da der Swap komprimiert ist, hat man insgesamt mehr virtuellen Speicher.
Ob das Konzept Vor- oder Nachteile bringt hängt davon ab, ob die CPU es beim (De-)Komprimieren schafft, die potenzielle Geschwindigkeit des zswap tatsächlich weit genug auszureizen und ob der insgesamt größere virtuelle Speicher das System tatsächlich schneller macht als es der Kontextwechsel zwischen RAM und zswap langsamer macht.
Meiner Erfahrung nach ist die Chance ob sich zram lohnt etwa 50:50, je nach Szenario. Beim arm-SoC des Cubietruck in Verbindung mit einer per SATA angeschlossenen SSD würde ich vermuten, dass es nichts bringt. Ich denke es wäre sinnvoller, zram zu deaktivieren, um den gesamten RAM als solchen nutzen zu können und dafür einen regulären Swap auf der SSD anzulegen.
Das Gleiche gilt für /var/log. Das wird bei dir wohl per zram als Partition in's RAM gemountet. Die Partition zu vergrößern ginge nur auf Kosten von noch mehr RAM und den Sinn halte ich für fraglich, wenn mit der SSD ein ordentlicher Massenspeicher zur Verfügung steht.
Wo zram konfiguriert wird weiß ich ohne Recherche nicht. Ich würde aber vermuten, dass es zumindest für /var/log einen Eintrag in der fstab gibt. Wenn du den auskommentierst wird nach dem nächsten Boot /var/log auf deiner Root-Partition angelegt.
Re: /var/log läuft voll - Pfad zeigt auf ZRAM
Aufpassen: „zusätzlich ist ein SSD eingebaut“ deutet für mich drauf hin, dass das System selbst vom NAND oder von einer μSD-Karte läuft. Wenn das so sein sollte, wär’s besser, /var/log explizit auf das SSD zu legen. Ansonsten rödelt’s möglicherweise recht fix entweder den internen Speicher, oder die Karte kaputt. Karte kann man ersetzen, ärgerlich wär’s aber wohl trotzdem. Wenn NAND kaputt ist, ist’s weniger schön – dann kann man u.U. auch nicht mal mehr von ’ner neuen Karte booten.
Und ja: bevor ich anfangen würde, an den FS rumzuspielen, würde ich auch eher schauen, was denn soviele Logeinträge verursacht. Normalerweise™ ist /var/log auf ’nem Cubietruck ziemlich gut im RAM aufgehoben.
Und ja: bevor ich anfangen würde, an den FS rumzuspielen, würde ich auch eher schauen, was denn soviele Logeinträge verursacht. Normalerweise™ ist /var/log auf ’nem Cubietruck ziemlich gut im RAM aufgehoben.
Re: /var/log läuft voll - Pfad zeigt auf ZRAM
Klingt naheliegend.niemand hat geschrieben:30.01.2019 12:18:25Aufpassen: „zusätzlich ist ein SSD eingebaut“ deutet für mich drauf hin, dass das System selbst vom NAND oder von einer μSD-Karte läuft.
Ich hatte jetzt eher mein CB2 vor Augen: /boot von µSD, / und alles andere aber von SATA-HDD. Ich hatte angenommen, dass s837ubc im Grunde den selben Aufbau hat, nur mit SSD statt HDD.
Zum Vergleich: Zu Weihnachten ist mir die 64GB-µSD-Karte in meinem N900 gestorben, die ich dort Anfang 2012 eingesetzt hatte.niemand hat geschrieben:30.01.2019 12:18:25Ansonsten rödelt’s möglicherweise recht fix entweder den internen Speicher, oder die Karte kaputt.
Die hatte eine 1GB-Swap-Partition und war sonst zu etwa der Hälfte mit meiner Musiksammlung, also statischen Daten, befüllt. Daneben lief darauf recht häufig eines von einer handvoll Debian-chroots, die insgesamt irgendwas um die 15GB genutzt haben werden. Den Luxus, irgendwas davon in's RAM zu stecken hatte ich bei 256MB RAM nicht. Das wäre eh nur wieder auf dem eMMC-Swap bzw. der Swap-Partition auf der Karte gelandet.
Re: /var/log läuft voll - Pfad zeigt auf ZRAM
Hallo,
vielen Dank für die vielen Infos.
Root zeigt auf die micro-SD Card.
Auf dem System läuft PiHole. Es schreibt pro Domain-Abfrage einen Eintrag in eine Log-Datei. Genauer gesagt schreibt am meisten "dnsmasq" in die Datei pihole.log
Haben schon den Pfad /var/log auf die SSD umgeleitet.
Den ZRAM kann ich bis dato leider nicht deaktivieren oder umkonfigurieren.
Nach einem Reboot muss daher der Pfad /var/log unmountet und anschließend wieder auf die SSD-Platte gemountet werden.
So sollte es zumindest als Workaround klappen.
vielen Dank für die vielen Infos.
Root zeigt auf die micro-SD Card.
Demnach hat diese Micro-SD-Card 6-7 Jahre gehalten. Da kann man nur hoffen, dass regelmäßig ein Backup gemacht wurde.hikaru hat geschrieben:30.01.2019 13:11:52Zum Vergleich: Zu Weihnachten ist mir die 64GB-µSD-Karte in meinem N900 gestorben, die ich dort Anfang 2012 eingesetzt hatte.
Auf dem System läuft PiHole. Es schreibt pro Domain-Abfrage einen Eintrag in eine Log-Datei. Genauer gesagt schreibt am meisten "dnsmasq" in die Datei pihole.log
Haben schon den Pfad /var/log auf die SSD umgeleitet.
Den ZRAM kann ich bis dato leider nicht deaktivieren oder umkonfigurieren.
Nach einem Reboot muss daher der Pfad /var/log unmountet und anschließend wieder auf die SSD-Platte gemountet werden.
So sollte es zumindest als Workaround klappen.