Довольно часто сервера начинают странно работать. В случае большой загруженности сервера могут возникать ошибки в логах. Перезагрузка операционки может помочь, но вы остановите все рабочие процессы. Если на сервере один два процесса работают, то их можно остановить, но что делать если к серверу подключено большое количество пользователей и они запускают рабочие скрипты? Тут перегрузка враг. В этом случае нужно определить слабое место и закрыть его. Программа ps выводит отчёт о работающих процессах вашего сервера.
# список процессов запущенных от вашего имени
ps -U root
# список PID-процессов
ps ax | grep 'name'
# список PID-процессов + USER + %CPU(процессор) + %MEM (ОЗУ) + VZS + RSS + START
ps aux
# удаление процесса по номеру PID
kill PID
# удаление процесса по номеру PID, PID формируется внутри $()
kill -9 $(ps aux | grep -e myProcessName | awk '{ print $2 }')
Если вы первый раз смотрите на вывод команды ps, то понять какие процессы связаны друг с другом довольно сложно. Тут поможет древовидный вывод процессов. Он объединяет процессы по темам. Посмотрите на пример.
# для построения древовидной структуры используются слеши и подчёркивания
ps axjf
# отступ вместо линий
ps -ejH
Вы можете менять приоритет работы команды. Один процесс может быть главным, а другие процессы второстепенными. Утилита nice принимает аргумент «смещение» в диапазоне от -20 (наивысший приоритет) до +19 (низший приоритет)
#запуск скрипта с длительной работой
ps aux | grep nice_test
# установка приоритета для процессов,
# от -20 (наивысший приоритет) до +19 (низший приоритет)
#в самый верх
renice -n -20 -p PID
# в самый низ
renice -n 19 -p PID
Существует команда top. Она показывает солбцы: PID, USER, PR, NI, VIRT, RES, SHR, S, %CPU, %MEM, TIME+, COMMAND. Самое интересное - это загрузка CPU (процессор), %MEM (оперативка) и COMMAND (команда).
Существует команда htop. Здесь вы увидите подробные данные по загрузке ядер процессора и ОЗУ. Она по работе очень похожа на top. Вы увидите данные в цвете. Самые тяжёлые процессы отражены в самом верху.
top
htop