2012-03-28 2 views
12

Я думаю, что это очень простой вопрос в использовании tramp, но это не работает для меня. У меня есть файл ~/.ssh/конфигурации, который указывает на мой Amazon EC2 машинаРежим Tramp в emacs с использованием конфигурации ssh

Host amazon 
    Hostname xxxx.amazonaws.com 
    Port yyy 
    User me 
    IdentityFile ~/.ssh/ubuntu 
    ForwardAgent yes 

Я могу легко сделать SSH амазонку из моего терминала, и я иду на Amazon EC2 (так что мой конфиг правильно), но в Emacs я:

C-x C-f /ssh1:amazon: 

Я всегда получаю эту ошибку В Aquamacs:

Process *tramp/ssh1 amz* exited abnormally with code 255 

В Emacs:

tramp: Opening connection at amz using ssh1... 
tramp: Waiting for prompts from remote shell 
tramp: Waiting 60s for prompt from remote shell 
tramp-process-actions: Login failed 

У меня также есть другие конфигурации ssh, которые они ssh для моих виртуальных ящиков на моей локальной машине, и у них такая же проблема.

Я очень ценю любую помощь.

+0

Это стоит посмотреть на 'человека ssh_config' – DJJ

ответ

8

Метод tramp ssh1 заставляет ssh запускаться в режиме протокола ssh v1 с параметром -1. ssh v1 имеет слабые места и не уверен. Следовательно, многие сайты отключают протокол ssh v1.

Вы можете проверить это из оболочки с помощью ssh -1 [email protected].

Пробуйте другие способы соединения бродяг как ssh, sftp или scpx. Вы можете просмотреть все предварительно настроенные методы подключения с помощью C-h v tramp-methods.

+0

Спасибо вам, где право амазонка не принимает SSH -1, но он принимает SSH-2, и я до сих пор та же проблема. По крайней мере, теперь я не делаю ssh1 :) – Matilda

6

Если ответ Moritz Bunkus не решает проблему, то вы можете настроить подробность вывода бродяга с
Mxcustomize-variableRETtramp-verboseRET

В частности, уровень 6 «отправлен и полученные строки ", которые могут помочь вам определить, является ли« Ожидание запросов от удаленной оболочки », потому что он не получает шаблон запроса, который он распознает, или из-за более значительного отказа.

Если это просто получение приглашения, которое оно не распознает, вы можете посмотреть, как настроить переменныеили tramp-shell-prompt-pattern.

(. Конечно, если ваш SSH агент работает правильно, то войти в систему подсказок не должны быть актуальными)

Если вы используете Emacs в Windows, а затем также увидеть эти Q & как:

+0

, поэтому выглядит, что уровень tramp verbose равен 9 на моих emacs, поэтому он довольно высок. Я запустить его с ssh2 и я получаю Загрузки бродяги ... сделано бродяги: подключение Открытия в ssh2 используя ноль ... бродяги: В ожидании приглашения от удаленной оболочки бродяги: Waiting 60s для запроса от удаленной оболочки бродяги-процесс -actions: Ошибка входа hmm любые другие идеи? – Matilda

+0

Если удаленное приглашение не найдено, у меня часто возникают проблемы с типом запуска оболочки, с другой стороны. Насколько я знаю, tramp всегда выполняет команды с удаленной оболочкой '/ bin/sh'. Теперь '/ bin/sh' может быть символической ссылкой практически на любую совместимую с POSIX оболочку, а текущие дистрибутивы на основе Debian/Ubuntu часто используют' dash' вместо 'bash'. Известно, что 'zsh' и' bash' создают проблемы, если вы используете удобные подсказки. Мой совет: 1. Если '/ bin/sh' является символической ссылкой на' dash', попробуйте изменить это на 'bash'. 2. Если переменная 'TERM' равна' dumb', тогда не устанавливайте приглашение в ваших RC-файлах. –

25

Одна вещь, которую стоит попробовать это с помощью sshx способ подключения. Это приводит к тому, что tramp пытается избежать любой нестандартной конфигурации оболочки на удаленном хосте.

Как это:

C-x C-f /sshx:amazon: 
+0

Ницца, это решило это для меня в любом случае – ocodo

+1

Почему ssh/sshx не меняются местами, я никогда не пойму. –

 Смежные вопросы

  • Нет связанных вопросов^_^