К основному контенту

При удалении файлов df "не учитывает" освободившееся пространство


После удаления файлов df –h "не обновляется", более того место реально не освобождается.
Это происходит от того, что файлы заняты каким-либо приложением.


Решение:

ls -ld /proc/*/fd/* 2>&1 | fgrep '(deleted)'

Или

/usr/sbin/lsof | grep deleted

lrwx------ 1 root root 64 Sep 15 10:45 /proc/2958/fd/12 -> /tmp/ibSAlc0V (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/2958/fd/5 -> /tmp/ibUpZrp7 (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/2958/fd/6 -> /tmp/ibUmDSgz (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/2958/fd/7 -> /tmp/ibcLKj80 (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/2958/fd/8 -> /tmp/ibubhw0s (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/32645/fd/0 -> /dev/pts/1 (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/32645/fd/1 -> /dev/pts/1 (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/32645/fd/2 -> /dev/pts/1 (deleted)
lrwx------ 1 root root 64 Sep 15 10:45 /proc/32645/fd/255 -> /dev/pts/1 (deleted)
lrwx------ 1 root root 64 Sep 15 10:44 /proc/6788/fd/0 -> /dev/pts/38 (deleted)
lrwx------ 1 root root 64 Sep 15 10:44 /proc/6788/fd/1 -> /dev/pts/38 (deleted)
lrwx------ 1 root root 64 Sep 15 10:44 /proc/6788/fd/2 -> /dev/pts/38 (deleted)

Что и требовалось доказать.


Для освобождения места останавливаем процесс, который "держит" файлы. Если только это не процесс production database :)

kill -9 2958

Комментарии

Популярные сообщения из этого блога

Установка и настройка pgAgent(планировщика заданий PostgreSQL)

Установка pgAgent Последняя версия скрипта для установки агента  тут . Перенести инструкцию по агенту в отдельную тему. 1. Создать пользователя ОС, и сделать ему домашний каталог: useradd -s /bin/false -r -M pgagent mkdir /home/pgagent 2. Установить и настроить демон: yum install pgagent_94 При наличии ошибок вида (была на Oracle Linux 6.8) Error: Package: pgagent_94-3.4.0-1.rhel6.x86_64 (pgdg94)            Requires: libwx_baseu-2.8.so.0(WXU_2.8)(64bit) Нужно установить EPEL systemctl enable pgagent_94 chown pgagent:pgagent /var/log/pgagent_94.log 3. Установить схему агента в базе: sudo -u postgres psql -f /usr/share/pgagent_94-3.4.0/pgagent.sql postgres 4. Создать файл паролей для подключения агента к базе. vi /home/pgagent/.pgpass localhost:5432:*:postgres:postgres chown pgagent.pgagent /home/pgagent -R chmod 600 /home/pagent/.pgpass 5. Запустить и проверить работу агента systemctl start pgagent...

Включение логирования для Haproxy

Изначально логирование в syslog в HaProxy отключено. Ниже пример настройки логирования для ОС Centos 7. Настройка: Добавить строку  log 127.0.0.1 local2 в секцию global файла /etc/haproxy/haproxy.cfg Раскомментировать $ModLoad imudp и $UDPServerRun 514 в файле  /etc/rsyslog.conf Создать файл  /etc/rsyslog.d/haproxy.conf со следующим содержимым:  local2.* /var/log/haproxy.log Перезапустить rsyslog и haproxy.

Установка PL/Java для PostgreSQL 9.4

Предварительные требования:  1. Компилятор C. Как правило имеется в виду gcc и g++ gcc  --version на CENTOS 7 мне понадобился gcc_c++ (в дополнение к установленному ранее gcc) 2. JAVA. Убедиться, что  javac  -version работает  3. PostgreSQL установлен и  работает pg_config Файлы для разработки (.h файлы) для нашего PostgreSQL также должны быть установлены. Убедиться можно посмотрев что лежит в INCLUDEDIR-SERVER (вывод pg_config). Я раньше компилировал БД из исходников на этой машине, так что у меня эти файлы были. 4. компилятор Maven mvn --version Установка git clone https://github.com/tada/pljava.git или git clone ssh://git@github.com/tada/pljava.git Заходим в директорию pljava и выполняем mvn clean install В результате должны получить: [INFO] PostgreSQL PL/Java ................................ SUCCESS [INFO] PL/Java API ....................................... SUCCESS [INFO] PL/Java backend Java code...