В CentOS 6 закончилось место, нужно его восстановить.

Отказ от ответственности :Я работаю в Red Hat, но не непосредственно над этим. Я думаю, что общее направление ушло от инструментов настройки унифицированного текста -пользовательского интерфейса. Там есть TUI для настройки сети, хотя:sudo yum install NetworkManager-tuiи затем запускаем nmtui. Думаю, это даст вам то, что вы ищете.

2
27.08.2019, 22:56
2 ответа

Хорошо, я опубликую решение. В данном случае это был сетевой каталог /mnt/backup, смонтированный поверх локального каталога /mnt/backup. после размонтирования с помощью

umount /mnt/backup

он показал локальный каталог, занимающий 45G, заполненный резервными копиями:

cd /mnt/backup/ du -h 39G ./servers-unix-hq/sugar.gnsa.local 39G ./servers-unix-hq 4.5G ./db-mysql-hq/sugar.gnsa.local 4.5G ./db-mysql-hq 44G Я удалил несколько старых резервных копий, и теперь MySQL может запускаться.

1
27.01.2020, 22:16

Это часто происходит из-за того, что кто-то удаляет (, а не усекает )файл, который увеличивается. Место на диске будет освобождено только после того, как программа, записывающая файл, закроет его.

Используйте lsof +L1, чтобы получить список всех удаленных -, но -все еще -открытых файлов, а также процессов, удерживающих их открытыми. Вывод будет выглядеть так:

# lsof +L1
COMMAND     PID     USER   FD   TYPE DEVICE SIZE/OFF NLINK    NODE NAME
php-fpm7.  1364     root    3u   REG   0,45        0     0   41658 /tmp/.ZendSem.plytyh (deleted)

Поля COMMAND и PID сообщат вам, какой процесс удерживает файл открытым, а NAME указывает, каким раньше было имя файла. Поле TYPE имеет значение REG, что указывает на то, что это обычный файл. Значение SIZE/OFF может дать вам представление о размере удаленного файла, но оно не всегда надежно (, только когда программа продолжает добавлять в конец файла и ничего не обновляет в середине, что, к счастью, значение по умолчанию для большинства файлов журналов ).

После того, как вы определили причину проблемы, существует несколько возможных способов ее устранения:

1. Активировать функцию ротации журналов рассматриваемого процесса, если это возможно

Если проблемный файл является лог-файлом, а процесс, удерживающий его открытым, имеет функцию, позволяющую чередовать лог-файлы (, т. е. процессу можно приказать закрыть и снова открыть все его лог-файлы ), вы можете просто активировать журнал. особенность вращения. Многие процессы демона принимают для этой цели kill -HUPили какой-либо другой сигнал. Данные в удаленном файле будут потеряны, если вы сначала не восстановите их (, см. ниже ).

2. Остановить и перезапустить процесс, удерживая файл открытым

Остановка и перезапуск процесса, удерживающего файл открытым, также исправит проблему и приведет к безвозвратной потере содержимого удаленного файла (, если его сначала не восстановить, см. ниже ).

3. (временное решение )Получите доступ к удаленному -, но -все еще -открытому файлу, чтобы обрезать его до нулевого размера

Используя номера PID и FD в выводе lsof +L1, если у вас есть root-доступ, вы по-прежнему можете получить доступ к «удаленному -, но -все еще -открытому» файлу через файловую систему /proc. Файл в моем примере выше будет доступен как /proc/1364/fd/3.

(Любые буквы после номера FD описывают способ доступа процесса к файлу и могут быть проигнорированы.)

Если вам нужно восстановить содержимое удаленного файла, вы можете просто catего и направить вывод в другой файл (в другой файловой системе с достаточным количеством свободного места! ).

Если вам просто нужно освободить место на диске, вы можете обрезать файл до нулевого размера с помощью команды > /proc/1364/fd/3(, то есть командной строки без команды, просто перенаправления вывода на файл, который нужно обрезать ).

Обратите внимание,:это просто удаляет существующие данные. Это не остановит накопление большего количества данных в удаленном файле, но может позволить вам, например. поддерживать критически важную службу в рабочем состоянии до тех пор, пока не будет запланировано время простоя на техническое обслуживание.


Удаление файла журнала во время записи в него является распространенной ошибкой начинающих системных администраторов Unix. Почти каждый сделает эту ошибку хотя бы раз в своей карьере в Unix/Linux. Хорошие учатся на ошибках, как устранять неполадки по мере их возникновения, так и избегать их в будущем.

0
27.01.2020, 22:16

Теги

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