O Vagrant ssh não exibe o prompt de comando

6

Eu tenho um computador que roda o Windows 8.1 e, para alguns projetos, uso o Vagrnat e o VirtualBox; no entanto, depois de atualizar o VirtualBox e o Vagrant, depois de executar o Vagrant ssh, o vagrant não exibe o prompt de comando. Eu pensei que pode ser que é um problema relacionado com caixas antigas, então eu criei uma nova VM, mas os resultados são os mesmos.

Você poderia dar uma olhada e me dar uma ideia sobre como posso resolver esse problema?

    
por John 10.07.2017 / 16:50

2 respostas

5

Eu tenho o mesmo problema no Windows 10 Home 64bit com Creators Update, Vagrant 1.9.6, VirtualBox 5.1.22r115126 e Cygwin. Seguindo link eu li que isso pode acontecer com o cygwin / babun / gitbash, mas não com o prompt do cmd.

Então inicializei outra caixa com o prompt cmd do Windows e sim, eu posso confirmar que depois do ssh vagrant up e vagrant você está recebendo o prompt dentro da sua caixa. Não ideal, mas viável por enquanto.

Não tenho certeza do que está causando isso, já que não atualizei o cygwin por muito tempo, e ele estava trabalhando com o Vagrant 1.9.6.

Em vez de usar o prompt do Windows cmd, atualizar para o Vagrant 1.9.7 também corrige esse problema, pelo menos para mim:)

    
por 14.07.2017 / 14:57
4

Estou executando um ambiente de desenvolvimento do Windows 10 (cygwin / babun + mintty) e tive o mesmo problema após atualizar o Vagrant. Embora eu não tenha encontrado uma solução para o problema usando o ssh vagante, encontrei uma solução alternativa.

Acontece, eu sou capaz de ssh nos ambientes virtuais normalmente. Olhe para o endereço IP atribuído no seu Vagrantfile, digamos, 172.0.0.101. Se você usar o comando:

ssh [email protected]

você deve ser capaz de inserir a senha "vagrant" (padrão para caixas vagantes) e usar as máquinas normalmente. No meu entender, isso tem algo a ver com a passagem da interface TTY para a janela do terminal. Versões anteriores de "vagrant ssh" usavam o ssh que estava no caminho do host, mas parece que as versões mais novas têm uma versão do ssh embedded que não funciona muito bem com ambientes Windows (isso é da minha experiência e pesquisa limitada ontem).

Se você deseja acessar sem usar uma combinação de nome de usuário / senha, também há uma solução rápida. Eu criei a seguinte função no meu arquivo .babunrc, embora eu imagine que qualquer .bashrc ou .bash_profile funcionaria:

# Vagrant ssh-config to file
function devConfig () {
    vagrant ssh-config > "PATH TO YOUR SSH CONFIG FILE"
}

Isso permite que você reconfigure sua configuração toda vez que você passar por cima das caixas do Vagrant. Observe que isso sobrescreverá qualquer configuração que você tenha atualmente configurada. Você pode alternar para o acréscimo usando "> >", no entanto, você terminará com um arquivo de configuração enorme se estiver rolando seus ambientes de desenvolvimento com frequência. Obviamente, essa não é uma solução que funcione para todos.

Independentemente disso, é super curioso que as versões mais novas incluam este pacote ssh que não pode passar pelo TTY. Eu não sou um usuário strong o suficiente para entender o porquê, mas pelo menos o problema pode ser identificado.

Espero que ajude.

    
por 13.07.2017 / 16:22