У меня проблема со свободным пространством btrfs (не так уж редко), но я не смог ее решить, следуя наиболее очевидным источникам. Я не знаю, что мне не хватает.
Источники:https://btrfs.wiki.kernel.org/index.php/FAQ#Help.21_I_ran_out_of_disk_space.21 http://marc.merlins.org/perso/btrfs/post_2014-05-04_Fixing-Btrfs-Filesystem-Full -Problems.html
Моя система:
# uname -a
Linux archb3 4.6.3-2-ARCH #1 PREEMPT Wed Jun 29 07:15:33 MDT 2016 armv5tel GNU/Linux
/home is automounted (no entry in fstab)
/home/storage/video /home/cata/files none bind 0 0
# mount | grep btrfs
/dev/sda4 on /home type btrfs (rw,relatime,space_cache,subvolid=5,subvol=/)
/dev/sda4 on /home/cata/files type btrfs (rw,relatime,space_cache,subvolid=5,subvol=/storage/video)
# btrfs fi df /home
Data, single: total=1.64TiB, used=1.60TiB
System, DUP: total=8.00MiB, used=224.00KiB
Metadata, DUP: total=4.00GiB, used=2.16GiB
GlobalReserve, single: total=512.00MiB, used=0.00B
# btrfs fi show /dev/sda4
Label: 'home' uuid: 1c7e35e8-f013-4f65-9d19-eaa168ac088b
Total devices 1 FS bytes used 1.61TiB
devid 1 size 1.81TiB used 1.65TiB path /dev/sda4
# btrfs fi usage /home
Overall:
Device size: 1.81TiB
Device allocated: 1.65TiB
Device unallocated: 168.93GiB
Device missing: 0.00B
Used: 1.61TiB
Free (estimated): 203.23GiB (min: 118.76GiB)
Data ratio: 1.00
Metadata ratio: 2.00
Global reserve: 512.00MiB (used: 0.00B)
Data,single: Size:1.64TiB, Used:1.60TiB
/dev/sda4 1.64TiB
Metadata,DUP: Size:4.00GiB, Used:2.16GiB
/dev/sda4 8.00GiB
System,DUP: Size:8.00MiB, Used:224.00KiB
/dev/sda4 16.00MiB
Unallocated:
/dev/sda4 168.93GiB
Если я правильно понял, не должно быть проблем с метаданными (более 40% бесплатно), и я не вижу, как возникает проблема с данными - 1,64 ТБ из 1,81 ТБ.
Я попытался запустить ребалансировку, но она выдает сообщение "Нет места на устройстве" - я удаляю каталог с ~ 25 ГБ данных, но безрезультатно.
Что мне не хватает?
РЕДАКТИРОВАТЬ: в системе нет снимков, только что проверил.
EDIT2: я удалил около 50 ГБ данных и запустил дефрагментацию - к моему изумлению, диск теперь сообщает: # btrfs fi df /home Данные, одиночные: всего = 1,71 ТБ, используется = 1,70 ТБ системы, DUP: всего = 8,00 МБ, used = 224.00KiB Метаданные, DUP: итого = 3.50GiB, used = 2.24GiB GlobalReserve, одиночный: всего = 512.00MiB, used = 0.00B
То есть после удаления 50 ГБ на диске появилось еще 100 ГБ.
Я хочу любить btrfs, но это кажется совершенно непредсказуемым:/