In this article, you will learn how to install VirtualBox on CentOS 8 server. However, the same method can be used to install previous versions of Oracle VirtualBox. #centlinux #linux #virtualbox
Table of Contents
What is VirtualBox?
Oracle VirtualBox is free and open source virtualization software for enterprises as well as home users. VirtualBox is distributed under the GNU GPL v2 license by Oracle Corporation. It can be installed on Windows, Mac, Linux, Solaris, FreeBSD, etc.
Nonetheless, Oracle VirtualBox is a complete virtualization platform, it is the preferred provisioning tool used by famous Server Orchestration software like Vagrant and Ansible.
Vagrant uses Oracle VirtualBox to provision required virtual machines by importing the Vagrant boxes in VirtualBox.
Whereas, Ansible uses their playbooks to create and configure the required virtual machines by using VirtualBox.
Read Also: How to install VirtualBox on Rocky Linux 9
Oracle VirtualBox vs VMWare
Choosing between Oracle VirtualBox and VMware can be complex as both have their strengths and weaknesses, and the best choice depends on your specific needs. Here’s a comparison of the two in various aspects:
1. Cost
- VirtualBox: Free and open-source.
- VMware: Offers both free (VMware Player) and paid versions (VMware Workstation Pro, VMware Fusion for Mac).
2. Performance
- VirtualBox: Generally offers good performance but might lag behind VMware in some high-demand scenarios.
- VMware: Often noted for superior performance, particularly in more complex or resource-intensive setups.
3. Ease of Use
- VirtualBox: User-friendly with a straightforward interface, making it a good choice for beginners.
- VMware: Also user-friendly, but the advanced features might be overwhelming for new users.
4. Features
- VirtualBox: Comprehensive feature set for a free tool, including snapshots, shared folders, and seamless mode.
- VMware: Rich feature set, including advanced networking options, snapshot management, and support for DirectX and OpenGL for better graphics performance.
5. Compatibility
- VirtualBox: Available on Windows, macOS, Linux, and Solaris. Good support for a wide range of guest OSes.
- VMware: Also supports Windows, macOS, and Linux. VMware Fusion is specifically designed for macOS.
6. Support and Community
- VirtualBox: Large user community and extensive documentation due to its open-source nature. Oracle provides official support for enterprise users.
- VMware: Offers robust professional support options and a large community. The documentation is thorough, and enterprise support is a strong point.
7. Integration and Ecosystem
- VirtualBox: Integrates well with other Oracle products and has good support for third-party tools.
- VMware: Strong integration with VMware’s suite of enterprise products, making it a preferred choice for businesses already using VMware solutions.
8. Hardware Requirements
- VirtualBox: Generally light on system resources, making it suitable for older or less powerful hardware.
- VMware: Can be more resource-intensive, but this often translates to better performance on modern hardware.
9. Virtual Machine Management
- VirtualBox: Supports a range of management options but might be less powerful than VMware in enterprise environments.
- VMware: Excellent VM management capabilities, particularly in its enterprise solutions like vSphere.
Summary
- VirtualBox: Ideal for individuals, educational purposes, and small-scale use due to its cost (free) and ease of use. It’s suitable for those who need a capable virtualization solution without investing in a paid product.
- VMware: Better suited for professional environments and enterprise use where performance, advanced features, and professional support are critical. Even the free VMware Player provides strong capabilities, while the paid versions offer extensive features for complex scenarios.
In conclusion, if you are a casual user or a student, VirtualBox might be the better choice due to its cost and simplicity. For businesses or users requiring advanced features and superior performance, VMware would likely be the more appropriate choice.
Recommended Online Training: Learn VirtualBox Basic to Advance
Linux Server Specification
We are using a minimal CentOS 8 server with following specification.
- CPU – 3.4 Ghz (2 cores)
- Memory – 4 GB
- Storage – 40 GB
- Operating System – CentOS 8.1
- Hostname – virtualbox-01.centlinux.com
- IP Address – 192.168.116.206 /24
Update Linux Software Packages
Connect to virtualbox-01.centlinux.com as root user by using a SSH tool.
As a best practice, update the existing software packages in your Linux server before installing anything new.
To update installed software packages on Linux server, you can use dnf command.
# dnf update -y
Your Linux server has been updated now.
Since, you now have an updated Linux Kernel, therefore, it is a necessary to reboot the operating system with the newly installed Linux Kernel.
# systemctl reboot
Installing EPEL Yum Repository
Oracle VirtualBox requires some prerequisite software packages that are not available in standard yum repositories. Therefore, you have to add EPEL (Extra Packages for Enterprise Linux) yum repository in our Linux server.
You can add EPEL yum repository as follows.
# dnf install -y epel-release
Install Oracle VirtualBox Yum Repository
However, you can download VirtualBox RPM package from their official website and install it using dnf or rpm commands.
But we prefer to do it by using the Oracle VirtualBox yum repository. For this purpose, you have to add this yum repository in your Linux server.
Download and install VirtualBox repo file as follows.
# wget https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo -O /etc/yum.repos.d/virtualbox.repo --2020-05-03 14:25:35-- https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo Resolving download.virtualbox.org (download.virtualbox.org)... 104.83.107.117 Connecting to download.virtualbox.org (download.virtualbox.org)|104.83.107.117|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 259 [text/plain] Saving to: â/etc/yum.repos.d/virtualbox.repoâ /etc/yum.repos.d/vi 100%[===================>] 259 --.-KB/s in 0s 2020-05-03 14:25:37 (5.52 MB/s) - â/etc/yum.repos.d/virtualbox.repoâ saved [259/259]
Build cache for newly added yum repositories.
# dnf makecache CentOS-8 - AppStream 7.3 kB/s | 4.3 kB 00:00 CentOS-8 - Base 11 kB/s | 3.9 kB 00:00 CentOS-8 - Extras 2.2 kB/s | 1.5 kB 00:00 Extra Packages for Enterprise Linux Modular 8 - 7.7 kB/s | 8.7 kB 00:01 Extra Packages for Enterprise Linux 8 - x86_64 19 kB/s | 7.2 kB 00:00 Oracle Linux / RHEL / CentOS-8 / x86_64 - Virtu 260 B/s | 181 B 00:00 Oracle Linux / RHEL / CentOS-8 / x86_64 - Virtu 846 B/s | 1.7 kB 00:02 Importing GPG key 0x98AB5139: Userid : "Oracle Corporation (VirtualBox archive signing key) <info@virtualbox.org>" Fingerprint: 7B0F AB3A 13B9 0743 5925 D9C9 5442 2A4B 98AB 5139 From : https://www.virtualbox.org/download/oracle_vbox.asc Is this ok [y/N]: y Oracle Linux / RHEL / CentOS-8 / x86_64 - Virtu 45 kB/s | 85 kB 00:01 Metadata cache created.
Install VirtualBox Prerequisites
Before installing Oracle VirtualBox on Linux server, it is necessary to install the prerequisites software packages. Therefore, we have identified the required software packages and installing them by using following dnf command.
# dnf install -y kernel-devel kernel-headers glibc-headers glibc-devel binutils libgomp make patch gcc dkms
Install VirtualBox on CentOS 8
Since, you have already added the Oracle VirtualBox yum repository, therefore, you can now easily install your required version of VirtualBox by using dnf command.
Search for available versions of Oracle VirtualBox.
# dnf search VirtualBox Last metadata expiration check: 0:06:35 ago on Sun 03 May 2020 02:27:51 PM PKT. ====================== Name & Summary Matched: VirtualBox ====================== VirtualBox-5.2.x86_64 : Oracle VM VirtualBox VirtualBox-6.0.x86_64 : Oracle VM VirtualBox VirtualBox-6.1.x86_64 : Oracle VM VirtualBox
Install the latest version (VirtualBox 6.1) by using the dnf command.
# dnf install -y VirtualBox-6.1
The VirtualBox installer creates a systemd service, named as vboxdrv.service, but you must rebuild the VirtualBox kernel modules to start it properly.
Oracle VirtualBox provides us a script to rebuild relevant kernel modules, therefore rebuild the VirtualBox kernel modules as follows.
# /usr/lib/virtualbox/vboxdrv.sh setup vboxdrv.sh: Stopping VirtualBox services. vboxdrv.sh: Starting VirtualBox services. vboxdrv.sh: Building VirtualBox kernel modules.
Check the status of vboxdrv.service.
# 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 2020-05-03 14:39:49 PKT; 6min ago Process: 25841 ExecStart=/usr/lib/virtualbox/vboxdrv.sh start (code=exited, status=0/SUCCESS) May 03 14:39:49 virtualbox-01.centlinux.com systemd[1]: Starting VirtualBox Linux kernel module... May 03 14:39:49 virtualbox-01.centlinux.com vboxdrv.sh[25841]: vboxdrv.sh: Starting VirtualBox services. May 03 14:39:49 virtualbox-01.centlinux.com systemd[1]: Started VirtualBox Linux kernel module.
Oracle VirtualBox 6.1 has been installed on CentOS 8 Linux server.
Install VirtualBox Extension Pack
VirtualBox extension pack extends the Oracle VirtualBox support for USB 2.0 and USB 3.0 devices, VirtualBox RDP, disk encryption, NVMe and PXE boot for Intel cards.
You can download VirtualBox 6.1 Extension Pack for your preferred Linux distribution from their official download page.
# wget https://download.virtualbox.org/virtualbox/6.1.6/Oracle_VM_VirtualBox_Extension_Pack-6.1.6.vbox-extpack --2020-05-03 14:53:07-- https://download.virtualbox.org/virtualbox/6.1.6/Oracle_VM_VirtualBox_Extension_Pack-6.1.6.vbox-extpack Resolving download.virtualbox.org (download.virtualbox.org)... 104.83.107.117 Connecting to download.virtualbox.org (download.virtualbox.org)|104.83.107.117|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 10999815 (10M) [text/plain] Saving to: âOracle_VM_VirtualBox_Extension_Pack-6.1.6.vbox-extpackâ Oracle_VM_VirtualBo 100%[===================>] 10.49M 1.16MB/s in 9.3s 2020-05-03 14:53:18 (1.13 MB/s) - âOracle_VM_VirtualBox_Extension_Pack-6.1.6.vbox-extpackâ saved [10999815/10999815]
Now, install VirtualBox extension pack by using following Linux command.
# VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-6.1.6.vbox-extpack VirtualBox Extension Pack Personal Use and Evaluation License (PUEL) License version 10, 20 July 2017 PLEASE READ THE FOLLOWING ORACLE VM VIRTUALBOX EXTENSION PACK PERSONAL USE AND EVALUATION LICENSE CAREFULLY BEFORE DOWNLOADING OR USING THE ORACLE SOFTWARE. THESE TERMS AND CONDITIONS CONSTITUTE A LEGAL AGREEMENT BETWEEN YOU AND ORACLE. ORACLE AMERICA, INC. ("ORACLE") IS WILLING TO LICENSE THE PRODUCT DEFINED IN SECTION 1 BELOW ONLY ON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS VIRTUALBOX EXTENSION PACK PERSONAL USE AND EVALUATION LICENSE AGREEMENT ("AGREEMENT"). IF YOU ARE AGREEING TO THIS LICENSE ON BEHALF OF AN ENTITY (RATHER THAN AS AN INDIVIDUAL HUMAN BEING), YOU REPRESENT THAT YOU HAVE THE APPROPRIATE AUTHORITY TO ACCEPT THESE TERMS AND CONDITIONS ON BEHALF OF SUCH ENTITY. 1 SUBJECT OF AGREEMENT. This Agreement governs your use of the binary software package called "Oracle VM VirtualBox Extension Pack" (the "Product"), which contains a set of additional features for "Oracle VM VirtualBox" that enhance the operation of multiple virtual machines ("Guest Computers") on a single physical computer ("Host Computer"). The Product consists of executable files in machine code, script files, data files, and all documentation and updates provided to You by Oracle. 2 GRANT OF LICENSE. Oracle grants you a personal, non-exclusive, non-transferable, limited license without fees to reproduce, install, execute, and use internally the Product on Host Computers for your Personal Use, Educational Use, or Evaluation. "Personal Use" is noncommercial use solely by the person downloading the Product from Oracle on a single Host Computer, provided that no more than one client or remote computer is connected to that Host Computer and that client or remote computer is used solely to remotely view the Guest Computer(s). "Educational Use" is any use by teachers or students in an academic institution (schools, colleges and universities) as part of the institution's educational curriculum. "Evaluation" means testing the Product for up to thirty (30) days; after expiry of that term, you are no longer permitted to use the Product. Personal Use and/or Educational Use expressly exclude any use of the Product for commercial purposes or to operate, run, or act on behalf of or for the benefit of a business, organization, governmental organization, or educational institution. Oracle reserves all rights not expressly granted in this license. 3 RESTRICTIONS AND RESERVATION OF RIGHTS. (1) The Product and copies thereof provided to you under this Agreement are copyrighted and licensed, not sold, to you by Oracle. (2) You may not do any of the following: (a) modify any part of the Product, except to the extent allowed in the documentation accompanying the Product; (b) rent, lease, lend, re-distribute, or encumber the Product; (c) remove or alter any proprietary legends or notices contained in the Product; or (d) decompile, or reverse engineer the Product (except to the extent permitted by applicable law). (3) The Product is not designed, licensed or intended for use in the design, construction, operation or maintenance of any nuclear facility and Oracle and its licensors disclaim any express or implied warranty of fitness for such uses. (4) No right, title or interest in or to any trademark, service mark, logo or trade name of Oracle or its licensors is granted under this Agreement. 4 TERMINATION. The Agreement is effective on the date you receive the Product and remains effective until terminated. Your rights under this Agreement will terminate immediately without notice from Oracle if you materially breach it or take any action in derogation of Oracle's and/or its licensors' rights to the Product. Oracle may terminate this Agreement immediately should any part of the Product become or in Oracle's reasonable opinion likely to become the subject of a claim of intellectual property infringement or trade secret misappropriation. Upon termination, you will cease use of and destroy all copies of the Product under your control and confirm compliance in writing to Oracle. Sections 3-9, inclusive, will survive termination of the Agreement. 5 DISCLAIMER OF WARRANTY. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, ORACLE PROVIDES THE PRODUCT "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT LIMITING THE FOREGOING, ORACLE SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT. The entire risk as to the quality and performance of the Product is with you. Should it prove defective, you assume the cost of all necessary servicing, repair, or correction. 6 LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, IN NO EVENT WILL ORACLE OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT, DATA, OR DATA USE, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE THE PRODUCT, EVEN IF ORACLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Oracle's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for the Product under this Agreement. 7 SEPARATELY LICENSED THIRD PARTY TECHNOLOGY. The Product may contain or require the use of third party technology that is provided with the Product. Oracle may provide certain notices to you in the Product's documentation, readmes or notice files in connection with such third party technology. Third party technology will be licensed to you either under the terms of this Agreement or, if specified in the documentation, readmes or notice files, under Separate Terms. Your rights to use Separately Licensed Third Party Technology under Separate Terms are not restricted in any way by this Agreement. However, for clarity, notwithstanding the existence of a notice, third party technology that is not Separately Licensed Third Party Technology shall be deemed part of the Product and is licensed to You under the terms of this Agreement. "Separate Terms" refers to separate license terms that are specified in the Product's documentation, readmes or notice files and that apply to Separately Licensed Third Party Technology. "Separately Licensed Third Party Technology" refers to third party technology that is licensed under Separate Terms and not under the terms of this Agreement. 8 EXPORT. Export laws and regulations of the United States and any other relevant local export laws and regulations apply to the Product. You agree that such export laws govern your use of the Product (including technical data) provided under this Agreement, and you agree to comply with all such export laws and regulations (including "deemed export" and "deemed re-export" regulations). You agree that no data, information, and/or Product (or direct product thereof) will be exported, directly or indirectly, in violation of these laws, or will be used for any purpose prohibited by these laws including, without limitation, nuclear, chemical, or biological weapons proliferation, or development of missile technology. 9 U.S. GOVERNMENT END USERS. Oracle programs, including the Product, any operating system, integrated software, any programs installed on hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government. 10 MISCELLANEOUS. This Agreement is the entire agreement between you and Oracle relating to its subject matter. It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement. No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this Agreement will immediately terminate. This Agreement is governed by the laws of the State of California, USA, and you and Oracle agree to submit to the exclusive jurisdiction of, and venue in, the courts of San Francisco or Santa Clara counties in California in any dispute arising out of or relating to this Agreement. Do you agree to these license terms and conditions (y/n)? y License accepted. For batch installation add --accept-license=56be48f923303c8cababb0bb4c478284b688ed23f16d775d729b89a2e8e5f9eb to the VBoxManage command line. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100% Successfully installed "Oracle VM VirtualBox Extension Pack".
VirtualBox 6.1 Extension Pack has been installed on your CentOS 8 Linux server.
Although, it is quiet convenient to use Oracle VirtualBox in a Graphical environment (GUI). But you can also manage your VirtualBox environment and guests machines from Linux command line (CLI). For this purpose, VirtualBox provides a set of commands prefixed with vbox*.
If you want to learn more about Oracle VirtualBox, then you should purchase and read VirtualBox Made Easy: Virtualize Your Environment with Ease (Computers Made Easy) (PAID LINK) by James Bernstein.
Final Thoughts
Thank you for following this guide on how to install VirtualBox on CentOS 8. I hope this tutorial was helpful and made the process straightforward for you. If you have any further questions or need additional assistance, feel free to reach out.
If you’re interested in learning how to install Oracle VirtualBox on Linux Server, I offer a detailed guide on Fiverr. You can find the complete instructions and get personalized support here: Linux Virtualization Expert
Thank you for reading, and happy virtualizing!