Назад | Перейти на главную страницу

CentOS 5.5 - заполнение диска по неизвестной причине

У меня есть коробка CentOS 5.5 с отдельным разделом для / home. df -h показывает это при 100% использовании. df -i показывает тонны свободных индексов. du -sh /home /home* показывает, что в / home находится около 100 МБ файлов. lsof -n | grep / home не показывает открытых файлов в / home. lsof -n | grep deleted показывает, что файлы не касаются / home.

Раздел распределяется через NFS и монтируется на двух других клиентах CentOS 5.5. lsof -n|grep /home и lsof -n|grep deleted не показывать файлы для /home или /.

Когда я размонтирую и снова монтирую раздел, использование диска снижается со 100% до менее 3%. Однако использование диска вернется на 100% в течение нескольких дней.

Единственное, что использует / home, - это NFSd, настраиваемый сценарий и SSHd. Этот скрипт перемещает файлы из /home/somedir к /home/tmp, затем перемещает файлы в / tmp, затем анализирует файлы. Этот сценарий работает на всех трех блоках.

Новые файлы помещаются в / home с помощью сценария, который помещает файлы в среду chroot, настроенную в /home. Только пара двоичных файлов плюс /dev/null узел находятся в /home/somepath/....

я использовал service nfs stop и service portmap stop чтобы остановить nfs, остановил sshd, проверил, что упомянутый выше скрипт не запущен, а затем проверил использование диска. Остается на 100%. Только размонтирование и повторное монтирование, кажется, все проясняет.

Команда fsck -f of / home (конечно, без подключения) показывает, что файловая система в порядке.

Все боксы полностью обновлены и работают под управлением CentOS 5.5.

Куда уходит мое дисковое пространство?

Предположение: ваш собственный сценарий, работающий на всех трех блоках, спотыкается о другие экземпляры самого себя, пытаясь управлять одними и теми же файлами из трех мест; Клиент NFS, запущенный в удаленной системе, сообщает своему ядру, что он удалил файл, но фактически он был удален процессом в другой системе в промежуточный период, поэтому удаленный клиент зависает.

Решение: используйте NFS, чтобы разрешить удаленным системам доступ к файловой системе, но запускайте только сценарий очистки в системе экспорта.