Bir SSH sunucusuna bağlanmanın normal yolu ssh username@ip_address
. Ancak bir kullanıcı yalnızca uzak makinede bir program çalıştırmak isteyebilir. Böylece program adı normal argümandan sonra gelir ssh username@ip_address <program_name>
. Örneğin ssh username@ip_address ls
,. Bu argüman, etkileşimli programlar (kullanıcı girişini kabul etmenin yanı sıra çıktı sağlamayı da kabul eder) dışında iyidir top
. Çıktı
TERM ortam değişkeni ayarlanmadı.
bu, sshd ve üst programlar arasında hiçbir (sözde) terminalin bağlı olmadığı anlamına gelir. Çözüm, -t
tüm komutun şimdi olduğu yere argüman eklemektir ssh -t username@ip_address top
.
Benim sorum neden sshd varsayılan olarak etkileşimli olmayan programlarla iletişim kurmak için sahte bir terminal kullanamaz, bu yüzden etkileşimli programlar için -t
argüman eklemeye gerek yoktur ?
RequestTTY yes
(ya force
da config).
top
Toplu modda bile çalışabilir.