Как я могу сохранить ssh (или другую команду) в терминальном приложении моего телефона с Ubuntu?

8

При запуске приложения терминала на моем Nexus 4 (OTA 10.1) я подключаюсь к своему серверу через ssh <user>@<serverdomain>.

Переход к другому приложению и возврат к терминалу разрывают соединение:

[1]+ Stopped ssh

Как это можно сохранить и как долго?

Frunu
источник
Какой терминал для Android вы используете?
Dufte
3
В Ubuntu Touch существует фундаментальная проблема, заключающаяся в том, что фоновые приложения приостанавливаются, включая терминал. Это приводит к разрыву соединений ssh. Тем не менее, это [1]+ Stopped sshозначает, что он только приостановлен, поэтому вы можете возобновить эту работу, используя fg. Однако существует риск, что соединение будет разорвано.
Дженс Гриволла
Это терминальное приложение: uappexplorer.com/app/com.ubuntu.terminal
Фруну,
Команда fg - это то, что мне нужно.
Фруну

Ответы:

11

Этот пост посвящен серверной части - игнорируя клиента

Вариант 1 - экран

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

Некоторые подробности о терминальном мультиплексоре screenможно найти здесь .

Короче говоря:

  • установить экран на сервер
  • SSH на сервер
  • запустить экран и запустить команду внутри экранной сессии
  • ... представьте себе отключение с мобильного на сервер по любой причине
  • переподключиться с мобильного на сервер
  • повторно присоединиться к этому сеансу экрана и наслаждаться текущим процессом

Вариант 2 - Tmux

tmuxЭто еще один терминальный мультиплексор, вы можете проверить некоторые детали через его man-страницу .

Вариант 3 - бёбу

byobuэто обертка, которая обеспечивает различные улучшения по сравнению с экраном. Используется screenили tmuxкак бэкэнд. Более подробная информация на веб-странице .

dufte
источник
Хотя это не совсем ответ на вопрос, это очень хороший совет, не только при использовании Ubuntu Touch. Это очень помогает смягчить последствия отключений, будь то из-за проблем с сетью, выключения вашего клиентского устройства и т. Д.
Дженс Гриволла
И есть Бёбу, который может обернуть экран или tmux
ryenus
Да. Хороший совет. Я уже использовал экран несколько лет назад и проверю его снова.
Фруну
2

Вы можете использовать приложение TweakGeek . В меню Приложения вы найдете Терминал. Там вы можете активировать переключатель под названием Предотвращение приостановки.

Я попытался подключиться к SSH от терминала телефона Ubuntu к ноутбуку, переключил приложение, переключился обратно, и соединение было еще живым.

Это должно сработать, но, как отмечалось в других ответах, мобильный телефон в любом случае может не дать вам лучшего опыта SSH.

Бастиан
источник
Не могли бы вы предоставить ссылку на TweakGeek или некоторую информацию о том, как его установить? Это не похоже на обычный магазин приложений (но, видимо, на OpenStore).
Дженс Гриволла
Действительно, я установил его через OpenStore.
Бастиан
1

Есть большая проблема, ждущая вас, когда вы преодолеете это.

Ранее в этом году существовала поддержка автоматического восстановления мгновенно прерванных ssh-соединений, но было установлено, что оно очень небезопасно и удалено. Это будет означать, что такие устройства, как мобильные телефоны, которые могут разрывать соединения или переключать маршруты, теперь будут менее полезны для ssh.

Вот рекомендации https://www.qualys.com/2016/01/14/cve-2016-0777-cve-2016-0778/openssh-cve-2016-0777-cve-2016-0778.txt

Амиас
источник