Yanıtlar:
Evet, bazen sessiz, arka planlı bir bağlantı yapmak istersiniz, örneğin bir tünel kurarken (örn. SOCKS proxy). Bu örneklerde, işlemin bir tty'ye sahip OLMAMasını istersiniz.
Aşağıda, localhost'tan bazı uzak ana makinelere bağlantı noktası yönlendirmeyi ayarlama örneği ...
ssh -l username -fNTL 8073:server:873
Bu kurulduktan sonra, uzak ana bilgisayar yerine localhost'a rsync, dolayısıyla etkili bir şekilde, rsync'inizi ssh
...
rsync --port=8073 -a me@localhost::myStuff /tmp/myStuff/
Bunu rsync'in dışarı çıkması server
engellenmiş, ama olmasa da söylerdiniz ssh
.
Yukarıdakilere ek olarak ...
(1) Farklı tilda kaçış taşıma:
"~." Eğer bir pty (-t) varsa escape bağlantısını keser. Uzun süren bir komut için, ~ yazıyorsa birinin işlemi yanlışlıkla durdurmasını önlemek isteyebilirsiniz.
$ ssh hostname.tomontime.com -t uyku 60
[tür ~. ve bağlantı kesiliyor]
hostname.tomontime.com bağlantısı
kapatıldı.
$ ssh anamakine adı -T uyku 60
[ Yazarım
~. ve buna, uyku komutunun göz ardı ettiği normal tuş vuruşları gibi davranır.]
~.
~.
CTRL-C ile de aynı şeyi deneyin. -T ile CTRL-C'yi "uyku" ya gönderdiğinizi göreceksiniz. -T ile CTRL-C'yi makinenizde çalışan ssh programına gönderiyorsunuz. Bunun bir fark yarattığı zamanlar olabilir (yani program INT'yi HUP'tan farklı işler)
(2) Sadece pty veya ağ bağlantı etkinliğini en aza indirmek istiyorsunuz.
Pty'leri olmayan bir makineyi yeniden başlatmaya çalışırken, sistemi bir pty ayırmaya teşvik etmek istemezsiniz! Bu ayrıca kapatılması gereken ağ bağlantılarını da en aza indirir (yeniden başlatmayı geciktirir).
Bu daha hızlı ve daha güvenilir bir şekilde çalışır:
ssh -T ana bilgisayar adını yeniden başlatma
Bu sorun olabilir:
ssh -t ana bilgisayar adını yeniden başlatma
ssh -t uzak makinede sahte bir terminal oluşturur. Bu, birden fazla sunucuya ssh komutları bağlarsanız ve uzak tarafta gerçek bir terminal istiyorsanız (örneğin 'vi' kullanabilirsiniz).
Terminal varsa giriş komut dosyaları farklı davrandığında '-t' istemeyebilirsiniz. Bu kötü uygulama IMHO, ancak bir giriş komut dosyasının TTY'yi 1) istemi ayarlamadan ve 2) birçok etkileşimli uygulamaya giden yolu genişletmeden önce kontrol ettiği durumlar gördüm.
Başka bir örnekte (yukarıda TomOnTime tarafından belirtilmiştir), aslında tüm TTY'nin (ptys) tükendiği durumlarla karşılaştım. Açıkçası yanlış yapılandırma, ancak bir grup tünel ve rsync için bir kaynak çiğnemeye gerek yok.