1

Я недавно установил Emacs 24.4 через homebrew через команду

brew install emacs --cocoa

Мне нужно отредактировать файлы в удаленном кластере с двухэтапной аутентификацией. Для этого я сохраняю учетные данные для входа в удаленный кластер через ControlMaster в ~/.ssh/config как

Host *
ForwardAgent yes
ControlMaster auto
ControlPath ~/.ssh/%r@%h:%p
ServerAliveCountMax=30
ServerAliveInterval=5

Однако, когда я пытаюсь редактировать файлы удаленного кластера через Tramp как

/ssh:username@remotecluster:~/filename

emacs зависает с сообщением в ожидании запросов от удаленной оболочки, которое показывает, что tramp НЕ распознает информацию о конфигурации ssh.

Я предоставил вариант

(setq tramp-verbose 500)

в ~/.emacs и я получил следующее сообщение в буфере отладки tramp, который повторяется снова и снова.

Сообщение об ошибке:

    14:19:45.324180 tramp-file-name-handler (1) # Suppress received in operation (file-exists-p
    14:19:45.324396 tramp-get-file-property (8) #  file-truename nil
    14:19:45.324550 tramp-flush-directory-property (8) # 
    14:19:45.324713 tramp-get-connection-property (7) # process-name nil
    14:19:45.324897 tramp-flush-connection-property (7) # [ssh username remotecluster nil nil] nil
    14:19:45.325106 tramp-get-connection-property (7) # process-buffer nil
    14:19:45.325306 tramp-get-file-property (8) # / file-truename nil
    14:19:45.325462 tramp-flush-file-property (8) # /
    14:19:45.325863 tramp-get-connection-property (7) # ~ undef
    14:19:45.326046 tramp-get-connection-property (7) # process-name nil
    14:19:45.326224 tramp-get-connection-property (7) # process-name nil
    14:19:45.326376 tramp-get-connection-property (7) # process-buffer nil

Примечание: следуя той же процедуре, я не сталкиваюсь с проблемой использования tramp в emacs 24 в Ubuntu 14.04.

2 ответа2

0

"Ожидание подсказок от удаленной оболочки"

Здесь есть и другие возможности. Ваше приглашение может не совпадать с tramp-shell-prompt-pattern Вы можете опубликовать значения tramp-shell-prompt-pattern и tramp-password-prompt-regexp . Недавно я добавил пароль для использования двухфакторной аутентификации.

(setq tramp-password-prompt-regexp
 (concat
  "^.*"
  (regexp-opt
   '("Passphrase" "passphrase"
     "Password" "password"
     "Passcode" "passcode) t)
  ".*:\0? *"))

Мне также любопытно, если у вас есть мастер управления на работу.

0

Для дальнейшего анализа необходимо изучить весь буфер отладки. Настройка tramp-verbose на 500 выглядит впечатляюще, уже достаточно значения 10 :-)

Вы можете отправить мне буфер отладки прямо на электронную почту для анализа. Или используйте список рассылки Tramp.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .