Я имею дело с очень медленным соединением оболочки. Он находится в облаке, и я очень далеко от сервера. Мое соединение также иногда прерывается, поскольку оно осуществляется через Интернет, и я также могу использовать общий Wi-Fi или 3G. Есть ли способ сразу увидеть, что я печатаю? Пытаться набирать команды и ждать каждого персонажа - это ужасно.
Пытаться Mosh.
Mosh (мобильная оболочка)
Приложение удаленного терминала, которое допускает роуминг, поддерживает прерывистое соединение и обеспечивает интеллектуальное локальное эхо и редактирование строк нажатия клавиш пользователем.Mosh - это замена SSH. Он более надежен и отзывчив, особенно при использовании Wi-Fi, сотовой связи и междугородних соединений.
Mosh - бесплатное программное обеспечение, доступное для GNU / Linux, FreeBSD, Solaris, Mac OS X и Android.
альтернатива (а также в дополнение) к ответу dmourati: используйте screen
или tmux
или другие вещи, чтобы поддерживать сеансы в рабочем состоянии, когда вы отключены. (Вы просто повторно подключаетесь к сеансу после повторного подключения и видите терминал таким, каким вы его оставили, даже с полноэкранными программами [vi и т. Д.]). У него также есть много других преимуществ (совместное использование сеансов с коллегами и т. Д.) (Как и в собственном FAQ Моша, в котором говорится:
В: Почему буфер обратной прокрутки моего терминала не заполнен?
Mosh 1.2 синхронизирует только видимое состояние терминала. Mosh 1.3 будет иметь полную поддержку прокрутки; см. этот выпуск и другие связанные оттуда. На данный момент обходной путь - использовать screen или tmux на удаленной стороне.
И вы также должны использовать rsync
для копирования файлов без необходимости повторно отправлять уже отправленные части по сети, когда соединение прерывается.
Вы должны увидеть, где находится задержка / узкие места. Вам следует попытаться получить лучший доступ к инфраструктуре ... либо локально, либо на стороне провайдера. Вы завершаете свои важные или критические занятия в tmux
или screen
мультиплексоры ...
Пожалуйста, дайте нам цифры. Для простых сеансов SSH требуется особенно плохое соединение, чтобы иметь проблемы ... Мне приходилось получать доступ к системам на другом конце света из самолет через VPN и до сих пор не имел особых проблем. Это постоянная проблема? Что значит traceroute
сказать тебе?
Для будущих читателей этой темы совет @lowellheddings в его блог, вместе с использованием экран, может помочь решить эту проблему:
Вы можете настроить ssh-клиент так, чтобы он автоматически отправлял код отказа от протокола каждые несколько секунд, чтобы сервер не отключал вас. В других клиентах этот параметр иногда называют Keep-Alive или Stop-Disconnecting-So-Much.
Добавьте следующую строку в файл / etc / ssh / ssh_config:
ServerAliveInterval 60
...