Диск заполнен на сервере Linux, количество используемых блоков намного меньше, чем количество доступных блоков

Вывод df:

[root@backup log]# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGro  1889811408 1861658948         0 100% /
/dev/sda1               101086     16235     79632  17% /boot
tmpfs                  1815760         0   1815760   0% /dev/shm

Таким образом, доступный блок должен быть 28.152.460, но это 0. Я удаляю дерьмовую загрузку файлов, и используемые блоки выключаются, но доступные остаются в 0.

Вывод df -i:

[root@backup log]# df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/mapper/VolGro 487751680 238360803 249390877   49% /
/dev/sda1              26104      37   26067    1% /boot
tmpfs                 219784       1  219783    1% /dev/shm

Так что это не недостаток inode.

Вывод lsof +L1:

[root@backup log]# /usr/sbin/lsof +L1
COMMAND     PID  USER   FD   TYPE DEVICE SIZE NLINK      NODE NAME
mysqld     2444 mysql    4u   REG  253,0    0     0 268795908 /tmp/ibSlaKC7 (deleted)
mysqld     2444 mysql    5u   REG  253,0    0     0 268795909 /tmp/ibhFuyGr (deleted)
mysqld     2444 mysql    6u   REG  253,0    0     0 268795910 /tmp/ibbNinKL (deleted)
mysqld     2444 mysql    7u   REG  253,0    0     0 268795911 /tmp/ibz1ia55 (deleted)
mysqld     2444 mysql   11u   REG  253,0    0     0 268795912 /tmp/ibM3IHvr (deleted)
crond      2549  root    3u   REG  253,0    5     0 248579098 /var/run/crond.pid (deleted)
yum-updat  2620  root   14w   REG  253,0    0     0 248611115 /var/run/yum.pid (deleted)
ssh       16256  root    0u   CHR  136,0          0         2 /dev/pts/0 (deleted)
ssh       16256  root    1u   CHR  136,0          0         2 /dev/pts/0 (deleted)
ssh       16256  root    2u   CHR  136,0          0         2 /dev/pts/0 (deleted)

Я не могу запустить 'du', потому что 99% дискового пространства находится в /var/backups, который содержит, вероятно, ~100 миллионов файлов (какой-то идиот решил rsync кодировать с живого сервера с помощью каталогов subversion, так что это много крошечных файлов) Таким образом, запуск 'du' займет несколько дней или недель.

У кого-нибудь есть какие-либо предложения о том, как поступить?

4 ответа

Если это файловая система ext, корневое зарезервированное пространство по умолчанию будет составлять 5% из 1889811408 блоков или 94490570 блоков. Другими словами, вам нужно удалить еще около 66 ГБ df сообщит о наличии свободного места.

использование tune2fs -m 1 /dev/mapper/VolGro уменьшить зарезервированную сумму до 1%, или -r NNNN установить его на определенное количество блоков. Должно быть достаточно зарезервированного пространства, чтобы ведение журнала могло продолжаться даже после того, как пользователи "заполнили" диск (хотя, если вы заполняете диск как root, это не избавит вас от проблем, когда диск полностью заполнен)

Другие файловые системы, вероятно, также имеют зарезервированные блоки, но команды для их настройки будут отличаться.

Запустите fsck, чтобы увидеть, не повреждена ли файловая система.

Если вы удалили такие вещи, как файлы журнала Apache - требуется перезапуск Apache, прежде чем "освободить" пространство

Таким образом, доступный блок должен быть 28.152.460, но это 0. Я удаляю дерьмовую загрузку файлов, и используемые блоки выключаются, но доступные остаются в 0.

Я подозреваю, что эти файлы все еще использовались вашим сервисом, когда вы его удаляли. Итак, просто перезапустите сервис, df Команда обновит доступное пространство.

Другие вопросы по тегам