Нормальним способом підключення до SSH-сервера є ssh username@ip_address. Але користувач може захотіти запустити програму лише на віддаленій машині. Отже, назва програми слідує після звичайного аргументу, який є ssh username@ip_address <program_name>. Наприклад, ssh username@ip_address ls. Цей аргумент чудовий, за винятком інтерактивних програм (які також приймають введення користувачів, а також надають вихід), наприклад top. Вихід є
Змінна середовища TERM не встановлена.
а це означає, що жоден (псевдо-) термінал не приєднаний між програмами sshd та top. Рішення полягає в тому, щоб додати аргумент -tтам, де тепер стає вся команда ssh -t username@ip_address top.
Моє запитання: чому за замовчуванням sshd не може також використовувати псевдотермінал для спілкування з неінтерактивними програмами, тому немає необхідності додавати -tаргументи для інтерактивних програм?
RequestTTY yes(або force) у своєму конфігурації.
topможе працювати в пакетному режимі.