在 CentOS 7 上安装 VirtualBox

使用 ssh 作为 root 用户连接到 vagrant-01.onitroad.com。

使用 yum 命令安装必备软件包。

[root@vagrant-01 ~]# yum install -y kernel-devel-$(uname -r) kernel-headers gcc make perl wget

我们在上面的 yum 命令中使用了 $(uname -r)。
它需要一些澄清。

vboxdrv.service 需要与运行内核相同的内核开发模块。
否则,安装 vboxdrv.service 后会出现以下错误。

[root@vagrant-01 ~]# tail /var/log/messages
Jun 16 11:22:05 vagrant-01 vboxdrv.sh: Building VirtualBox kernel modules.
Jun 16 11:22:06 vagrant-01 vboxdrv.sh: This system is currently not set up to build kernel modules.
Jun 16 11:22:06 vagrant-01 vboxdrv.sh: Please install the Linux kernel "header" files matching the current kernel
Jun 16 11:22:06 vagrant-01 vboxdrv.sh: for adding new hardware support to the system.
Jun 16 11:22:06 vagrant-01 vboxdrv.sh: The distribution packages containing the headers are probably:
Jun 16 11:22:06 vagrant-01 vboxdrv.sh: kernel-devel kernel-devel-3.10.0-957.el7.x86_64
Jun 16 11:22:06 vagrant-01 systemd: vboxdrv.service: control process exited, code=exited status=1
Jun 16 11:22:06 vagrant-01 systemd: Failed to start VirtualBox Linux kernel module.
Jun 16 11:22:06 vagrant-01 systemd: Unit vboxdrv.service entered failed state.
Jun 16 11:22:06 vagrant-01 systemd: vboxdrv.service failed.

因此,我们使用 $(uname -r) 命令将内核版本后缀为 yum 命令以获得所需的结果。

VirtualBox 是一个免费的开源管理程序,由 Oracle Corporation 开发。

VirtualBox 的 yum 存储库配置可在 VirtualBox 官方下载页面获得。

因此,我们将首先在 CentOS 7 服务器中添加 VirtualBox 的 yum 存储库,然后我们将使用 yum 命令安装 VirtualBox。

首先,我们必须在我们的 CentOS 7 服务器中导入 Oracle 公钥。

下载 Oracle 公钥如下。

[root@vagrant-01 ~]# cd /tmp
[root@vagrant-01 tmp]# wget https://www.virtualbox.org/download/oracle_vbox.asc

在我们的 CentOS 7 服务器中导入 Oracle 公钥。

[root@vagrant-01 tmp]# rpm --import oracle_vbox.asc

在我们的 CentOS 7 服务器中下载并添加 VirtualBox yum 存储库。

[root@vagrant-01 tmp]# wget https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo -O /etc/yum.repos.d/virtualbox.repo

为新添加的存储库构建 yum 缓存。

[root@vagrant-01 tmp]# yum makecache fast

使用 yum 命令在 CentOS 7 上安装 VirtualBox。

[root@vagrant-01 tmp]# yum install -y VirtualBox-6.0

vboxdrv.service 由 VirtualBox 安装过程自动启用和启动。

检查 vboxdrv.service 的状态。

[root@vagrant-01 tmp]# systemctl status vboxdrv.service
-> vboxdrv.service - VirtualBox Linux kernel module
   Loaded: loaded (/usr/lib/virtualbox/vboxdrv.sh; enabled; vendor preset: disabled)
   Active: active (exited) since Sun 2019-06-16 11:28:47 PKT; 10min ago
  Process: 39778 ExecStart=/usr/lib/virtualbox/vboxdrv.sh start (code=exited, status=0/SUCCESS)
Jun 16 11:27:27 vagrant-01.onitroad.com systemd[1]: Starting VirtualBox Linux ...
Jun 16 11:27:27 vagrant-01.onitroad.com vboxdrv.sh[39778]: vboxdrv.sh: Startin...
Jun 16 11:27:27 vagrant-01.onitroad.com vboxdrv.sh[39778]: vboxdrv.sh: Buildin...
Jun 16 11:28:47 vagrant-01.onitroad.com systemd[1]: Started VirtualBox Linux k...
Hint: Some lines were ellipsized, use -l to show in full.
在 CentOS 7 上使用VirtualBox安装 Vagrant

Vagrant 是一个开源软件,用于轻松配置虚拟软件开发环境。

称为 Vagrant box 的虚拟环境本质上是可移植的,可以在许多平台上使用而无需任何更改。
Vagrant 由 HashiCorp 开发并在 MIT 许可下分发。

Vagrant 利用了一个声明性配置文件,该文件描述了我们所有的软件需求、软件包、操作系统配置、用户等。

在本文中,我们将在 CentOS 7 服务器上使用 VirtualBox 安装 Vagrant。
首先,我们将安装 VirtualBox 作为 Vagrant 软件的提供者,然后我们将在 CentOS 7 上安装 Vagrant。

在 CentOS 7 上安装 Vagrant

使用 yum 命令为 Vagrant 安装必备软件包。

[root@vagrant-01 centos7]# yum install -y rsync

最新版本的 Vagrant 可在 Vagrant 官方下载页面获得。

使用 wget 命令下载 Vagrant RPM。

[root@vagrant-01 tmp]# wget https://releases.hashicorp.com/vagrant/2.2.4/vagrant_2.2.4_x86_64.rpm

使用 rpm 命令安装 Vagrant RPM。

[root@vagrant-01 tmp]# rpm -ivh vagrant_2.2.4_x86_64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:vagrant-1:2.2.4-1                ################################# [100%]

创建一个主目录来存储 Vagrant 项目。

[root@vagrant-01 tmp]# mkdir ~/vagrant-home
[root@vagrant-01 tmp]# cd ~/vagrant-home/

创建一个新的项目目录并其中为 Alpine Linux 创建一个 vagrantfile。

[root@vagrant-01 vagrant-home]# mkdir alpine
[root@vagrant-01 vagrant-home]# cd alpine
[root@vagrant-01 alpine]# vagrant init generic/alpine38
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

我们已经使用 generic/alpine38 vagrant box 初始化了一个新的 Vagrant 项目。

我们可以在 Discover Vagrant Boxes 中根据我们选择的操作系统和应用程序软件找到 Vagrant box。

使用 vagrant 命令启动 Vagrant 项目。

[root@vagrant-01 alpine]# vagrant up

我们已经在 CentOS 7 上成功安装了 Vagrant 和 VirtualBox。

欢迎来到之路教程(on itroad-com)

在 CentOS 7 上安装 VirtualBox 扩展包

VirtualBox 分为两个组件。

  • 基础包
  • 扩展包

我们已经在上面安装了 VirtualBox Base Package。
现在,我们正在安装 VirtualBox 扩展包来扩展 VirtualBox 软件的功能。

VirtualBox 扩展包可在 VirtualBox 官方下载页面获得。

有一个支持所有平台的 VirtualBox Extension Pack 通用包。

因此,我们使用 wget 命令下载它。

[root@vagrant-01 tmp]# wget https://download.virtualbox.org/virtualbox/6.0.8/Oracle_VM_VirtualBox_Extension_Pack-6.0.8.vbox-extpack

使用 VBoxManage 命令安装 VirtualBox 扩展包。

[root@vagrant-01 tmp]# VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-6.0.8.vbox-extpack
VirtualBox Extension Pack Personal Use and Evaluation License (PUEL)
License version 10, 20 July 2017
 
...
Do you agree to these license terms and conditions (y/n)? y
License accepted. For batch installation add
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Successfully installed "Oracle VM VirtualBox Extension Pack".

CentOS 7 服务器上已成功安装 VirtualBox 6.0 和 VirtualBox Extension Pack。

日期:2020-09-17 00:16:30 来源:oir作者:oir