Проблема SSH-подключения: не могу подключиться к серверу
Руководство по решению проблем SSH-подключения: правила файрвола Path.net, Default Block, создание правила фильтрации для SSH-порта и шаги по устранению неполадок.
Экстренные действия при заполнении диска: поиск больших файлов с du и ncdu, очистка логов, проверка inode и настройка автоматической очистки.
Заполнение дискового пространства может привести к сбоям сервисов, ошибкам базы данных и нестабильности системы. В этом руководстве мы рассмотрим экстренные действия и постоянные решения при заполнении диска.
# Общее использование диска
df -h
# Использование inode
df -i
# С типами файловых систем
df -Th
Когда использование диска превышает 95%, требуется немедленное действие. При 100% сервисы начинают падать.
# Самые большие каталоги в корне
sudo du -sh /* 2>/dev/null | sort -rh | head -20
# Анализ каталога /var
sudo du -sh /var/* 2>/dev/null | sort -rh | head -10
# Анализ /var/log
sudo du -sh /var/log/* 2>/dev/null | sort -rh | head -10
# Поиск файлов больше 100МБ
sudo find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null | sort -k5 -rh | head -20
# Установка ncdu
sudo apt install ncdu -y
# Анализ корневого каталога
sudo ncdu /
# Проверка размера журнала systemd
journalctl --disk-usage
# Ограничение журнала до 100МБ
sudo journalctl --vacuum-size=100M
# Удаление логов старше 7 дней
sudo journalctl --vacuum-time=7d
# Обрезка больших лог-файлов
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/kern.log
# Удаление старых ротированных логов
sudo find /var/log -name '*.gz' -delete
sudo find /var/log -name '*.1' -delete
Команда truncate сбрасывает размер файла до нуля без его удаления. Перезапуск сервисов не требуется.
# Проверка размера кеша APT
sudo du -sh /var/cache/apt/archives/
# Очистка загруженных пакетов
sudo apt clean
# Очистка старых версий пакетов
sudo apt autoclean
# Удаление неиспользуемых зависимостей
sudo apt autoremove -y
# Текущая версия ядра
uname -r
# Список установленных ядер
dpkg --list | grep linux-image
# Удаление старых ядер
sudo apt autoremove --purge -y
# Проверка размера /tmp
sudo du -sh /tmp
# Удаление tmp-файлов старше 7 дней
sudo find /tmp -type f -atime +7 -delete
# Поиск удалённых, но открытых файлов
sudo lsof +L1 | grep deleted
# Перезапуск связанного процесса
sudo systemctl restart ИМЯ_СЕРВИСА
Особенно при удалении лог-файлов дисковое пространство не освободится без перезапуска связанного сервиса.
# Проверка использования inode
df -i
# Поиск каталогов с наибольшим количеством файлов
sudo find / -xdev -printf '%h\n' | sort | uniq -c | sort -rn | head -20
# /etc/logrotate.d/custom-logs
/var/log/myapp/*.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
}
# /etc/systemd/journald.conf
[Journal]
SystemMaxUse=200M
SystemMaxFileSize=50M
MaxRetentionSec=7day
#!/bin/bash
THRESHOLD=90
PARTITION="/"
USAGE=$(df -h $PARTITION | awk 'NR==2 {print $5}' | tr -d '%')
if [ "$USAGE" -gt "$THRESHOLD" ]; then
echo "ВНИМАНИЕ: Использование диска $USAGE% ($PARTITION)"
du -sh $PARTITION* 2>/dev/null | sort -rh | head -10
fi
Заполнение диска — критическая проблема, требующая немедленных действий. Лог-файлы, кеш APT и старые ядра — наиболее частые потребители пространства. Настроив регулярную ротацию логов и мониторинг диска, вы можете предотвратить повторение этой проблемы.
Получите доступ к серверу через VNC-консоль в панели клиента REXE. Освободите место командами 'sudo journalctl --vacuum-size=50M' и 'sudo apt clean'.
Используйте sudo du -sh /* | sort -rh | head -10 для просмотра самых больших каталогов. Обычно /var/log, /var/cache и /tmp занимают больше всего места.
Процесс может всё ещё использовать удалённый файл. Найдите такие файлы командой lsof +L1 | grep deleted и перезапустите связанный сервис.
Возможно, исчерпаны inode. Проверьте использование inode командой df -i. Множество мелких файлов может вызвать исчерпание inode.
Настройте ротацию логов с logrotate. Установите ограничения размера журнала. Запускайте регулярную очистку через cron. Настройте скрипт мониторинга диска с оповещениями.
Руководство по решению проблем SSH-подключения: правила файрвола Path.net, Default Block, создание правила фильтрации для SSH-порта и шаги по устранению неполадок.
Руководство по решению проблем RDP-подключения: правила файрвола Path.net, Default Block, создание правила фильтрации для порта RDP и шаги по устранению неполадок.
Руководство по сетевому тестированию с помощью WinMTR и Linux MTR, создание правила фильтрации ICMP и отправка результатов в службу поддержки. Диагностика потери пакетов.