-1

私は 3 TB の内蔵ハードディスクを (明らかに) ほぼ満杯にしています。Df は 0 1k-blocks free と言いますが、それでも 200 Mb を超えるファイルをドライブにコピーできます。ここで何が問題なのですか?

4

1 に答える 1

1

Ext4 は、断片化を防ぐために、デフォルトでディスクの 5% を予約済みスペースとして保持します。このスペースは通常のユーザーは使用できませんが、root は使用できます。これは、ext4 ファイルシステムの出力を見ると、等式
Total = Used + Available
が成り立たない理由でもあります。df

次の実験を試してください。

$ fallocate -l 100M image.raw
$ mkfs.ext4 image.raw
$ sudo losetup -f image.raw
$ sudo mount /dev/loop0 /mnt
$ dd if=/dev/zero of=/mnt/file bs=512
dd: error writing ‘file’: No space left on device

ファイルシステムには合計 95k のブロックがあり、0 が使用可能で、約 88k が使用されている必要があります。次に、ルートと同じことをしようとすると

$ sudo dd if=/dev/zero of=/mnt/file2 bs=512

その後、最大で約 93k ブロックを使用して、さらにそれを埋めることができるはずです。

于 2015-12-23T09:49:28.677 に答える