Использование диска Linux и размер диска не совпадают [Fedora 11]

467
William Carter Baller

У меня проблема с виртуальной машиной Xen, когда df и baobab согласны с тем, что используется 94% моего диска (25 ГБ из 28 ГБ), но du учитывает только часть общего использования диска (3,3 ГБ).

Сервер имеет простую конфигурацию LVM: раздел 28G, смонтированный в /. lvdisplay и vgdisplay показывают, что учитывается весь объем.

Как мне не хватает места почти в 22G?

df Output ========= Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_dns-lv_root 29241444 25924244 1831788 94% /  df -h Output ============ Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_dns-lv_root 28G 25G 1.8G 94% /  `du --max-depth=1 -h` Output ============================ 96K ./tmp 128K ./home 23M ./root ... 94M ./etc 4.0K ./.pulse 3.4G . 
1
Пожалуйста, включите вывод самих команд. Нам нужно увидеть `du` и` df -h`. Также взгляните на эти вопросы и ответы: [Почему существует так много разных способов измерения использования диска?] (Http://unix.stackexchange.com/q/120311) terdon 10 лет назад 0

3 ответа на вопрос

2
Laszlo Valko

Если вы удалите (отмените связь) файл, который остается открытым процессом, вы увидите, что использование исчезает du, но все еще используется пользователем df. Как только последний процесс закроет файл (что происходит последним, когда этот процесс завершится), пространство, используемое файлом, также будет освобождено и доступно df.

Это именованный сервер. Есть ли вероятность, что named занимает * все это * пространство? Время работы ... вау ... 743 дня. William Carter Baller 10 лет назад 0
@WilliamCarterBaller перезагружает опцию? Если проблема связана с зависанием файла, перезагрузка должна устранить его. terdon 10 лет назад 0
Вы можете проверить наличие удаленных файлов с помощью «lsof -n | grep Удалено». В качестве бонуса вы также видите, какой процесс держит эти файлы открытыми. Вы можете очистить такие файлы, выполнив команду «> / proc / $ process_id / fd / $ fd», $ process_id - 2-й столбец, $ fd - 5-й столбец. wurtel 10 лет назад 0
Ух ты, @ wurtel! Ты совершенно прав. Вывод lsof -n | grep удалил дал: rsyslogd 943 root 1w REG 253,0 20649662640 122793 /var/log/messages.20140731 (удалено). 20649662640b переводится как 20,64G. Перезапуск rsyslog устраняет проблему! Спасибо!! William Carter Baller 10 лет назад 0
Жизненно важно знать, что вы, возможно, не сможете освободить место на диске, просто удалив большие (и растущие) файлы в аварийной ситуации с полным заполнением диска, вы должны убедиться, что процесс записи в этот файл также закрывает файл. Если это не вариант, вместо удаления файла вы должны усечь его содержимое (`:> имя файла`). Laszlo Valko 10 лет назад 0
0
Leeroy

Linux сохраняет буферное пространство, которое может использовать только root. Запуск sudo tune2fs -l /dev/sda1покажет количество зарезервированных блоков в своем выводе.

Чтобы полностью отключить зарезервированные блоки, используйте следующую команду:

sudo tune2fs -m 0 /dev/sda1 
tune2fs -l / dev / mapper / vg_dns-lv_root дает следующее: Тип операционной системы файловой системы: Linux Количество узлов: 1859584 Количество блоков: 7427072 Число зарезервированных блоков: 371353 Количество свободных блоков: 829324 Число свободных узлов: 1736734 ... William Carter Baller 10 лет назад 0
Это означает, что количество зарезервированных блоков составляет 371353 или 0,177074909G? William Carter Baller 10 лет назад 0
0
William Carter Baller

Информация @ wurtel исправила это.

Output of `lsof -n | grep deleted` ==================================  rsyslogd 943 root 1w REG 253,0 20649662640 122793 /var/log/messages.20140731 (deleted).  

20649662640b переводится как 20,64G. Перезапуск rsyslog устраняет проблему!

Всем спасибо!!

kill -hup процесса rsyslogd также исправил бы это, что говорит rsyslogd закрыть и снова открыть его лог-файлы. А теперь поймите, почему была произведена ротация лог-файла, а не сигнализация :-) wurtel 10 лет назад 0

Похожие вопросы