Mit dem Befehl tune2fs (zu finden in /sbin/tune2fs ), können Sie ganz einfach den reservierten Speicherplatz ermitteln :(und mehr!)
tune2fs -l /dev/sda1
Ich werde die Informationen meines Systems als Referenz bereitstellen, ich werde irrelevante Zeilen entfernen, die für diese Frage nicht wichtig sind:
Den Header... und den Namen des Volumes kennzeichne ich alle meine Laufwerke, macht sie bei Bedarf leicht zu identifizieren.
tune2fs 1.42.4 (12-Jun-2012)
Filesystem volume name: xenon
Last mounted on: /
...
WIRKLICH möchten, dass dies "sauber" sagt, während das System läuft. Ehrlich!
Filesystem state: clean
Hier beginnt die Angabe zur Datenspeicherkapazität:
Hier können Sie sehen, dass ich insgesamt 121.179.648 Blöcke habe ... mit einer Blockgröße von 4K (4096), die sich zu einer großen Zahl (etwa 462 GB) multipliziert. (Die Blockgröße ist unten angegeben)
Block count: 121179648
Und die reservierten Blöcke ... wenn Sie sich die Nummer oben und die Nummer unten ansehen ... sollten Sie relativ schnell herausfinden können, dass ich 1 % reserviert habe. In diesem Fall (etwa 4,62 GB)
Reserved block count: 1211796
Wie viel freier Speicherplatz ist derzeit verfügbar? Genau hier!
Free blocks: 104090586
...
Und die alles wichtige Blockgröße. Nützlich zum Multiplizieren.
Block size: 4096
...
Diese Zeilen sagen, für wen die Blöcke reserviert sind... in diesem Fall Benutzer 0, root
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
...
Hier sind viele weitere Informationen verfügbar, aber dies sollte Ihnen die Möglichkeit geben, schnell festzustellen, wie viel verfügbar ist und wie viel mehr für root reserviert ist. Einfache Mathematik.
Hoffe das hilft. Denken Sie daran ... Handbuchseiten sind Ihre Freunde.
Ich bin mir nicht sicher, ob ein Tool eingebaut ist, aber vorausgesetzt, Sie haben die reservierten 5 % standardmäßig beibehalten, dann wird Ihnen Folgendes angezeigt:
df / | grep dev | cut -f 3,6 -d\ | awk '{print ($1*.05)+$2}'
df
die Wurzel, grep
für die Zeile mit dev darin (um den Header zu entfernen), cut
die Größe und verfügbare Felder, dann verwenden Sie einen awk
Skript zur Berechnung von 5 % der verfügbaren Festplattengröße hinzugefügt.
Sie könnten die tatsächliche Reservierung aus tune2fs -l <device>
ziehen und kombinieren Sie dies mit dem Obigen in einem Skript.
Dies zeigt den freien Speicherplatz in Bytes in der Partition an, die sich auf „/path“ bezieht
printf '%s' $(($(stat -f --format='%f*%S' /path)))
Sie müssen kein Superuser sein, um es auszuführen.
Übrigens verstehe ich nicht ganz, was der Unterschied zwischen
istBlockgröße von %s (für schnellere Übertragungen)
Grundlegende Blockgröße von %S (für Blockzählungen)
in Verwendung von stat
.