Главная страница | Добавить в избранное    
   

 

» Статьи » Куда девалось место в файловой системе?

   
main1
pix
 

Куда девалось место в файловой системе?

Статьи  
pix pix pix

Например, есть некий процесс, непрерывно пишущий огромный лог. Кто-то этот самый лог удаляет командой rm, и мы наблюдаем странные вещи: свободное место на разделе уменьшается, а файла, занимающего кучу места, нет! Дело в том, что даже после удаления файла из файловой системы, в структурах памяти ОС остаётся открытым т.н. дескриптор файла. А пока у файла остаётся хотя бы один дескриптор (и не важно, в памяти он или на файловой системе), место на диске не освобождается.
Как быть? В Linux есть псевдо-файловая система /proc, из которой при необходимости можно вытащить массу важной ниформации. Итак, поищем открытые файлы, которые были удалены:

find /proc/*/fd -ls | grep  '(deleted)'

Вывод будет выглядеть примерно вот так:

886997021    0 l-wx------   1 root root       64 Apr 12 12:19 /proc/13534/fd/29 -> /var/log/nginx/ssl.access.log.1\ (deleted)
886997022    0 l-wx------   1 root root       64 Apr 12 12:19 /proc/13534/fd/30 -> /var/log/nginx/ssl.error.log.1\ (deleted)

Имена псевдо-директорий в файловой системе /proc, выделенные красным - это pid процессов, которые держат открытыми удалённые файлы. Тут надо принять решение, что делать с процессами. Можно просто убить, можно остановить соответствующие сервисы, можно просто усечь файл:

# Усечём первый файл из списка:
echo > /proc/13534/fd/29

Этот способ сработает в Linux, но можно попробовать и на других UNIX-like ОС.




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
 
Автор: hellevil | 12-04-2017, 12:22 | Просмотров: 1 114
 
pix
  Новости по теме    
pix pix pix
  • Все об эмуляции Linux во FreeBSD
  • FreeBSD для стола
  • Копирование данных с помощью rsync + ssh
  • Репликация MySQL
  • Сборс пароля Windows Server 2008 и 2008R2.
  •  
     
     
    pix
     
    pix
    search
    navi
    poll
    calendar
    «    Октябрь 2020    »
    ПнВтСрЧтПтСбВс
     1234
    567891011
    12131415161718
    19202122232425
    262728293031 
    main4
    pix pix pix

    2007 © www.DesktopBSD.ru
    Все права сохранены