无法通过 ssh 进入新创建的 vagrant box
Cannot ssh into newly created vagrant box
刚刚用最小的 centos 7 创建了一个新的 vagrant box。
我遵循了本指南。 https://blog.engineyard.com/2014/building-a-vagrant-box
此外,我已经按照官方 vagrant 指南中提到的一切就绪 here and here
然而,当我尝试做 vagrant up 时。尝试通过 ssh 进入该框时超时。
这可能是什么原因造成的?
我在 VM 中的网络适配器是 NAT。
我尝试设置私网ip
config.vm.network "private_network", ip: "192.168.50.4"
我能够使用此 ip 和 vagrant 作为用户名和密码进行 ssh。我想知道为什么 vagrant 不能 ssh?
这是 vagrant up
的输出
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'my'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: my_box_default_1475351710988_24744
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
然后过了很长时间它给出了这个错误。
Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.
If you look above, you should be able to see the error(s) that
Vagrant had when attempting to connect to the machine. These errors
are usually good hints as to what may be wrong.
If you're using a custom box, make sure that networking is properly
working and you're able to connect to the machine. It is a common
problem that networking isn't setup properly in these boxes.
Verify that authentication configurations are also setup properly,
as well.
If the box appears to be booting properly, you may want to increase
the timeout ("config.vm.boot_timeout") value.
使用以下命令设置 ssh 密钥
mkdir -p /home/vagrant/.ssh
chmod 0700 /home/vagrant/.ssh
wget --no-check-certificate https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub -O /home/vagrant/.ssh/authorized_keys
chmod 0600 /home/vagrant/.ssh/authorized_keys
chown -R vagrant:vagrant /home/vagrant/.ssh
1.8.5 中有一个错误可以解释这一点。
你能升级到 1.8.6 吗?
您尝试过使用
vagrant ssh
这可能会对某人有所帮助。
尝试 运行ning ip addr
命令,如果网络接口没有分配 IP 地址,则需要将 ONBOOT
设置为 yes
。
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
然后把ONBOOT=no
改成ONBOOT=yes
重新启动机器并运行 ip addr
确保网络正常启动并为网络接口分配IP地址。
刚刚用最小的 centos 7 创建了一个新的 vagrant box。
我遵循了本指南。 https://blog.engineyard.com/2014/building-a-vagrant-box
此外,我已经按照官方 vagrant 指南中提到的一切就绪 here and here
然而,当我尝试做 vagrant up 时。尝试通过 ssh 进入该框时超时。
这可能是什么原因造成的? 我在 VM 中的网络适配器是 NAT。 我尝试设置私网ip
config.vm.network "private_network", ip: "192.168.50.4"
我能够使用此 ip 和 vagrant 作为用户名和密码进行 ssh。我想知道为什么 vagrant 不能 ssh?
这是 vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'my'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: my_box_default_1475351710988_24744
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
然后过了很长时间它给出了这个错误。
Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.
If you look above, you should be able to see the error(s) that
Vagrant had when attempting to connect to the machine. These errors
are usually good hints as to what may be wrong.
If you're using a custom box, make sure that networking is properly
working and you're able to connect to the machine. It is a common
problem that networking isn't setup properly in these boxes.
Verify that authentication configurations are also setup properly,
as well.
If the box appears to be booting properly, you may want to increase
the timeout ("config.vm.boot_timeout") value.
使用以下命令设置 ssh 密钥
mkdir -p /home/vagrant/.ssh
chmod 0700 /home/vagrant/.ssh
wget --no-check-certificate https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub -O /home/vagrant/.ssh/authorized_keys
chmod 0600 /home/vagrant/.ssh/authorized_keys
chown -R vagrant:vagrant /home/vagrant/.ssh
1.8.5 中有一个错误可以解释这一点。
你能升级到 1.8.6 吗?
您尝试过使用
vagrant ssh
这可能会对某人有所帮助。
尝试 运行ning ip addr
命令,如果网络接口没有分配 IP 地址,则需要将 ONBOOT
设置为 yes
。
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
然后把ONBOOT=no
改成ONBOOT=yes
重新启动机器并运行 ip addr
确保网络正常启动并为网络接口分配IP地址。