[gelöst] no space left on device

  • Hallo Leute,
    bei mir haben in letzer Zeit ein paar Timer nicht funktioniert und jetzt stelle ich fest, dass auch meine "Aufräum-und-Backup-Crons" nicht so richtig laufen.
    Grund: ich stelle mich auf die /media/hdd und kann nicht schreiben...


    root@dm8000:~# touch x # mein $HOME liegt auf Platte
    touch: x: No space left on device
    root@dm8000:~# df .
    Filesystem Size Used Available Use% Mounted on
    /dev/sda1 1.4T 817.3G 579.7G 59% /media/hdd
    root@dm8000:~# mount | grep hdd
    /dev/sda1 on /media/hdd type ext3 (rw,data=ordered)
    root@dm8000:~# cd /
    root@dm8000:/# umount /media/hdd/
    root@dm8000:/# fsck.ext3 /dev/sda1
    e2fsck 1.41.9 (22-Aug-2009)
    /dev/sda1: clean, 1430912/1430912 files, 214324927/366284008 blocks


    Wegen zu wenige Speicher wurde lange kein fsck mehr gemacht, aber das hab ich vorhin manuell gemacht, indem ich einen usb-stick-swap ran gehängt hab.


    Die messages oder dmesg zeigen keine Auffälligeiten.


    Was kann ich noch prüfen/tun???


    Leer kopieren und neu formatieren wäre zwar ne Möglichkeit, aber das dauert so lange und ich hab auch gar nicht soviel Platte da, also will ich das erstmal nicht in Erwägung zieh'n.


    Irgendwelche Ideen??


    Danke und Gruß
    Hanno

  • Quote

    Original von Fred Bogus Trumper
    wie spuckt denn


    df -h
    mount


    aus?


    siehe oben. Alles wichtige schon mit geliefert...

  • ok, das mit dem mount hatte ich überlesen - sorry


    Wenn Timer sich nicht schreiben lassen bzw. ein "no space left on device" kommt, deutet das auf vollen Flash hin, deshalb die Frage nach der Ausgabe von df -h


    wenn /dev/root noch freien Speicher hat sollte ja alles ok sein


    wie hast du HOME auf die Platte gebracht? Symlnk oder mount in die fstab? Vielleicht schreibst du ja doch in den flash ...


    Nachtrag:


    touch /media/hdd/x klappt?

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox

    Edited 4 times, last by Fred Bogus Trumper ().

  • also gut, dann nochmal den kompletten df


    root@dm8000:/# df -h
    Filesystem Size Used Available Use% Mounted on
    /dev/mtdblock3 248.0M 68.6M 179.4M 28% /
    udev 2.0M 380.0K 1.6M 19% /dev
    /dev/mtdblock2 7.0M 2.8M 4.2M 39% /boot
    tmpfs 74.1M 308.0K 73.8M 0% /var
    tmpfs 74.1M 12.0K 74.1M 0% /tmp
    /dev/sda1 1.4T 817.3G 579.7G 59% /media/hdd


    ich mache eigentlich auch schon lange Linux/Unix auf professioneller Ebene beruflich. bedenklich für mich ist, dass es keine Fehler im syslog oder den kernel messages gibt. es deutet entweder auf korruptes Filesystem oder einen Kernel Bug hin. wenn also fsck Alles gut meldet dann wahrscheinlich Zweites?!


    ich frage im Forum, ob jemand der regeläßig die Updates macht das gleiche Problem hat.


    root@dm8000:/# opkg list-installed|grep kern
    kernel - 2.6.18-r19.0
    ...

  • Missverständnis! Unter "Timer nicht funktioniert" verstand ich die Timer erstellen (schreiben der timers.xml)


    wenn, dann muss es ein 8k spezifisches Problem sein - hab' nur die dm800se, und mache reglemäßig die updates und bin aktuell (OoZooN):
    kernel - 2.6.18-r19.0.1


    alles ok

  • Ich glaube mein Problem näher eingerenzt zu haben...


    Jeden Tag läuft bei mir ein Backup mit rsync (plus ein paar excludes) auf Platte in ein Directory pro Tag. Scheinbar war die Platte Daten-technisch zwar nicht voll, aber aufgrund der vielen kleinen Dateien an eine Grenze gestoßen. Es sollten zwar bei 1,5TB und ext3 um die 150mio INodes sein, aber wer weiß?!


    Hab mein Skript umgebaut, rsync, tar, rm -r das Directory und hab auch alle anderen eingetart und gelöscht. Erstmal ist das 'no space left on device' nicht mehr aufgetreten. Ich hab also links auf der Platte aufgeräumt, sodass wieder was hin passt. ;-)
    Mal beobachten.

  • seit des Löschens der vielen vielen kleinen Dateien hat das Linux auch nicht mehr behauptet, dass die Platte angeblich voll ist.


    Gruß
    Hanno alias ernsth

  • könnte man so sagen... ;-)
    Trotzdem ist das eigentlich ein Problem der Kernel oder Filesystementwickler. Das darf nicht passieren!

  • Na ja, das kann man auch anders sehen.
    Der Filesystementwickler hat ja entsprechende Vorkehrungen im Angebot, die der
    Nutzer aber auch nutzen muss. ;-)
    Es gibt nicht umsonst die Moeglichkeit, die Anzahl der Inodes, die Blockgroesse, ...
    anzupassen. Auf PVR Boxen wird davon ausgegangen, dass man mit einer Standard-
    Formatierung auskommt, da hauptsaechlich grosse Dateien entstehen.
    Viele (lies: richtig viele) kleine Dateien sind aber fuer einen PVR ungewoehnlich und
    die daraus entstehenden Probleme auch.
    Hier mal der Auszug aus der Kernel Doku zu ext2 (sollte fuer ext3 genauso gelten):


    Der Kernel oder Filesystementwickler koennte jetzt sagen: Das darf dem Benutzer nicht
    passieren. (Da der "brave" Benutzer die Doku gelesen hat). ;-)

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • Okay ich geb mich geschlagen. Mit Doku lesen hab ich's nicht so sehr.

  • Quote

    Originally posted by ernsth77


    root@dm8000:/# fsck.ext3 /dev/sda1
    e2fsck 1.41.9 (22-Aug-2009)
    /dev/sda1: clean, 1430912/1430912 files, 214324927/366284008 blocks


    Deine i-nodes waren komplett belegt. Kannst Du mit "df -i" verifizieren. Hint: Klassische UNIX-Filesysteme haben eine beim Anlegen festgelegte Anzahl von i-nodes, d.h. maximale Anzahl von Files, die man erzeugen kann. Bei Filesystemen für TV-Aufnahmen ist das erwartete Nutzungsverhalten klar "wenige, dafür sehr große Files" und man legt eher weniger i-nodes an - der Platz ist besser für Datenblöcke aufgehoben. Bei typischen Allzweck-FS wird von einem Daten-i-node-Verhältnis von 16KiB oder sogar weniger ausgegangen, Dein FS optimiert für - wie Du nachrechnen kannst - durchschnittlich 1MiB pro i-node. Du hast es dann einfach komplett gegen den Strich gebürstet ;)


    HTH,
    Andre.