Es werden imm wieder crashlogs hochgeladen, weil die Box nicht mehr startet - oft liegt es daran, dass der Flashspeicher voll ist
Error: no space left
Enigma2 schreibt beim Starten ein paar Config files, wenn die nicht mehr erstellt/geändert werden können, crasht die Box.
Bei den Boxen mit wenig Flashspeicher wie der dm800hd, dm800se v1, dm500hd v1 liegt es meist an zu vielen installierten Plugins oder Picons etc.
Die aktuellen DreamOS Boxen haben genug Speicher, wenn da der Flash voll ist, ist meist eine Aufnahme im Flash gelandet oder man hat eine große Datei z.B. per FTP ins falsche Verzeichnis geschoben.
Hier ein paar Lösungsansätze um den/die Speicherfresser zu finden
Alle Befehle zum Überprüfen vorab als Übersicht
Speicherplatz des flash prüfen
df -h /
nur im DreamOS verfügbar!
apt cache leeren
apt-get clean
verbrauchte Inodes anzeigen (funktioniert nur, wenn das Paket coreutils installiert wurde - vollwertiges df anstatt dem busybox df)
df -i /
OE1.6 - OE2.5
Flash als bind mount nochmal mounten
mkdir /tmp/flash
mount -o bind / /tmp/flash
den Speicherverbrauch aller Ordner in / = /tmp/flash anzeigen
du -sch /tmp/flash/*
du -sch /tmp/flash/xy/*
nach größeren files (z.B. > 10MB) suchen, da sollte nur 3-4 libraries (.so Dateien) gelistet werden (oder u.U. .img files im OE2.0)
find /tmp/flash -type f -size +10000k
oder nach z.B. .ts files oder anderen extensions (.png, .avi, .mkv etc.) suchen
find /tmp/flash -type f -name "*.ts"
find /tmp/flash -type f -name "*.png"
Gesamtanzahl der .png Dateien (oder anderer Dateiendungen)
find /tmp/flash/picon -type f -name "*.png"|wc -l
Anzahl der gefundenen .png Dateien (oder anderer Dateiendungen) nach Ordner gelistet
find /tmp/flash/ -name "*.png" -exec wc -l {} \;
Einzelne Lösungsschritte im Detail:
(die Konsolen Ausgaben wurde zu Demozwecken manuell angepasst - 960MB used ist geschummelt )
erstmal den Flash speicher prüfen, wenn der 100% benutzt wird, braucht ihr nicht mal mehr den crashlog lesen ...
Bei den DreamOS Boxen kann man erstmal den apt cache mit apt-get clean löschen, das bringt meist ein paar MB und die Box startet wieder
im Beispiel wurden schon mal 15MB frei
Wenn das Paket coreutils installiert wurde, kann man die verbrauchten Inodes prüfen. Wenn die verbraucht sind, meldet die Box auch "no space left" obwohl genügend Speicher frei wäre,
aber da müsste man den Flash mit einer Menge Picons vollballern ....
Die Möglichkeiten bestehen im OE2.0 mit opkg nicht, da landet der cache im tmpfs und ist nach einem reboot weg und das busybox df kann keine inodes anzeigen
Jetzt muss noch der/die Speicherfresser im Flash "gesucht" werden - die folgenden Schritte funktionenieren von OE1.6 - OE2.5. Den Flash mit einem bind mount erneut temporär mouten, dann wird im 2. mountpoint der Inhalt des Flash ohne den Inhalt der Storage devices angezeigt, also alles unterhalb der Einhängepunkte. Festplatten, USB-Sticks etc. müssen so nicht vorher ausgehängt werden.
Wichig ist, das man nach Ausschließlich in /tmp/flash/... sucht, gegebenenfalls löscht etc.
jetzt sehen wir uns den Speicherverbrauch der Ordner im temporären root Verzeichnis an, die üblichen Verdächtigen liegen meist in /media
Alles anzeigen
man sieht, in /media liegen 455MB, das sollten nur ein paar KB sein, dann sieht man sich den Speicherbrauch der Unterordner des betroffenen Ordners an
Scheinbar ist in /media/net eine Aufnahme gelandet, einfach in /tmp/flash/media/net per FTP, ssh etc. nachsehen was dort liegt, und bereinigen
Weitere Möglichkeiten, falls der vorige Schritt keine Ergebnis brachte
nach größeren files (z.B. > 10MB) suchen, da sollte nur 3-4 libraries (.so Dateien) gelistet werden (oder u.U. .img files im OE2.0)
find /tmp/flash -type f -size +10000k
oder nach z.B. .ts files suchen
find /tmp/flash -type f -name "*.ts"
beides findet eine Aufnahme in /tmp/flash/media/net
die Daten in /tmp/flash/xy per FTP oder Command Line löschen und den bind mount wieder aushängen (oder rebooten), df -h sollte wieder genug speicher anzeigen
weitere Möglichkeiten
nach .png suchen (zu viele Picons im Flash)
find /tmp/flash -type f -name "*.png"
Gesamtanzahl der .png (oder anderer Dateiendungen)
find /tmp/flash -type f -name "*.png"|wc -l
Anzahl gefundener Dateien nach Dateiendung je Ordner gelistet
find /tmp/flash/ -name "*.png" -exec wc -l {} \;
Error: no space left
Enigma2 schreibt beim Starten ein paar Config files, wenn die nicht mehr erstellt/geändert werden können, crasht die Box.
Bei den Boxen mit wenig Flashspeicher wie der dm800hd, dm800se v1, dm500hd v1 liegt es meist an zu vielen installierten Plugins oder Picons etc.
Die aktuellen DreamOS Boxen haben genug Speicher, wenn da der Flash voll ist, ist meist eine Aufnahme im Flash gelandet oder man hat eine große Datei z.B. per FTP ins falsche Verzeichnis geschoben.
Hier ein paar Lösungsansätze um den/die Speicherfresser zu finden
Alle Befehle zum Überprüfen vorab als Übersicht
Speicherplatz des flash prüfen
df -h /
nur im DreamOS verfügbar!
apt cache leeren
apt-get clean
verbrauchte Inodes anzeigen (funktioniert nur, wenn das Paket coreutils installiert wurde - vollwertiges df anstatt dem busybox df)
df -i /
OE1.6 - OE2.5
Flash als bind mount nochmal mounten
mkdir /tmp/flash
mount -o bind / /tmp/flash
den Speicherverbrauch aller Ordner in / = /tmp/flash anzeigen
du -sch /tmp/flash/*
du -sch /tmp/flash/xy/*
nach größeren files (z.B. > 10MB) suchen, da sollte nur 3-4 libraries (.so Dateien) gelistet werden (oder u.U. .img files im OE2.0)
find /tmp/flash -type f -size +10000k
oder nach z.B. .ts files oder anderen extensions (.png, .avi, .mkv etc.) suchen
find /tmp/flash -type f -name "*.ts"
find /tmp/flash -type f -name "*.png"
Gesamtanzahl der .png Dateien (oder anderer Dateiendungen)
find /tmp/flash/picon -type f -name "*.png"|wc -l
Anzahl der gefundenen .png Dateien (oder anderer Dateiendungen) nach Ordner gelistet
find /tmp/flash/ -name "*.png" -exec wc -l {} \;
Einzelne Lösungsschritte im Detail:
(die Konsolen Ausgaben wurde zu Demozwecken manuell angepasst - 960MB used ist geschummelt )
erstmal den Flash speicher prüfen, wenn der 100% benutzt wird, braucht ihr nicht mal mehr den crashlog lesen ...
Bei den DreamOS Boxen kann man erstmal den apt cache mit apt-get clean löschen, das bringt meist ein paar MB und die Box startet wieder
im Beispiel wurden schon mal 15MB frei
Wenn das Paket coreutils installiert wurde, kann man die verbrauchten Inodes prüfen. Wenn die verbraucht sind, meldet die Box auch "no space left" obwohl genügend Speicher frei wäre,
aber da müsste man den Flash mit einer Menge Picons vollballern ....
Die Möglichkeiten bestehen im OE2.0 mit opkg nicht, da landet der cache im tmpfs und ist nach einem reboot weg und das busybox df kann keine inodes anzeigen
Jetzt muss noch der/die Speicherfresser im Flash "gesucht" werden - die folgenden Schritte funktionenieren von OE1.6 - OE2.5. Den Flash mit einem bind mount erneut temporär mouten, dann wird im 2. mountpoint der Inhalt des Flash ohne den Inhalt der Storage devices angezeigt, also alles unterhalb der Einhängepunkte. Festplatten, USB-Sticks etc. müssen so nicht vorher ausgehängt werden.
Wichig ist, das man nach Ausschließlich in /tmp/flash/... sucht, gegebenenfalls löscht etc.
jetzt sehen wir uns den Speicherverbrauch der Ordner im temporären root Verzeichnis an, die üblichen Verdächtigen liegen meist in /media
Quellcode
- root@dm900uhd:~# du -sch /tmp/flash/*
- 4,0K /tmp/flash/autofs
- 5,8M /tmp/flash/bin
- 4,2M /tmp/flash/boot
- 4,0K /tmp/flash/data
- 4,0K /tmp/flash/dev
- 4,6M /tmp/flash/etc
- 4,0K /tmp/flash/home
- 22M /tmp/flash/lib
- 445M /tmp/flash/media
- 4,0K /tmp/flash/misc
- 4,0K /tmp/flash/mnt
- 4,0K /tmp/flash/net
- 16K /tmp/flash/picons
- 4,0K /tmp/flash/proc
- 15M /tmp/flash/root
- 4,0K /tmp/flash/run
- 2,0M /tmp/flash/sbin
- 4,0K /tmp/flash/srv
- 4,0K /tmp/flash/sys
- 12K /tmp/flash/tmp
- 424M /tmp/flash/usr
- 19M /tmp/flash/var
- 946M total
- root@dm900uhd:~#
man sieht, in /media liegen 455MB, das sollten nur ein paar KB sein, dann sieht man sich den Speicherbrauch der Unterordner des betroffenen Ordners an
Scheinbar ist in /media/net eine Aufnahme gelandet, einfach in /tmp/flash/media/net per FTP, ssh etc. nachsehen was dort liegt, und bereinigen
Weitere Möglichkeiten, falls der vorige Schritt keine Ergebnis brachte
nach größeren files (z.B. > 10MB) suchen, da sollte nur 3-4 libraries (.so Dateien) gelistet werden (oder u.U. .img files im OE2.0)
find /tmp/flash -type f -size +10000k
oder nach z.B. .ts files suchen
find /tmp/flash -type f -name "*.ts"
beides findet eine Aufnahme in /tmp/flash/media/net
Quellcode
- root@dm900uhd:~# find /tmp/flash -type f -size +10240k
- /tmp/flash/media/net/20171218 1842 - ZDF HD - Dummy Record.ts
- /tmp/flash/usr/lib/go/pkg/linux_arm_dynlink/libstd.so
- /tmp/flash/usr/lib/libavcodec.so.57.24.102
- /tmp/flash/usr/lib/libQt5WebKit.so.5.6.2
- /tmp/flash/usr/lib/libicudata.so.56.1
- root@dm900uhd:~#
die Daten in /tmp/flash/xy per FTP oder Command Line löschen und den bind mount wieder aushängen (oder rebooten), df -h sollte wieder genug speicher anzeigen
weitere Möglichkeiten
nach .png suchen (zu viele Picons im Flash)
find /tmp/flash -type f -name "*.png"
Gesamtanzahl der .png (oder anderer Dateiendungen)
find /tmp/flash -type f -name "*.png"|wc -l
Anzahl gefundener Dateien nach Dateiendung je Ordner gelistet
find /tmp/flash/ -name "*.png" -exec wc -l {} \;
Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von Fred Bogus Trumper ()