Правильный способ запуска фонового процесса

Эта функция может работать, но если псевдоним Томаса работает, я думаю, что это лучшее решение.

autossh () {

  publicip="11.11.11.11"
  privateip="10.10.10.100"
  proxyhost="10.10.10.10"
  proxyport="9001"
  ssh -o ConnectTimeout=10 $1@$privateip 2> /dev/null && exit 0
  if [ $? -ge 1 ]; then
    ssh -o ConnectTimeout=10 $1@$publicip -o "ProxyCommand=nc -X connect -x $proxyhost:$proxyport %h %p" 2> /dev/null && exit 0
    if [ $? -ge 1 ]; then
      ssh -o ConnectTimeout=10 $1@$publicip 2> /dev/null && exit 0
      if [ $? -ge 1 ]; then
        echo "I think your node is down"
      fi
    fi
  fi

}
-1
19.08.2019, 23:34
1 ответ

Вы можете использовать команду screen для сохранения сеансов терминала, к которым можно будет получить доступ позже. Это избавляет вас от необходимости убивать процессы, которые могут быть подключены к сеансу терминала. Итак, один из примеров того, как это полезно, — это если вы собираетесь начать передачу большого объема данных. Вы можете начать сеанс экрана, начать передачу данных, вернуться домой и вернуться по ssh к своему рабочему компьютеру, а также получить доступ к сеансу экрана без прерывания передачи

.

Для установки:

sudo apt install screenдля Ubuntu или варианта Ubuntu

yum install screenRedhat или вариант Redhat

затем вы можете запустить

screen -S <screen name>для создания нового сеанса экрана

screen -lsсписок сеансов экрана

screen -r <screen name>прикрепить к определенному экрану.

tmux постепенно заменяет команду screen, так что я бы порекомендовал изучить и это.

3
28.01.2020, 05:09

Теги

Похожие вопросы