Попробуйте установить это как-нибудь в своей среде:
export CVS_RSH='ssh -o PreferredAuthentications="password"'
Это должно заставить его прекратить попытки аутентификации publickey, что также подавит отображение графического ssh-askpass. Это работает путем указания команды SSH, которую CVS будет использовать для подключения к удаленному серверу. Обратите внимание, что это будет применяться ко всем командам CVS, запускаемым из контекста, в котором вы устанавливаете переменную среды.
Возможно, вы также захотите настроить его в ~/.ssh/config
. Вы можете установить параметры для каждого хоста отдельно. Вот страница, которая примерно показывает, как , хотя для принудительной аутентификации publickey. Обратите внимание, что это повлияет на использование SSH для вашей учетной записи пользователя, а не только для CVS. Это вполне может быть то, что вы ищете, так как вы предпочитаете избегать аутентификации publickey. Вот пример блока, который вы добавили бы в ~/.ssh/config
:
Host cvs
Hostname cvs.your.corp
User yourCVSusername
PreferredAuthentications password
Кроме того, вы можете изменить Host cvs
на Host cvs.your.corp
, если ваши существующие средства доступа к нему используют полное доменное имя, а не просто имя хоста.
Наконец, вы можете получить файл ~/.ssh/config
только одной строкой (или добавить его в начало существующего):
PreferredAuthentications password
Это позволит применить это правило ко всем SSH-соединениям с удаленными хостами.
Удачи. Я надеюсь, что это выведет вас из модальной диалоговой ловушки.