SSH erreur lors de l'exécution d'une commande à distance: “stdin: n'est pas un tty”
Je suis en train d'essayer de se connecter à une machine en ssh, puis vous connecter à une autre machine deux avec ssh. Mais ce message d'erreur:
ssh user@computerone.com 'ssh [email protected]'
stdin: is not a tty
- Essayez d'ajouter
-t
drapeau à premièressh
. Par ailleurs, depuis que votre question n'est pas liée à la programmation, il peut être plus approprié dans le superuser.com - Vous avez raison. Avec l'option-t de l'exécuter.
Vous devez vous connecter pour publier un commentaire.
Lors de l'enregistrement dans un shell, l'hôte distant suppose que la connexion est faite par un utilisateur humain. Par conséquent, il est raisonnable de s'attendre à ce qu'ils ont le contrôle sur la standard dans sur le client. C'est-à-dire, l'utilisateur est donner son avis sur un terminal par l'intermédiaire du clavier. Si l'hôte distant détecte que l'utilisateur n'est pas humain (parce que l'entrée n'est pas un terminal tty, mais un autre processus), il peut avertir l'utilisateur à propos de cette condition inattendue.
Une démonstration d'inconduite et comment l'éviter (
man ssh
et recherchez -t pour une explication plus approfondie)....et l'erreur:
Vous pouvez faire un tunnel à la place:
Puis, sur un autre terminal:
Utiliser les adresses IP, tel que 192.168.0.11 si le serveur DNS alias ne sont pas configurés sur l'extrémité distante.