#linux
На сервере закончилось место, логи уже удалять бесполезно... Работаю под root'ом. Вылоплинл df -h: Filesystem Size Used Avail Use% Mounted on rootfs 188G 177G 1.8G 99% / udev 10M 0 10M 0% /dev tmpfs 6.4G 292K 6.4G 1% /run /dev/disk/by-uuid/47783a3f-1df3-4061-a4b9-42c53642ca6c 188G 177G 1.8G 99% / tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 20G 8.0K 20G 1% /run/shm /dev/md1 496M 33M 438M 7% /boot Затем сделал du -hd1a /, получилось: 125M /lib 52K /tmp 4.0K /home 23M /boot 584M /opt 6.8M /bin 8.3G /var 4.0K /mnt 2.4G /usr 8.7M /sbin 170M /root 16K /lost+found 216K /log2ban 8.0K /media 12K /srv 0 /dev 4.0K /lib64 300K /run 0 /sys du: cannot access /proc/14876/task/14876/ns/net': No such file or directory * остальные du: cannot access удалены 0 /proc 4.0K /selinux 5.8G /etc 18G / Как видите, файлами занято 18 гигов, а блоками 177. Помогите понять, чем занято место, и решить проблему.
Ответы
Ответ 1
мой вольный перевод ответа: Why do “df” and “du” commands show different disk usage? вероятно, вы знаете, что можно удалить файл, который всё ещё используется каким-нибудь процессом, и он останется доступным для данного процесса. потому что остаётся открытым файловый дескриптор в псевдо-файловой системе proc (в /proc/номер-процесса/fd/), и пространство, занимаемое таким файлом, программа df считает используемым (и она права). а вот программа du не просуммирует это пространство, так как уже нет файлов, с ним ассоциированных. вы можете просмотреть информацию о таких удалённых, но всё ещё открытых файлах, например, так: $ sudo lsof | grep '(deleted)' и перезапустить те процессы, которые всё ещё используют удалённые файлы.
Комментариев нет:
Отправить комментарий