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

df сообщает о неправильном свободном пространстве для раздела Ext4

Моя система - CentOS 6 x86_64 с корневым разделом в формате ext4. df сообщает около 3Гб использованного пространства:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/md1              20158260   3433724  15700540  18% /

но du -sm -x / утверждает, что фактически используется менее одного Гб:

[root@xxxx ~]# du -sm -x /
948     /

Интересно, что здесь происходит? Номера использования изменились сразу после перезагрузки. Файловая система утверждает, что она чистая, ошибок в журналах нет. я нашел этот, но это не объяснило корень проблемы. Стоит ли просто переформатировать раздел? Есть ли способ отследить это дополнительное использование?

Я также сделал следующее, чтобы убедиться, что у меня нет данных, скрытых от du путем монтирования поверх непустых точек монтирования:

[root@xxxx ~]# mount -o bind / /mnt/root
[root@xxxx ~]# du -sm /mnt/root/
949     /mnt/root/
[root@xxxx ~]#

Нет, это не мой случай.

Первое, что я подумаю, это то, что вы удалили файлы. С помощью lsof -n | grep deleted поможет вам. Показывает ли вывод этой команды какие-то файлы? (возможно, у вас все еще пишется огромный файл журнала). Если у вас есть файлы, открытые процессом (системным журналом или чем-то вроде веб-сервера Apache), которые записываются, они могут использовать много дискового пространства, и самый простой способ будет перезапустить процесс, владеющий этими удаленными файлами.

Если нет удаленных файлов, не могли бы вы вставить результат выполнения tune2fs -l ?

Принудительная проверка файловой системы при следующей перезагрузке. Возможно, у вас есть невосстановленные inodes, содержащие данные.

# touch /forcefsck  # Run as root, then reboot.

источник: http://ubuntuforums.org/showthread.php?t=1360204&p=9209650#post9209650

Ext3 / 4 может использовать до 400 МБ для файла журнала, который вы не видите. Размер журнала автоматически масштабируется в соответствии с размером созданной файловой системы или может быть указан вручную во время создания файловой системы.

Сегодня у меня была аналогичная проблема с парой хостов, на которых запущено приложение, которое кто-то удалил созданные файлы .tmp, но в процессе все еще был открыт дескриптор файла, который я нашел с помощью lsof, когда я перезапустил процесс на дисковом пространстве был выпущен. lsof был хорошим местом для начала выяснения этой проблемы -