Решено: некорректное определение свободного места на томе LVM

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
ishitori
Сообщения: 502
ОС: gentoo -> archlinux

Решено: некорректное определение свободного места на томе LVM

Сообщение ishitori »

всем добрый вечер!

проблема возникла давно, но только сейчас решил обратиться за помощью.

имеется lvm2 2.02.96-3. создано несколько логических томов, все отформатированы в btrfs.
заметил, что на 2-х логических томах некорректно определяется свободное место:

Код: Выделить всё

[tap@opr7 ~]$ df
Filesystem                Size  Used Avail Use% Mounted on
...
/dev/mapper/vg00-music    432G  368G   48G  89% /home/tap/music
/dev/mapper/vg00-photo     70G   41G   27G  61% /home/tap/photo
...
/dev/mapper/vg00-torrent  512G  488G  5.3G  99% /home/tap/torrent

т.е., например, размер тома vg00-music - 432 ГБ, а Used + Avail = 416 ГБ. я, конечно, понимаю, что все файловые системы резервируют часть раздела под хранение служебной информации, но не 20 же ГБ. к тому же, на логических томах меньшего размера это расхождение составляет всего пару гигабайт. на корневом разделе вообще всё копейка в копейку (jfs, не в lvm).
также обратил внимание, что большое расхождение на vg00-torrent возникло после увеличения его размера online.

скажите, пожалуйста, так и должно быть или что-то криво настроено?
морнинг круассан..
Спасибо сказали:
Kopilov
Сообщения: 955
ОС: [K]Ubuntu, Debian

Re: Решено: некорректное определение свободного места на томе LVM

Сообщение Kopilov »

Как раз недавно копал этот вопрос :)
LVM тут точно не при чём. У меня (точнее, у обслуживаемой компании) на сервере переполнился диск, СУБД отказалась запускаться -- я решил выяснить, куда девается это пространство и можно ли его частично вернуть, чтобы оживить систему.
Для таблицы inode многовато. Журнал файловой систмы посмотрел через dumpe2fs /dev/sda2 | grep "Journal size" -- он оказался в 10 раз меньше.
Ответ нашёл в GNU FAQ: оказывается, пространство резервируется не под "хранение служебной информации", а именно на мой случай -- чтобы, когда диск переполнится для пользователя, не умерла вся ОС. То есть, можно и свободного пространства немного добавить, и, при переполнении системного раздела, root-овые процессы смогут продолжить на него писать. По умолчанию резервируется 5% общего объёма, а сколько составляет 5% от 400?
В своём случае я сделал tune2fs -m 2 /dev/sda2 при отмонтированном разделе, а как настроить btrfs -- смотри его документацию.
Спасибо сказали:
Аватара пользователя
ishitori
Сообщения: 502
ОС: gentoo -> archlinux

Re: Решено: некорректное определение свободного места на томе LVM

Сообщение ishitori »

спасибо за наводку. вот что выяснилось:

Код: Выделить всё

[tap@opr7 ~]$ btrfs fi df /home/tap/torrent
Data: total=491.01GB, used=485.76GB
System, DUP: total=8.00MB, used=60.00KB
System: total=4.00MB, used=0.00
Metadata, DUP: total=10.48GB, used=689.81MB
Metadata: total=8.00MB, used=0.00

т.е. для данных свободны те самые 5.3 ГБ. под метаданные зарезервировано чуть более 10 ГБ, и, оказывается, эти метаданные еще и дублируются :(
таким образом, 10.48 x 2 + 491.01 = 511.97, т.е. получаем те же 512 ГБ, что указаны в выводе df. так что никакой мистики.
да, оказывается, что при форматировании раздела можно было отказаться от этой дупликации, а теперь, наверно, уже поздно.

в общем, вопрос исчерпан, а lvm в моих глазах оправдан :)
морнинг круассан..
Спасибо сказали: