Задачи
Висят в памяти и исполняются продолжительное время.
EX:
sleep 1000 # команда прикажет системе уснуть на 1000 сек.
sleep 100 & # отправка задачи в фон, вернет номер задачи.
nohup sleep 1000 & # повесить задачу в фоне, и она не закроется при Log Out. "nohup" = "No hang up". Если процесс выводит текст, при закрытии терминала будет создан файл "nohup.out", куда процесс продолжит писать.
jobs # команда показывает запушенные задачи
fg 1 # вернуть задачу № [1] из фона, взять над ней контроль.
Как сделать запущенную задачу фоновой:
- Заморозить ее (Suspend), нажав CTRL+Z
- bg 1 # запустить задачу № [1] в фоне
Процессы
Просмотр информации
Посмотреть список процессов и задач можно с помощью команды ps с флагами:
-a - показать все доступные задачи терминала
-u - показать, от лица какого пользователя запущена каждая задача
-x - показать все задачи, включая те, что за пределами терминала
ps -aux # выводит полный список процессов и задач в ОС
top # показать интерактивный и сортированный список процессов. Основные клавиши:
- "h" - посмотреть справку по сессии "top"
- "<" и ">" проводят сортировку по разным столбцам
- "k" позволяет убить процесс по PID, отправив ему по умолчанию сигнал 15=SIGTERM, выключение. Также сигнал 9=SIGKILL, убить процесс срочно и без вопросов.
uptime # показать время, сколько система работает. Load average показывает 3 числа, означающие степень загрузки за последнюю 1 минуту, 5 минут и 15 минут. Если числа большие, это означает проблемы с производительности в системе.
free # показать свободную и занятую ОЗУ, а также файл подкачки.
Закрытие процессов
kill <PID> # убить процесс по номеру Process ID
kill -9 <PID> # убить процесс немедленно
killall <name> # убить все процессы с именем name. (!) При запуске команды из-под root, можно случайно грохнуть лишние процессы, включая процессы других пользователей.
Приоритеты процессов
Niceness
Measures from -20 (high priority) to 19 (low priority).
ps alx - показывает все процессы системы с уровнем nice.
ps -eo user,pid,pcpu,nice,comm - показать все (e = everytihng) + управление выводом, вывести только указанные колонки
Изменение приоритетов
nice -n 19 sleep 5000 - выставление низшего приоритета процесса.
sudo nice -n -20 sleep 3000 - только root пользователь может выставлять процессам отрицательный (высокий) приоритет.
Изменение приоритетов у работающих процессов
sudo renice 15 -p 10274 - переделать приоритет у работающего процесса с ID=10274.
sudo renice 19 -u testuser - переделать приоритет у всех процессов выбранного пользователя