Перейти к основному содержимому
Модуль 5 · Урок 2 из 211/11 в курсе~15 min
Уроки модуля (2/2)

Управление заданиями и журналы (bg, fg, Tail)

При использовании терминала вам может потребоваться выполнить долгосрочную команду без блокировки оболочки. Linux поддерживает Job Control, который позволяет отправлять процессы в фоновый режим и переключать их обратно на передний план. Кроме того, вы узнаете, как отслеживать журналы, чтобы проверять, что происходит в системе.


Выполнение команд в фоновом режиме: & и jobs.

Чтобы запустить команду непосредственно в фоновом режиме (немедленно освободив контроль над терминалом), добавьте символ & (амперсанд) в конец команды:

Bash
sleep 1000 &

Эта команда возвращает номер задания (например, [1]) и PID.

Список вакансий: jobs

Команда jobs перечисляет активные процессы, связанные с текущим сеансом оболочки, которые выполняются в фоновом режиме или приостановлены:

Bash
jobs

Перемещение процессов: fg, bg и Ctrl+Z.

Если команда выполняется на переднем плане и блокирует терминал, вы можете:

  1. Нажмите Ctrl + Z, чтобы приостановить (приостановить) текущий процесс.
  2. Используйте команду bg (фоновый режим), чтобы перезапустить приостановленный процесс в фоновом режиме:
    Bash
    bg %1   # Restarts job 1 in the background
  3. Используйте команду fg (передний план), чтобы вернуть фоновый процесс на передний план:
    Bash
    fg %1   # Brings job 1 to the foreground

Журналы мониторинга: tail и journalctl

В журналах системы и приложений фиксируются важные события. Часто вам необходимо наблюдать за этими файлами в режиме реального времени по мере их записи.

Просмотр конца файла: tail

Команда tail отображает последние строки файла (по умолчанию — 10 строк):

Bash
tail /var/log/syslog
tail -n 20 /var/log/syslog    # Shows the last 20 lines

Чтобы отслеживать файл в режиме реального времени (например, просматривать сообщения журнала, созданные во время тестирования приложения), используйте опцию -f (следовать):

Bash
tail -f logs/server.log

Попробуйте сами

Упражнение 1. Список активных вакансий

Упражнение#linux.m5.l2.e1
Попыток: 0Загрузка…

Отобразите список текущих заданий (фоновых или приостановленных процессов) в терминальной сессии с помощью команды «jobs».

Загрузка редактора…
Показать подсказку

Используйте просто команду «jobs».

Решение доступно после 3 попыток

Упражнение 2. Выведите работу на передний план

Упражнение#linux.m5.l2.e2
Попыток: 0Загрузка…

Выведите текущее активное фоновое задание на передний план с помощью команды «fg».

Загрузка редактора…
Показать подсказку

Используйте команду «fg», чтобы вернуть задание на передний план.

Решение доступно после 3 попыток

Упражнение 3. Проверьте последние строки журнала.

Упражнение#linux.m5.l2.e3
Попыток: 0Загрузка…

Отобразите последние строки файла журнала, расположенного по адресу «logs/server.log», с помощью команды «tail».

Загрузка редактора…
Показать подсказку

Используйте «хвост», а затем путь к файлу: «logs/server.log».

Решение доступно после 3 попыток