Я пытаюсь выполнить простую удаленную команду ssh с моего локального компьютера на экземпляр AWS, запустив:
ssh -i /my/key.pem ec2-user@<myhost> 'ls -l'
Когда я это делаю, команда возвращается с кодом выхода 255 и оставляет процесс, зависший на экземпляре ec2. sshd: ec2-user [priv]
Если я запустил его с помощью tty
ssh -t -i /my/key.pem ec2-user@<myhost> 'ls -l'
Оно работает. Даже если 'ls -l
не требует ввода данных пользователем, почему все еще требуется tty и почему этот процесс остается зависшим?
Обычно это происходит в случаях переадресации окна X11 - не знаю, почему это произошло с ls, но установка DISPLAY помогала мне в прошлом:
DISPLAY=:0 ssh -i ...