Запуск команд на Putty без страха потерять соединение


11

Как эффективно использовать команду «экран»?
Это:

  1. Тип "экран"

  2. Введите команду

  3. Потерять связь

  4. Возвращайтесь на потерянную сессию

Как мне выполнить шаг 4?

Ответы:


17

С экрана:

  1. screen
  2. тип command
  3. Ctrl- A- Dотсоединиться от экрана
  4. выход из сеанса
  5. screen -RD для повторного подключения к экрану (если их несколько, вы получите список текущих сеансов экрана и вам нужно будет указать номер сеанса) из нового сеанса

Более простой метод, который полезен для команд, которые выходят из лог-файлов или просто генерируют какой-либо соответствующий вывод и не нуждаются в интерактивности nohup:

  1. nohup command > logfile &
  2. Выход из сеанса
  3. tail -f logfile из новой сессии

Примечание: шаг 3 не является обязательным. Если вы закроете сеанс PuTTY без отсоединения, вы все равно можете присоединить его снова screen -RD.
Дункан Джонс

4

Экран действительно мощный, и позволяет делать именно то, что вы просили.

Чтобы увидеть все ваши сессии, введите

screen -list

После того, как вы определили сеанс экрана для подключения, попробуйте

screen -dr SCREENID

который приятно отсоединит и повторно присоединит вашу сессию.

Вы также можете сделать менее приятно,

screen -D -R

который отсоединится и выйдет из системы удаленно, при необходимости, затем подключится заново, или, если этот сеанс не существует, он создаст его и уведомит пользователя. Вы можете добавить "-t NAME", чтобы дать заголовкам или программам название.

На экране используйте

command-c

создать новое окно (поэтому вам не нужно 4000000 сеансов экрана для отключения и повторного подключения) и переключаться между ними с помощью

command-int

Индексирование от 0, конечно: P

Поскольку вы, кажется, немного незнакомы с экраном, я предполагаю, что вы могли бы использовать некоторую другую информацию. Мне нравятся следующие команды, например:

-e xy

Что заставляет x быть символом команды, а y - символом для генерации буквального символа команды. Значения по умолчанию: Ctrl-a и `a.

Здесь есть еще кое-что: Экран! Это то, что для программистов


2

screen -dr отсоединить и возобновить предыдущую сессию экрана.


2

Вот что я понял об использовании экрана (что я тоже только начал делать):

  • screen -S <name>создает экран с именем <имя>. Это очень полезно, если вы хотите, чтобы несколько сеансов экрана происходили одновременно. Например, у меня есть один, который я использую обычно, и один, который я использую для своих постоянных процессов.
  • screen -ls списки запущенных экранов.
  • screen -r <name>возобновляет отдельный экран. Если экран уже где-то прикреплен, используйте screen -dr <name>.

Кроме того, когда вы начинаете использовать экран, всякий раз, когда вы планируете покинуть его, нажмите ^a d(= ctrl-a, а затем d ), чтобы отсоединить экран, который вы в данный момент используете. Затем он может быть возобновлен позже.

Кроме того, я могу порекомендовать взглянуть на ^a ?список различных команд, которые вы можете использовать, находясь внутри экрана.

Наиболее важными из них (для меня) являются:

  • ^a c создать новое окно в вашем сеансе экрана.
  • ^a ^a переключаться между двумя последними использованными окнами.
  • ^a " перечислить текущие окна в вашей сессии.
  • ^a Esc прокрутить экранный буфер.
  • ^a k убить текущее окно.
  • ^a x чтобы заблокировать сеанс экрана, на случай, если вам нужно покинуть компьютер и не хотите, чтобы с ним связывались.

1

Быстрый поиск в Google нашел это руководство

http://www.rackaid.com/resources/linux-tutorials/general-tutorials/using-screen/

Таким образом, на шаге б) вы можете отсоединить экран, используя:

"Ctrl - A" "d"

и затем позже, после того как соединение было потеряно, и ваш подключенный снова находит экран, используя:

# screen -ls

и затем присоедините, используя:

# screen -r <screen_session_name>


1

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

# screen management
if [ $SSH_TTY ] && [ ! $WINDOW ]; then
  SCREENLIST=`screen -ls | grep 'Attached'`
  if [ $? -eq "0" ]; then
    echo -e "Screen is already running and attached:\n ${SCREENLIST}"
  else
    screen -U -R
  fi
fi


0

Шаг 4 "экран -r"

Если вы действительно сильно отключились, вам, возможно, потребуется выполнить «screen -r -d», чтобы заставить его отключиться от старого сеанса ssh, который, по его мнению, все еще открыт.


0
 For windows system

 Open putty 
 then login in server

Если вы хотите увидеть экран в консоли, то вам нужно написать команду

 Screen -ls

если вам нужен доступ к экрану, используйте команду ниже

 screen -x screen id
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.