Screen Удобный инструмент системного администратора

Screen — это эмулятор терминала. Который позволяет запустить несколько сессий например в вашем удаленном терминале, которому нестрашны дисконнекты, т.е. процессы в screen остаются живы после закрытия вашей сессии.
Как пример в нем можно безопасно запустить правила файрвола, если по умолчанию он настроен как закрытый (в момент отработки вы потеряете ssh коннект, но в screen скрипт отработает до конца и при наличии разрешающих правил для вашего подключения в конфигурации firewall вы потеряете управление только на короткое время)
Так же время от времени появляются задачи держать какой-либо процесс запущенным ручным способом (в далекой практике держали терминальную ICQ для мониторинга потребления трафика), с помощью screen это легко сделать.

В системе FreeBSD изначально screen не установлен, установим (два варианта установки на ваш выбор – порты или пакеты)

В Linux где-то scren идет в базовой инсталляции, где-то нет, можно проверить командой:

Если на ваша система Linux и в выводе wheries вы не обнаруживаете screen в bin(sbin) каталоге, то установите его с помощью вашего пакетного менеджера (apt, yum, etc)

Несколько полезных команд для работы со screen:

  • Запустить screen – screen
  • Отключится от screen – Ctrl+a+d
  • Убить текущий screen – Ctrl+a+K
  • Посмотреть все сессии screen – screen -list
  • Подключится к сессии screen – screen -r [имя сессии]
  • Подключится к единственной сессии – screen -r
  • Создать сессию screen, запустить процесс и не входить в нее –

Где:

  • -t – Имя сессии (Имя окна)
  • -d – Отключится от сессии
  • -m – Создать новую сессию

Что позволяет нам запустить процесс в screen при перезагрузке прибегнув к планировщику заданий Cron, просто добавив запись через crontab:

Оставить комментарий

avatar
  Подписаться  
Уведомление о