Если учетная запись, к которой вы подключаетесь, использует какое-то странное необычное приглашение оболочки, то есть большая вероятность, что это то, что делает путешествие бродягой.
Войдите в систему как пользователь root, затем введите
PS1="> "
(это обычная стандартная оболочка (ZSH, BASH, younameit), которую tramp
поймет)
затем переключитесь на учетную запись пользователя и запустите emacs -q
(чтобы убедиться, что ваш .emacs
не вызывает этот беспорядок) и попробуйте C-x C-f /sudo:root@localhost:/etc/hosts
и посмотрите, что к чему.
Вы также можете (не рекомендуется) настраивать регулярное выражение, определяющее, что ожидает бродяга:
M-x customize-variable RET tramp-terminal-prompt-regexp
Мой подход:
- Убедитесь, что для переменной
tramp-terminal-type
установлено значение "немой"
M-x customize-variable RET tramp-terminal-type
- Проверьте это в своем. * Shrc и подайте правильное приглашение:
case "$TERM" in
"dumb")
PS1="> "
;;
xterm*|rxvt*|eterm*|screen*)
PS1="my fancy multi-line \n prompt > "
;;
*)
PS1="> "
;;
esac