我已经从下载 |下载了 vagrant 2.2.9 64 位安装文件。流浪汉。它不是 .deb 文件,它没有任何扩展名,所以我不明白如何使用这个文件安装 vagrant。它仅在文件图标中以绿色字母显示exec。
如何使用此文件在我的 ubuntu 18.04.4 中安装 vagrant?或者有没有其他方法可以安装最新版本的 Vagrant?
我已经从下载 |下载了 vagrant 2.2.9 64 位安装文件。流浪汉。它不是 .deb 文件,它没有任何扩展名,所以我不明白如何使用这个文件安装 vagrant。它仅在文件图标中以绿色字母显示exec。
如何使用此文件在我的 ubuntu 18.04.4 中安装 vagrant?或者有没有其他方法可以安装最新版本的 Vagrant?
我正在尝试使用官方的ubuntu/focal64
Vagrant box来运行一些新的虚拟机。我已经尝试过版本v20200518.0.0
和v20200522.0.0
(我测试的最新版本)。我正在使用 Vagrant 2.2.9,并尝试使用 VirtualBox 6.0.4 和 6.1.8。
我的 Vagrantfile 非常简单:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/focal64"
config.vm.box_version = "20200522.0.0"
config.vm.define "db1" do |db1|
db1.vm.network "private_network", ip: "192.168.56.10"
end
config.vm.define "db2" do |db2|
db2.vm.network "private_network", ip: "192.168.56.11"
end
config.vm.define "app1" do |app1|
app1.vm.network "private_network", ip: "192.168.56.20"
end
end
(稍后我计划为每个盒子添加配置,但这是一个简单的测试,只是为了开始。)
问题是这些盒子无法启动。这是我得到的错误:
[ 148.806822] VFS: Cannot open root device "PARTUUID=43931bda-01" or unknown-block(0,0): error -6
[ 151.754729] Please append a correct "root=" boot option: here are the available partitions
[ 154.534996] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 157.312019] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.4.0-31-generic #35-Ubuntu
[ 159.842670] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
之后有一个堆栈跟踪,但我无法获得截图,因为盒子重启太快了。
当我尝试使用这些ubuntu/bionic64
图像时,它们工作正常。只有新focal64
图像似乎被破坏了。
如何让这些虚拟机启动?
我正在使用Vagrant。当我尝试启动它时,我遇到了这个问题(过去一年它一直在工作,不知道为什么它突然失败 - 我没有更新任何东西):
被请求支持机器“宅基地”的提供者“virtualbox”报告说它在这个系统上不可用。原因如下图:
VirtualBox 抱怨内核模块未加载。请运行
VBoxManage --version
或打开 VirtualBox GUI 以查看错误消息,其中应包含有关如何修复此错误的说明。
运行VBoxManage --version
返回:
警告:未加载 vboxdrv 内核模块。当前内核(5.3.0-26-generic)没有可用的模块,或者无法加载。请重新编译内核模块并安装它
sudo /sbin/vboxconfig You will not be able to start VMs until this problem is fixed.
6.0.10r132072
运行sudo /sbin/vboxconfig
返回:
vboxdrv.sh:停止 VirtualBox 服务。vboxdrv.sh:启动 VirtualBox 服务。vboxdrv.sh:构建 VirtualBox 内核模块。vboxdrv.sh:失败:查看 /var/log/vbox-setup.log 以找出问题所在。
设置 VirtualBox 时出现问题。要重新启动设置过程,请以 root 身份运行 /sbin/vboxconfig。如果您的系统使用 EFI 安全启动,您可能需要在加载内核模块(vboxdrv、vboxnetflt、vboxnetadp、vboxpci)之前对其进行签名。请参阅您的 Linux 系统的文档以获取更多信息。
日志文件非常大。我把它贴在这里。
有什么建议我需要做些什么来解决这个问题?
所以我在我的主机(Ubuntu 17.10)中创建了一个带有 VirtualBox + Vagrant + Ansible 的虚拟机。
Vagrant.configure("2") do |config|
config.vm.box = "centos-7.3-x86_64_latest.box"
config.vm.box_url = "http://nas.my-compamy.intern/centos-7.3-x86_64_latest.box"
config.vm.hostname = "login.my-cloud.dev"
config.vm.network "private_network", ip: "192.168.33.240"
# enable to use synced folders
# config.vm.synced_folder "/my/local/path", "/var/www/cce_login", disabled: true
config.ssh.forward_agent = true
config.ssh.keep_alive = true
config.ssh.username = "vagrant"
config.ssh.password = "vagrant"
config.vm.provider :virtualbox do |v|
# workaround as some virtualbox version seem to disconnect the NAT adapter
v.customize ['modifyvm', :id, '--cableconnected1', 'on']
v.memory = 1024
v.cpus = 2
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--name", "login.cce-cloud.dev"]
v.customize ["modifyvm", :id, "--accelerate3d", "off"]
v.customize ["modifyvm", :id, "--accelerate2dvideo", "off"]
v.customize ["modifyvm", :id, "--cpuexecutioncap", "75"]
v.customize ["modifyvm", :id, "--largepages", "on"]
end
config.vm.provision "ansible" do |ansible|
ansible.playbook = "ansible/site.yml"
ansible.verbose = "vvv"
end
end
我通过
$ vagrant up --provision
完成所有这些之后,我可以像这样通过 Vagrant 登录 SSH。
$ vagrant ssh
但是当我想从 MySQL Workbench、FTP 访问或直接 SSH 中使用它时,我得到一个错误。我什至无法ping通机器。
$ ping 192.168.33.240
PING 192.168.33.240 (192.168.33.240) 56(84) bytes of data.
From 192.168.33.1 icmp_seq=1 Destination Host Unreachable
From 192.168.33.1 icmp_seq=2 Destination Host Unreachable
From 192.168.33.1 icmp_seq=3 Destination Host Unreachable
由于我没有从 DevOps 团队更改 Vagrantfile 的权限,我认为错误一定出在我的主机配置方式中,但我似乎看不出问题出在哪里。
$ ifconfig
enxdc9b9cee07b2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.111.198 netmask 255.255.255.0 broadcast 192.168.111.255
inet6 fe80::f0ad:1d52:8e55:7fc7 prefixlen 64 scopeid 0x20<link>
ether dc:9b:9c:ee:07:b2 txqueuelen 1000 (Ethernet)
RX packets 11159 bytes 4878538 (4.8 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 8289 bytes 2106425 (2.1 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 1607 bytes 173261 (173.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1607 bytes 173261 (173.2 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vboxnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.33.1 netmask 255.255.255.0 broadcast 192.168.33.255
inet6 fe80::800:27ff:fe00:0 prefixlen 64 scopeid 0x20<link>
ether 0a:00:27:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 170 bytes 18067 (18.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
如何更改主机操作系统的配置,使其达到虚拟操作系统?
注意:这enxdc9b9cee07b2
是我的有线连接。我知道通常是这样,eth0
但我正在使用 USB 端口的适配器
更新
更多信息
我尝试在使用generic/ubuntu1604图像的 vagrant box 中安装一个 .deb 文件,但出现以下错误:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading state information... Done
A queue based service for watching directories for files to process as per its configuration.
Do you want to install the software package? [y/N]:y
(Reading database ... 108439 files and directories currently installed.)
Preparing to unpack wtbuild.deb ...
dpkg (subprocess): unable to execute new pre-installation script (/var/lib/dpkg/tmp.ci/preinst): No such file or directory
dpkg: error processing archive wtbuild.deb (--install):
subprocess new pre-installation script returned error exit status 2
Errors were encountered while processing:
wtbuild.deb
这只发生在该图像上。如果我尝试在我的 linux 机器( xenial )或另一个具有不同 linux 映像的 vagrant box 中安装相同的 .deb 文件,则 .deb 文件安装正确。
有没有办法安装比存储库中更新的版本?
Ubuntu 目前安装 vagrant 1.4.3,但我至少需要 1.5