我有一个 btrfs 分区。当我运行时df -h
,它显示:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 113G 101G 8.3G 93% /home
来自 这是为什么?是因为为 root 保留了 ext2/3/4 的空间吗?或者是别的什么?如果是前者,我该如何更改它并回收那些 4GB ?
按照维基百科,我知道元数据被存储两次,这会增加“已用”数据的大小:
user@machine:~$ df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 894G 311G 583G 35% /
^^^^
user@machine:~$ btrfs fi df /
Metadata: total=18.00GB, >>used=6.10GB<< *2= 12.20GB
Data: total=358.00GB, >>used=298.37GB<< *1= 298.37GB
System: total=12.00MB, >>used=40.00KB<< *1= 0.00GB
== 310.57GB
~~ 311 GB
但这仍然不能解释为什么Used + Avail < Size。
答案1
除非您在格式化时另行指定,否则默认情况下会存储元数据块的重复副本以提高可靠性。您可能有 2GB 的元数据,使用 4GB 存储两次。您可以使用 来查看更多详细信息btrfs filesystem df
。
特别是,1.75GB 分配给元数据,因此消耗了两倍的空间,即 3.5GB。目前,这 1.75 GB 中只有 385 MB 用于元数据,但完整的 1.75 GB 已保留用于该用途,因此不计入文件数据的可用空间