Я знаю, что это старый вопрос, но я счел важным добавить свои выводы на тот случай, если кто-то еще столкнется с этим, как я.
Я не видел никаких необычных последствий для этого, да, но это то, что я использовал, и это сработало потрясающе. Иногда, когда мы запускаем длинные процессы на нашем сервере, он иногда отключает сеанс ssh. Кажется, что процесс вместе с tty-сеансом продолжает работать, но мы не можем повторно подключиться к нему. Я нашел программу ниже, чтобы перенести процесс на вновь подключенный сеанс.
https://github.com/nelhage/reptyr
Здесь '
Сначала попробуйте: , чтобы узнать, какой бродячий закрытый ключ в конфигурации вашего компьютера
$ vagrant ssh-config
Пример:
$ vagrant ssh-config
Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/Users/konst/.vagrant.d/insecure_private_key
IdentitiesOnly yes
LogLevel FATAL
Во-вторых, делать: Измените содержимое файла insecure_private_key на содержимое закрытого ключа собственной системы
config.vm.boot_timeout
- Время в секундах, которое Бродяга будет ждать загрузки машины и быть доступным. По умолчанию это 300 секунд.
Я бы увеличил это время до тех пор, пока вы не сможете бродяжничать по SSH в.
.Попробуйте открыть порт 22 на брандмауэре.
Используя Oracle VM VirtualBox Manager, запустите ВМ напрямую. или
добавьте это в свой Vagrantfile
config.vm.provider :virtualbox do |vb|
vb.gui = true
end
и запустите "vagrant up"
login, используя бродячие учетные данные по умолчанию
user: vagrant
pass: vagrant
добавьте правило брандмауэра
sudo ufw allow 22
Попробуйте сгенерировать insecure_private_key
Я решил эту проблему, удалив insecure_private_key
, находится в папке ~ / .vagrant.d
, возможно, причина в том, что файл insecure_private_key
старый
Я только что решил аналогичную проблему.
Проблема : время ожидания команды для входа в гостевую среду разработки, vagrant ssh
, истекло. Обычно он отлично работает на другом хост-компьютере.
Этапы отладки:
В Vagrantfile я включил графический интерфейс Virtualbox (как рекомендовано в другом ответе), чтобы узнать, что является причиной тайм-аута. Ubuntu запрашивал логин и пароль, чего не следовало делать, потому что вместо этого он должен был использовать ключ ssh.
Вместо того, чтобы запускать vagrant ssh
, я много раз запускал эквивалентную команду ssh, добавляя и удаляя различные параметры ssh. Одно из сообщений об ошибке тайм-аута гласило: «Не удалось войти на [example.com]»… что не имеет смысла, потому что эта проблема не имеет ничего общего с [example.com].
Так что это побудило меня взглянуть на .ssh / config, где [example.com] может иметь некоторое значение.
Основная причина : В .ssh / config случайно была запись без установленного Host
. Следовательно, он применял это правило конфигурации ко всем всем вызовам ssh, включая vagrant ssh
(который является просто ярлыком для более длинной команды ssh).
Решение : Сделать убедитесь, что для каждой записи .ssh / config установлен Host
.
У меня была такая же проблема. Я удалил все из SystemPrefereces-> Security-> Firewall и удалил все службы из SystemPreferences-> Shared. Затем я снова включил удаленный вход. Это устранило проблему в моем случае. Если это не решит вашу проблему, вы можете посетить этот сайт и проверить его самостоятельно. (ServerFaqs)
У меня возникла аналогичная проблема. Вот что я сделал.
ssh-add ~ / .vagrant.d / insecure_private_key
config.vm.boot_timeout = 600
в мой ~ / Homestead / Vagrantfile
Теперь все работает нормально.
попробуйте включить графический интерфейс виртуального бокса, как описано в этом сообщении Время ожидания зависшего соединения Vagrant и выполните шаги в комментариях.
если это не сработает, попробуйте добавьте эту модификацию в свой vagrantfile:
создайте файл с именем "script.sh", который содержит следующие команды:
mkdir /home/vagrant/.ssh
wget --no-check-certificate -O authorized_keys 'https://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub'
mv authorized_keys /home/vagrant/.ssh
chown -R vagrant /home/vagrant/.ssh
chmod -R go-rwsx /home/vagrant/.ssh
затем добавьте это в свой vagrantfile:
# running script shell
config.vm.provision :shell, :path => "script.sh"
Вам необходимо включить графический интерфейс. Удалите комментарий к этим строкам в файле Vagrant
:
config.vm.provider :virtualbox do |vb|
vb.gui = true
end
После того, как вам нужно выключить компьютер и начать заново:
vagrant halt
vagrant up
Эта проблема может быть вызвана множеством факторов, включая ситуацию, когда ящик виртуальной машины зависает в ожидании ответа от пользователя. Однако общей проблемой было несоответствие между закрытым ключом и открытым ключом. Чтобы исправить эту проблему, вам необходимо предоставить файл закрытого ключа на вашем хост-компьютере, который соответствует файлу открытого ключа на виртуальной машине. Я разместил решение с 3 дополнительными подходами в нашем блоге здесь ...
Как я исправил:
в бродячем файле, включил/выключил световые сигналы ...
config.vm.network "private_network", ip: "192.168.33.10"
...
config.vm.network "public_network"
Это работает для меня:
/etc/rc.local
включить строку sh /etc/init.d/networking restart
непосредственно перед exit 0
https: // github. com / mitchellh / vagrant / issues / 391 # issuecomment-2078383
Тайм-аут SSH-соединения во время фазы загрузки может произойти по разным причинам, например:
sshd
неправильная конфигурация, config.vm.boot_timeout
период времени слишком низко (что у вас нормально),Для устранения проблемы запустите ее как:
VAGRANT_LOG=debug vagrant up
Если нет ничего очевидного, попробуйте подключиться к нему с другого терминала с помощью бродяги ssh
или:
vagrant ssh-config > vagrant-ssh; ssh -F vagrant-ssh default
Если SSH все еще не работает, повторно запустите его с графическим интерфейсом (например, config.gui = true
).
Если это не так проверьте запущенные процессы (например, с помощью: vagrant ssh -c 'pstree -a'
) или проверьте свой sshd_config
.
Если это одноразовая виртуальная машина, вы всегда можете уничтожить
его и вверх
снова. Также подумайте об обновлении Vagrant и Virtualbox.