Hallo zusammen,
nun habe ich auch mal eine Frage in die Runde weil ich mir die Sache nicht erklären kann. Danke schon mal im voraus.
Es geht hier um einen PC auf dem Proxmox installiert ist. Gemounted ist auch ein Raid aus 4 Festplatten um darauf Backups zu speichern. Der Platz ist inzwischen voll, daher habe ich mir ein Skript geschrieben, dass den freien Speicherplatz beobachtet und wenn zu wenig Platz ist, das älteste Backup löscht. Soweit so gut. Jetzt ist es aber so, obwohl ständig alte Backups gelöscht werden, ist absolut kein Platz unter /mnt/backup_storrage/dump/. Und für mich ganz kurios, wenn ich mit df nachgucke wie voll die Partitionen sind, ist md127 11TB groß. Diese sind aber nicht voll genutzt, es sind noch 14MB (siehe Taschenrechner) frei. df ist aber der Meinung, dass komplett alles aufgebraucht ist. [image: image.png]
Habe ich irgendwie falsch gemounted? Aber wenn das so wäre, dann hätte ich ja die ganzen Backups auf der Partition gespeichert, auf der auch das Proxmox installiert ist. Und das sind definitiv keine 11TB. Was denke ich denn falsch bzw. wo habe ich eventuell was falsch gemacht?
Bin gespannt auf eure Ideen, ihr habt sowas bestimmt schon öfter gemacht.
Viele Grüße Stefan
Ich habe noch den Tipp bekommen, die Inodes könnten aufgebraucht sein. Habe ich mit "df -i " geprüft. Alle gemounteten Partitionen haben 1% der Inodes genutzt. Ist also noch genug Luft nach oben.
Habt ihr noch weitere Ideen warum das nicht richtig berechnet wird? Danke wieder im voraus.
Gruß Stefan
Stefan Engelhardt stefan.engelhardt@gmx.de schrieb am Fr., 18. Feb. 2022, 23:44:
Hallo zusammen,
nun habe ich auch mal eine Frage in die Runde weil ich mir die Sache nicht erklären kann. Danke schon mal im voraus.
Es geht hier um einen PC auf dem Proxmox installiert ist. Gemounted ist auch ein Raid aus 4 Festplatten um darauf Backups zu speichern. Der Platz ist inzwischen voll, daher habe ich mir ein Skript geschrieben, dass den freien Speicherplatz beobachtet und wenn zu wenig Platz ist, das älteste Backup löscht. Soweit so gut. Jetzt ist es aber so, obwohl ständig alte Backups gelöscht werden, ist absolut kein Platz unter /mnt/backup_storrage/dump/. Und für mich ganz kurios, wenn ich mit df nachgucke wie voll die Partitionen sind, ist md127 11TB groß. Diese sind aber nicht voll genutzt, es sind noch 14MB (siehe Taschenrechner) frei. df ist aber der Meinung, dass komplett alles aufgebraucht ist. [image: image.png]
Habe ich irgendwie falsch gemounted? Aber wenn das so wäre, dann hätte ich ja die ganzen Backups auf der Partition gespeichert, auf der auch das Proxmox installiert ist. Und das sind definitiv keine 11TB. Was denke ich denn falsch bzw. wo habe ich eventuell was falsch gemacht?
Bin gespannt auf eure Ideen, ihr habt sowas bestimmt schon öfter gemacht.
Viele Grüße Stefan
Hi,
On 19/02/2022 23:46, Stefan Engelhardt wrote:
Ich habe noch den Tipp bekommen, die Inodes könnten aufgebraucht sein. Habe ich mit "df -i " geprüft. Alle gemounteten Partitionen haben 1% der Inodes genutzt. Ist also noch genug Luft nach oben.
Habt ihr noch weitere Ideen warum das nicht richtig berechnet wird? Danke wieder im voraus.
Was für ein Dateisystemtyp ist es (ext4, btrfs, xfs, ...)?
Welche Optionen sind gesetzt?
14MB auf einem 11TB Dateisystem ist verschwindend gering - mathematisch von 0% nicht zu unterscheiden.
Es ist vermutlich reservierter Speicherplatz:
* per default gibt es eine Reserve für root, damit der Admin im Notfall noch arbeiten kann (normalerwise 5%) * es könnte das Journal sein * es könnte für Meta-Daten reserviert sein
Allgemein gilt: wenn der freie Speicherplatz unter 1% fällt dann kannst Du die Platte als praktisch voll betrachten und eine neue Platte für das RAID bestellen - per Expresslieferung.
Konrad
Hallo Stefan,
On Sat, Feb 19, 2022 at 23:46:18 +0100, Stefan Engelhardt wrote:
Ich habe noch den Tipp bekommen, die Inodes könnten aufgebraucht sein. Habe ich mit "df -i " geprüft. Alle gemounteten Partitionen haben 1% der Inodes genutzt. Ist also noch genug Luft nach oben.
Habt ihr noch weitere Ideen warum das nicht richtig berechnet wird? Danke wieder im voraus.
Es gibt noch einen weiteren Grund dafuer, dass die Ausgaben von "du" und "df" stark voneinander abweichen koennen. Hier mal ein Beispiel in meinem Mini-Linux mit einem tmpfs:
tmpfs mounten: # mount -t tmpfs testfs /mnt
Ein paar Megabyte Daten reinschreiben: # cat /bin/links /bin/links > /mnt/foo # df -h /mnt Filesystem Size Used Available Use% Mounted on testfs 503.8M 9.6M 494.1M 2% /mnt
Datei /mnt/foo ueber einen Filedeskriptor durch einen Prozess offen halten: # sleep 86400 < /mnt/foo &
Datei /mnt/foo loeschen: # rm /mnt/foo
Aus du-Sicht ist das Dateisystem jetzt leer: # du -sh /mnt 0 /mnt
Aber df ist anderer Meinung: # df -h /mnt Filesystem Size Used Available Use% Mounted on testfs 503.8M 9.6M 494.1M 2% /mnt
Erklaerung: Die "geloeschte" Datei wird noch durch den sleep-Prozess ueber dessen stdin-Filedeskriptor offen gehalten und existiert noch.
Erst wenn der sleep-Prozess terminiert, wird der Platz im Dateisystem wirklich freigegeben: # killall sleep [1]+ Terminated sleep 86400 0</mnt/foo
# df -h /mnt Filesystem Size Used Available Use% Mounted on testfs 503.8M 0 503.8M 0% /mnt
Das Beispiel klingt zunaechst etwas konstruiert, aber dieses Verhalten gibt es auch regulaer in Tools wie qemu/kvm. Anonyme Snapshots werden in qemu/kvm genau so realisiert:
$ kvm -m 256 -snapshot -hda minimal.qcow & [1] 13806 $ ls -l /proc/13806/fd total 0 lrwx------ 1 chris chris 64 21. Feb 20:19 0 -> /dev/pts/1 lrwx------ 1 chris chris 64 21. Feb 20:19 1 -> /dev/pts/1 lrwx------ 1 chris chris 64 21. Feb 20:19 10 -> '/tmp/vl.2ySyTa (deleted)' [...] lr-x------ 1 chris chris 64 21. Feb 20:19 9 -> /home/chris/minimal.qcow
Die nicht-persistenten Aenderungen werden in der Datei /tmp/vl.2ySyTa gespeichert. Diese wird von qemu/kvm beim Starten erzeugt, geoeffnet und direkt danach geloescht. Selbst wenn qemu/kvm hart duch SIGSEGV oder SIGKILL beendet wird, bleibt diese Temporaerdatei nicht in /tmp zurueck. Das Aufraeumen kann also nicht "vergessen" werden.
Gruss, Christian
Am 18.02.2022 um 23:44 teilte Stefan Engelhardt mit:
Moin,
Es geht hier um einen PC auf dem Proxmox installiert ist. Gemounted ist auch ein Raid aus 4 Festplatten um darauf Backups zu speichern. Der Platz ist inzwischen voll, daher habe ich mir ein Skript geschrieben, dass den freien Speicherplatz beobachtet und wenn zu wenig Platz ist, das älteste Backup löscht. Soweit so gut. Jetzt ist es aber so, obwohl ständig alte Backups gelöscht werden, ist absolut kein Platz unter /mnt/backup_storrage/dump/. Und für mich ganz kurios, wenn ich mit df nachgucke wie voll die Partitionen sind, ist md127 11TB groß. Diese sind aber nicht voll genutzt, es sind noch 14MB (siehe Taschenrechner) frei. df ist aber der Meinung, dass komplett alles aufgebraucht ist.
Kann das nicht einfach ein Rundungsfehler sein und die Tatsache, daß bei einem 11TB Filesystem die 14MB freier Platz kaum ins Gewicht fallen? Selbst 14 GB (die meintest Du wohl eher) fallen der Rundung zum Opfer weil es < 1% ist.
H.
P.S.: mit "df -h" wird das Ganze etwas lesbarer.
Am Freitag, dem 18.02.2022 um 23:44 +0100 schrieb Stefan Engelhardt:
[..], daher habe ich mir ein Skript geschrieben, dass den freien Speicherplatz beobachtet und wenn zu wenig Platz ist, das älteste Backup löscht. Soweit so gut. Jetzt ist es aber so, obwohl ständig alte Backups gelöscht werden, ist absolut kein Platz unter /mnt/backup_storrage/dump/. Und für mich ganz kurios, wenn ich mit df nachgucke wie voll die Partitionen sind, ist md127 11TB groß. Diese sind aber nicht voll genutzt, es sind noch 14MB (siehe Taschenrechner) frei. df ist aber der Meinung, dass komplett alles aufgebraucht ist.
Meines Erachtens zeigt df unter Größe den gesamten Platz ohne Berücksichtigung der reservierten Blöcke an, berücksichtigt diese aber unter dem verfügbaren Platz. Da wäre es vielleicht sinnvoll, mal in dein Skript zu schauen, wie du den freien Platz berechnest.
Gruß, Daniel
lug-dd@mailman.schlittermann.de