コマンド tune2fs を使用する (/sbin/tune2fs にあります) )、予約済みスペースを簡単に判断できます :(その他にも!)
tune2fs -l /dev/sda1
参照用にシステムの情報を提供します。この質問にとって重要ではない余分な行を削除します:
ヘッダー...とボリューム名、ラベル 必要に応じて簡単に識別できます。
tune2fs 1.42.4 (12-Jun-2012)
Filesystem volume name: xenon
Last mounted on: /
...
システムの実行中にこれが「クリーン」であることを本当に望んでいます。正直!
Filesystem state: clean
ここからデータ ストレージ容量の情報が始まります:
ここで、合計 121,179,648 個のブロックがあることがわかります...ブロックサイズは 4K (4096) で、これを乗算すると大きな数 (462 っぽい GB) になります。 (ブロックサイズは後述)
Block count: 121179648
そして、予約済みのブロック... 上の数字と下の数字を見ると.. 1% が予約済みであることが比較的すぐにわかるはずです。この場合 (4.62 っぽい GB)
Reserved block count: 1211796
現在利用可能な空き容量は?ここだ!
Free blocks: 104090586
...
そして、すべての重要なブロックサイズ。乗算に便利です。
Block size: 4096
...
これらの行は、ブロックが誰のために予約されているかを示しています...この場合、ユーザー0、ルート
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
...
ここではさらに多くの情報を入手できますが、これにより、どれだけ利用可能で、どれだけ root 用に予約されているかをすばやく確認できるはずです。簡単な計算。
お役に立てれば。覚えておいてください... man ページはあなたの友達です。
ツールが組み込まれているかどうかはわかりませんが、予約済みをデフォルトの 5% のままにしておけば、次のことがわかります:
df / | grep dev | cut -f 3,6 -d\ | awk '{print ($1*.05)+$2}'
df
ルート、grep
dev を含む行 (ヘッダーを削除するため)、 cut
サイズと使用可能なフィールド、次に awk
を使用します 利用可能に追加されたディスク サイズの 5% を計算するスクリプト。
tune2fs -l <device>
から実際の予約を引き出すことができます これをスクリプトで上記と組み合わせます。
これは、「/path」に関連するパーティションの空き容量をバイト単位で表示します
printf '%s' $(($(stat -f --format='%f*%S' /path)))
実行するのにスーパーユーザーである必要はありません。
ところで、私は何が違うのかよくわかりません
%s ブロック サイズ (高速転送用)
%S 基本ブロック サイズ (ブロック数用)
stat
の使い方 .