Консольные мультиплексоры и управление процессами
Цель:
Приобрести навыки работы для работы с терминальными мультиплексорами
Задачи:
- Подключится к виртуальной машине на облачной платформе СПбГУТ
- Установить Tmux
- Научиться работать с Tmux.
- Установить Screen
- Научиться работать с Screen.
Установка Tmux
Подключиться к виртуальной машине и установить пакет Tmux
sudo yum install tmux -y
Работа с tmux
Создание сессии в tmux
tmux
Создание сессии с названием Test
tmux new -s Test
Управление внутри сессии:
Префикс(клавиши с которых начинаются команды) по умолчанию CTRL + B В дальнейшем будет сокращено до CB Сначала нажимается префикс в дальнейшем команда
- CB + С (сначала прожать префикс, затем c) - Создание нового окна
- CB + , - Переименовать текущее окно
- CB + Shift + % - разделение экрана по вертикали
- CB + Shift + " - разделение экрана по горизонтали
- CB + t - Показать в панели текущее время
- CB + Стрелки - переместиться на панель в которую указывает стрелка
- CB + Зажатая Ctrl + стрелка - Изменить размер панели в зависимости от направлении стрелки
- CB + D - Отключится от сессии Tmux, окна запущенные внутри останутся рабочими(свернутыми)
- CB + X - закрыть панель
- CB + w - посмотреть список открытых окон
- CB + l - Подключится к прошлому(открытое до этого) окну
- CB + n - Переключится к следующему окну
- CB + p - переключится к прошлому окну
- CB + {номер окна} - переключится к окну с необходимым окном
- CB + Page Up - проскролить по терминалу выше
- CB + Page Down - проскролить по терминалу ниже
- CB + w - посмотреть список всех открытых сессий и открытых в ней окон
- CB + f - поиск панели по названию
Подключится к сессии
tmux a
подключение в таком случае произойдет к первой созданной сессии
Подключение к сессии с названием Test
tmux a -t Test
Посмотреть список открытых сессий в tmux
tmux ls
Закрыть сессию в Test в Tmux
tmux kill-session -t Test
Закрыть все сессии в tmux
tmux kill-server
Задание Tmux
Cоздать 2 сессии
- 1 сессия - название lab
- 2 сессия - название lab_2
- session
Проверьте все ли правильно создано, сравнив с скриншотом
Работа с Screen
Установка Screen
sudo yum install -y screen
Создание сессии в screen
Создать сессию в screen можно с помощью команды
screen
Проверить, что вы зашли в screen можно выполним команду
echo $TERM
В ответе на эту команду у вас появится строка с названием вашего окружения с приставкой screen.
Создать новую сессию screen с названием newscreen
screen -S newscreen
Посмотреть список запущенных сессий
screen -ls
Подключится к работающей сессии screen c id 23771
screen -r 23771
Управление внутри сессии:
Префикс(клавиши с которых начинаются команды) по умолчанию CTRL + A В дальнейшем будет сокращено до CB Сначала нажимается префикс в дальнейшем команда
- CB + С (сначала прожать префикс, затем c) - Создание нового окна
- CB + A - Переименовать текущее окно
- CB + | - разделение экрана по вертикали
- CB + S - разделение экрана по горизонтали
- CB + Tab - переместиться в следующую область
- CB + Зажатая стрелка - Изменить размер панели в зависимости от направлении стрелки
- CB + D - Отключится от сессии
- CB + X - Удалить область
- CB + Q - Закрыть все кроме текущей области
- CB + x - заблокировать до введения пароля
- CB + n - Переключится к следующему окну
- CB + p - переключится к прошлому окну
- CB + {номер окна} - переключится к окну с необходимым номером
- CB + ? - шпаргалка по командам
Управления процессами в Linux
Команды для работы с задачами
Команда | Описание |
---|---|
jobs | Список всех задач |
bg n | Помещает текущее или указанное задание в фоновый режим, где n - ID задачи |
fg n | Выводит на передний план текущее или указанное задание, где n - ID задачи |
CTRL + Z | Останавливает задание на переднем плане и помещает его в фоновый режим |
CTRL + C | Отправить сигнал о прерывание(завершение) процесса в на переднем плане |
{command} & | запуск процесса в фоновом режиме |
Задание управление процессами
- Установить
htop
sudpsudo yum install -y htop
-
Запустите в фоне 5 задач:
- htop
- watch ss -tulpan
- ping 8.8.8.8
- ping 192.168.0.1
- ping yandex.ru
-
Посмотрите список всех задач
jobs
-
По очереди переместите все задачи на передний план и верните их обратно в фон и снова проверьте список всех задач
-
Убейте все запущенные ранее процессы