Question Le démarrage de programmes distants / basés sur des terminaux via ssh donne une erreur (Erreur lors de l'ouverture du terminal: inconnu).


Je lance directement une commande / script distant sur un serveur Ubuntu avec la commande suivante:

ssh me@server 'nano my_file.txt'

Cependant, cela génère une erreur:

Error opening terminal: unknown.

Un autre exemple, appelant un script distant contenant le nano commande d'en haut donne la même erreur.

ssh me@server 'open_nano.sh'

Quand je fais ssh me@server 'echo something', Je reçois something comme prévu.

Qu'est-ce qui ne va pas?


4
2018-03-13 12:26


origine




Réponses:


Vous devrez utiliser le -t drapeau.

Exemples:

 ssh -t me@server 'nano my_file.txt'
 ssh -t me@server 'open_nano.sh'

Explication de man ssh:

 -t      Force pseudo-tty allocation.  This can be used to execute arbi‐
         trary screen-based programs on a remote machine, which can be
         very useful, e.g. when implementing menu services.  Multiple -t
         options force tty allocation, even if ssh has no local tty.

6
2018-03-13 12:26