XFS Нет свободного места на устройстве
У меня есть настройка сервера раздела XFS на LVM. При копировании файлов в домашний раздел отображается "Нет свободного места на устройстве".
df -h отображает достаточно места:
/dev/mapper/prod--vg-home 35G 21G 15G 60% /home
df -i также отображает достаточное количество инодов:
/dev/mapper/prod--vg-home 36700160 379390 36320770 2% /home
Я проверил влияние изменения максимального процента inode:
xfs_growfs -m 25 /dev/mapper/prod--vg-home
Эта сумма может быть легко уменьшена и увеличена.
Экспериментируя с этим параметром, я заметил, что уменьшение его до 3% и его повторное увеличение до 25%, а также удаление некоторых файлов позволяет мне снова добавлять гораздо больше файлов.
xfs_info отображает:
meta-data=/dev/mapper/prod--vg-home isize=256 agcount=14, agsize=655360 blks
= sectsz=512 attr=2
data = bsize=4096 blocks=9175040, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
Я читал о 64-битных инодах, но, похоже, это применимо только для больших дисков (более 1 ТБ).
Существуют ли другие настройки, которые могут вызвать сообщение "Нет свободного места на устройстве".
Спасибо
2 ответа
В xfs_growfs есть ошибка, из-за которой inode неправильно распределяется по разделу. Решение состоит в том, чтобы просто перемонтировать с опцией inode64. Например, если это был /dev/vda1, вы бы сделали следующее:
mount -o remount,inode64 /dev/vda1
Вы можете найти больше информации об ошибке по следующей ссылке:
http://xfs.org/index.php/XFS_FAQ#Q:_Why_do_I_receive_No_space_left_on_device_after_xfs_growfs.3F
Вы также должны проверить возможные "удаленные" файлы и перезапустить некоторые процессы: lsof -nP +L1