Диагностика VDS/VPS
Смотрим, как загружена система:
# top // можно посмотреть время системы, для ноды в кластере это бывает очень важно
# htop // Обращаем внимание на процессы которые грузят память и проц
Если нет ничего подозрительного(и у Вас не появилось желания ничего убить) смело идем смотреть дисковое пространство:
# df -h
Если и с местом все хорошо, то проверяем айноды (Inode – это сокращение от «index node» – по-русски – индексный узел) :
# df -i
Смотрим количество свободной оперативки:
# free
Ищем процесс, который грузит систему(если вы понятия не имеете, что это такое то нужна проверка, если проверка показала, что процесс левый его можно убить! ):
ps -e | grep PROCESS
Жестко останавливаем все процессы по названию PROCESS
killall -9 POCESS
Также всегда имеется вариант завершить не нужный процесc по PID (eго можно предварительно посмотреть в htop)
kill -9 PID
Часто при работе в консоли linux нужно быстро подсчитать сколько места занимает каждая директория. Я для этого использую простой bash скрипт прямо в консоли. Переходим в директорию, где хотим узнать размер папок и запускаем в консоли код:
du -s *| sort -nr | cut -f 2- | while read a;do du -hs $a; done | awk 'NR <=10'
Для поиска "вредных процессов" можно использовать простую команду:
ps -aux | grep "PROCESS"
Жестко останавливаем все процессы по пиду PROCESS
kill -9 PID
Он выведет только 10 директорий с самым большим занимаемым ими объемом. Если хотите получить размер всех папок, то удалите в конце awk.
Если надо регулярно проверять объем директорий, то я использую простенький скрипт, который проверяет размер папок и записывает результат здесь же в текстовый файл. Обычно делаю это на больших серверах с бэкапами, когда приходит время понять, какие бэкапы занимают больше всего места.
#!/bin/bash
echo "==================================" » dir_size.txt
echo "Dirs size `date +"%Y-%m-%d_%H-%M"`" » dir_size.txt
echo "==================================" » dir_size.txt
du -s *| sort -nr | cut -f 2- | while read a;do du -hs $a » dir_size.txt ;done
Скрипт обычно лежит в корне раздела с бэкапами и запускается по необходимости. Можно привязать его запуск к триггеру в мониторинге на низкий уровень свободного места в разделе. Можно и вывод в мониторинг отправлять, хотя обычно это реализуется по-другому. У меня есть статья по мониторингу бэкапов в zabbix.И самый топ:
du -sch