我将我的 ext4 分区转换为 btrfs 并在这样做后删除了保存子卷。然后我在 fstab 文件中启用了文件系统的压缩 (lzo),到目前为止一切都是正确的。
然后我使用带有参数 -c 的碎片整理命令强制压缩所有文件,新压缩应用于所有文件。
这样做时,我注意到我的 ssd 已经完全填满了 - 在我有 6gigs 的可用空间之前。不,我一无所有。
easteregg@x201s:~$ btrfs fi df /
Data: total=50.00GB, used=49.17GB
System: total=32.00MB, used=4.00KB
Metadata: total=24.50GB, used=9.86GB
Run Code Online (Sandbox Code Playgroud)
和
easteregg@x201s:~$ df -ha
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 75G 60G 852M 99% /
Run Code Online (Sandbox Code Playgroud)
所以现在。我怎样才能重新获得我的可用空间。由于 lzo 压缩,我希望获得更多空间。现在!
fs 已正确安装。
easteregg@x201s:~$ mount
/dev/sda1 on / type btrfs (rw,noatime,ssd,compress=lzo)
Run Code Online (Sandbox Code Playgroud)
任何想法如何解决这个问题?
我想我在决定使用 Btrfs 时犯了一个错误。我没有使用它的任何功能,但现在遇到空间不足的问题。我做了
sudo btrfs balance start / -v
Run Code Online (Sandbox Code Playgroud)
正如某些来源所建议的那样,但仍然没有多少可用空间:
$ sudo btrfs fi df /
Data, single: total=102.00GiB, used=99.55GiB
System, single: total=32.00MiB, used=16.00KiB
Metadata, single: total=2.00GiB, used=762.44MiB
unknown, single: total=256.00MiB, used=0.00
Run Code Online (Sandbox Code Playgroud)
一位消息人士建议删除快照。我找到了一位候选人:
$ sudo btrfs subvolume list /
ID 257 gen 390597 top level 5 path @
ID 258 gen 390597 top level 5 path @home
ID 317 gen 390480 top level 5 path @apt-snapshot-release-upgrade-utopic-2014-10-23_20:38:40
Run Code Online (Sandbox Code Playgroud)
删除@apt-snapshot-release-upgrade-utopic-*快照是否安全?
注意:我正在使用 eCryptFS(不确定在这种情况下这是否重要)。
无论好坏,我都在使用 Btrfs。它是一个没有压缩或 RAID 的普通 btrfs 分区,我也没有任何快照;这是一个简单的 btrfs 分区,操作系统报告有相当多的可用空间,但是在运行各种操作(例如更新)时出现空间不足错误。
诸如df报告大量可用空间的操作系统工具:
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 7.8G 0 7.8G 0% /dev
tmpfs 1.6G 26M 1.6G 2% /run
/dev/sda5 354G 313G 41G 89% /
tmpfs 7.9G 172M 7.7G 3% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup
/dev/sda5 354G 313G 41G 89% /home
tmpfs 1.6G 4.0K 1.6G 1% /run/user/139
tmpfs 1.6G 20K 1.6G 1% /run/user/1000
Run Code Online (Sandbox Code Playgroud)
后来我找到了 btrfs 工具来显示有关 btrfs 卷的信息: …