44 votes

Emacs: Tramp ne fonctionne pas

J'ai essayé d'ouvrir un fichier distant via Emacs via Tramp.

 (require 'tramp)
(setq tramp-default-method "ssh")
 

Je reçois un message d'Emacs

Tramp: attente des invites du shell distant

Emacs a bloqué et n'a répondu à aucune action par la suite

Emacs a été installé sur Windows; le fichier distant se trouvait sur une machine Linux.

71voto

xaccrocheur Points 2083

Si votre compte utilise un peu bizarre coque fantaisie invite alors il ya une bonne chance que c'est ce qui rend clochard voyage.

Connecter en tant que root, puis entrez

PS1="> "

(c'est normal, standard shell (ZSH, BASH, younameit) invite, un clochard qui va comprendre) puis changer pour le compte de l'utilisateur, et le lancement emacs -q (assurez-vous que votre .emacs n'est pas à l'origine de ce gâchis) et essayez d' C-x C-f /sudo:root@localhost:/etc/hosts et voir ce qu'il en est.

Vous pouvez (pas recommandé) également personnaliser la regexp qui définit ce qu'clochards attend :

M-x customize-variable RET tramp-terminal-prompt-regexp

Mon approche :

  1. Assurez-vous que La variable tramp-terminal-type est réglé sur "muet"

M-x customize-variable RET tramp-terminal-type

  1. Test dans votre .*cedh et de servir la bonne invite :
case "$TERM" in
"dumb")
    PS1="> "
    ;;
xterm*|rxvt*|eterm*|screen*)
    # PS1="my fancy multi-line prompt > "
    ;;
*)
    PS1="> "
    ;;
esac

18voto

phils Points 30543

Votre Windows ssh client est la clé ici, et le 'ssh' Tramp méthode est presque certainement faux.

Si vous êtes en utilisant Cygwin, alors vous devez utiliser le "sshx " méthode", et vous avez probablement besoin d'utiliser ssh-agent pour gérer l'authentification. Les détails sont ici: À l'aide de clochard avec EmacsW32 et cygwin, possible?

J'imagine que la même chose s'applique à un stand-alone un client ssh qui ne nécessite pas un complet d'installation de Cygwin, mais n' utiliser la Dll Cygwin. (Je mentionne cela parce que je suis sûr que je me souviens d'avoir vu une telle chose.)

Si vous êtes à l'aide de Mastic alors vous voulez le "plink " méthode", comme Alex Ott souligné. Si le Wiki ne suffit pas, une recherche ici va probablement mettre en place des solutions de configuration de cette approche.

D'autres alternatives je peux vous proposer sont:

  1. Utiliser Cygwin-native Emacs. Qui sera plus lente que NTEmacs, mais Clochard semble bien fonctionner avec le " ssh "méthode", et le mot de passe, ce qui fonctionne aussi bien.

  2. L'hôte d'une machine virtuelle Linux sur votre machine Windows, et lancez Emacs sur que. C'est un assez grand cerceau pour passer au travers, mais c'est ma manière préférée de l'utilisation de Clochard lorsque vous travaillez dans Windows.

3voto

Alex Ott Points 14329

Avez-vous vérifié la solution sur le wiki Emacs ? ssh est en PATH ? Il est également recommandé d'utiliser plink sous MS Windows - voir la section "Méthodes en ligne" dans la documentation de Tramp

0voto

Adobe Points 1592

Au fait - si vous avez besoin de tramp à sudo - Vous pouvez réellement sudo sans clochard en utilisant sudoedit .

Actuellement, j'utilise cette fonction bash:

 erf () { SUDO_EDITOR="emacsclient -a emacs" sudoedit $@; }
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X