Yavaş / kesintili bağlantılarda nasıl ssh yaparım?


20

Gerçekten yavaş bir kabuk bağlantısıyla uğraşıyorum. Bulutta ve sunucudan çok uzaktayım. İnternet bağlantım olduğu için bağlantım bazen kesiliyor ve ben de paylaşılan Wifi veya 3G kullanıyor olabilirim. Ne yazdığımı hemen görmenin bir yolu var mı? Komutları yazmaya çalışmak ve her karakteri beklemek iğrenç.


4
Bağlantıyı kestiğinizde yeniden bağlanabilmek için oturumunuzu canlı tutmak için "ekran" ı kullanın.
Konerak

Yanıtlar:


24

Mosh'u dene .

Mosh (mobil kabuk)
Dolaşım sağlayan, aralıklı bağlantıyı destekleyen ve kullanıcı tuş vuruşlarının akıllı yerel yankı ve satır düzenlemesini sağlayan uzak terminal uygulaması.

Mosh, SSH'nin yerine geçer. Özellikle Wi-Fi, hücresel ve uzun mesafe bağlantıları üzerinden daha sağlam ve duyarlı.

Mosh, GNU / Linux, FreeBSD, Solaris, Mac OS X ve Android için ücretsiz bir yazılımdır.


3
Uyarmak için uyarılar: (1) ssh'den çok daha fazla işlemci yoğun. (2) Mosh oturumunuz normal bir şekilde bitmezse, asla yeniden kurulamayacak sızdırılmış bir bağlantınız olacaktır. (Kabuk kutumu temizlemeliyim, aksi takdirde onlarca işlem olacak).
user606723

Başka bir sorun, Suse (SLES) gibi linux dağıtımına yüklenmenin neredeyse imkansız olmasıdır. Ben bir openSuse paketi olarak yüklemeye çalışırken veya kaynaktan derleme saat geçirdim.
Zombies

$ sudo zypper in mosh (belgelere göre)
dmourati

Evet, openSuse'da iyi çalışır, ancak kurumsal / kapalı bir dağıtım, yeni açık kaynak projeleri kurmak için çok görevlidir.
Zombies

10

dmourati cevap alternatif (ve aynı zamanda ek olarak): kullanım screenveya tmuxbağlantınız kesildiğine veya diğer şeyler, hayatta oturumları tutmak. (Tekrar bağlandıktan sonra oturuma yeniden bağlanır ve terminali tam ekran programlarında [vi, vb.] Olsa bile bıraktığınız gibi görürsünüz). Ayrıca başka birçok faydası da var (oturumları iş arkadaşlarıyla paylaşma, vb.)

S: Terminalimin geri kaydırma arabelleği neden eksik?

Mosh 1.2 sadece terminalin görünür durumunu senkronize eder. Mosh 1.3 tam kaydırma desteğine sahip olacak; bu konuyu ve oradan bağlantılı olanları görün. Şimdilik geçici çözüm, uzak tarafta ekran veya tmux kullanmaktır.

Ayrıca rsync, bağlantı sona erdiğinde ağ üzerinden gönderilen parçaları yeniden göndermek zorunda kalmadan dosyaları kopyalamak için de kullanmalısınız .


2

Gecikmenin / darboğazların nerede olduğunu görmelisiniz. Yerel olarak veya sağlayıcının tarafında altyapıya daha iyi erişmeye çalışmalısınız. Önemli veya kritik oturumlarınızı tmuxveya screençoklayıcıları sarıyorsunuz ...

Lütfen bize numara verin. Basit SSH oturumlarının sorun yaşaması özellikle kötü bir bağlantı gerektirir ... Dünyanın diğer tarafındaki sistemlere bir VPN üzerinden bir uçaktan erişmek zorunda kaldım ve hala çok fazla sorun yaşamadım . Bu kalıcı bir sorun mu? tracerouteSize ne anlatıyor?


Sorun çok az yönlendiriciler ve çok fazla cihaz / dizüstü bilgisayar internet erişimi paylaşımı olduğu otel wifi bir çok oluşur. Ayrıca paylaşılan otel wifi 1 veya daha fazla duvar geçmekte gerçekten ms gecikme ekler gibi doğal olarak ping kez ile crummy. Bu da bir başka büyük darboğaz. Benzer durum, cep telefonu kulesine bu kadar uzaklığın MS eklediği 3G'de ortaya çıkıyor. SSH mermileri kullanırken, her karakteri beklemek zorundayım. 200-400 MS, oldukça can sıkıcı olabilir, ancak 1 saniyeye kadar ani artışlarla ... ah.
Zombies

1

Bu konunun gelecekteki okuyucuları için blogundaki @lowellheddings'in ipucu , ekran kullanımı ile birlikte bu sorunun üstesinden gelmeye yardımcı olabilir:

Ssh istemcisini, sunucunun bağlantıyı kesmemesi için otomatik olarak her saniyede bir protokole kapalı kod kodu gönderecek şekilde yapılandırabilirsiniz. Bu ayar bazen diğer istemcilerde Canlı Tut veya Durdur-Bağlantıyı Kes-Çok Fazla olarak adlandırılır.
Aşağıdaki satırı / etc / ssh / ssh_config dosyasına ekleyin:
ServerAliveInterval 60
...

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.