一、phpVirtualBox简介

     VirtualBox是一套为不同操作系统而设的 x86 虚拟化产品。它是一个机器/硬件的虚拟化产品,功能上与 VMware Server、Parallels Workstation、QEMU、KVM、及 Xen 相若,并能支持各种客端操作系统,当中包括 Windows。它的支持者声称它是「在 GNU General Public License(GPL)下唯一个以开源程序免费供应的专业方案」。虽然它不及那些修改 Linux 内核的操作系统级虚拟化方案,如KVM般高效率,它却是容易安装及使用。优点包括:

     1. 备有 RPM 组件

    2. 积极的社区支持

    3. 执行各种客端操作系统

    4. 良好的硬件访问支持,包括声音、USB、及串口

    5. 支持不少主体操作系统

phpVirtualBox是一个开源的VirtualBox网页接口,一个基于php构建的VirtualBox前端界面,可以通过浏览器来实现对VirtualBox主机进行管理,web界面使用了AJAX 技术,在浏览器里对VirtualBox进行远程管理时,看上去和本地的VirtualBox控制台差不多。PhpVirtualBox的特点:

    1. 开启/关闭虚拟机

    2. 快照 查看虚拟机

    3. 配置虚拟机 媒体管理

    4. 创建虚拟机向导 全局网络配置

    5. 导入/导出虚拟机 访问虚拟机控制台

    6. 多语言支持

Virtualbox下载地址

http://download.virtualbox.org/virtualbox/5.1.2/

phpVirtualBox下载地址

https://sourceforge.net/projects/phpvirtualbox/?source=typ_redirect

以下为CentOS 7上Virtualbox+phpvirtualbox完整虚拟化环境部署过程

二、安装过程

1、安装DKMS(Dynamic Kernel Module)

安装 VirtualBox时是须要创建内核模块的。假如 DKMS(Dynamic Kernel Module Support)已被安装,它会被应用,并会简化内核升级。我们推荐在安装 VirtualBox 前,首先从 EPEL 软件库安装 DKMS。

yum install epel-release-7-5.noarch

yum --enablerepo=epel install dkms

2.安装开发环境和内核:

如果你不采用 DKMS,而开发环境及内核的源代码仍未被安装:

yum groupinstall 'Development Tools' SDL kernel-devel kernel-headers

3.安装Virutalbox

添加VirtualBox源

cd /etc/yum.repos.d/ &&  sudo wget http://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo

下载安装repository authentication key file

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc

rpm --import oracle_vbox.asc

查看并安装VirtualBox

yum check-update  

yum list|grep virtualbox

yum install VirtualBox-5.1.x86_64

如开发环境已被正确地设置,这个安装程序将会创建 vboxusers 这个群组及它所需的内核模块。

4.下载安装Virutalbox增强包

只有安装VirtualBox增强功能之后,我们才能使主机和虚拟机之间,共享剪贴板,文件夹共享等功能,才能正常使用

命令安装

cd /tmp && wget http://download.virtualbox.org/virtualbox/5.1.2/Oracle_VM_VirtualBox_Extension_Pack-5.1.2.vbox-extpack

VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.2.vbox-extpack

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Successfully installed "Oracle VM VirtualBox Extension Pack".

图形化安装

5. 启动 VirtualBox

以vboxusers群组内一位成员的身份执行VirtualBox

VirtualBox &

命令行方式启动

图形化启动

下面开始配置phpVirtualBox

6. 创建用户,并添加至vboxusers 组

useradd vbox

passwd vbox

usermod -G vboxusers vbox

未来每一个会执行 VirtualBox 的用户,也要添加附加组vboxusers

usermod -a -G vboxusers 用户名称

7. 安装Apache2, PHP and Modules

yum install httpd php php-devel php-gd php-common php-soap

8.下载phpVirtualbox,解压至相应目录

wget http://ufpr.dl.sourceforge.net/project/phpvirtualbox/phpvirtualbox-5.0-5.zip

unzip phpvirtualbox-5.0-5.zip

mv phpvirtualbox-5.0-5 /var/www/html/phpvirtualbox

####更改权限

chown -R vbox:vbox   /var/www/html/phpvirtualbox/

9、拷贝并修改配置文件

拷贝配置文件

cp /var/www/html/phpvirtualbox/config.php-example /var/www/html/phpvirtualbox/config.php

修改配置文件vim /var/www/html/phpvirtualbox/config.php

[...]

var $username = 'vbox';

var $password = 'vbox';

[...]

10.创建此配置文件/etc/default/virtualbox

vi /etc/default/virtualbox

内容如下,vboxweb-service启动的时候需要访问

VBOXWEB_USER=vbox

11.启动vboxweb-service

systemctl restart  vboxweb-service 

/etc/init.d/vboxweb-service start

启动完 检查18083端口是否被监听

[root@xqzt tmp]# netstat  -nltp|grep 18083

tcp        0      0 127.0.0.1:18083    0.0.0.0:*   LISTEN      10717/vboxwebsrv

12.重启Apache

systemctl restart httpd

/etc/init.d/httpd restart

13 防火墙设置

##Add

firewall-cmd --permanent --zone=public --add-port=80/tcp

##Reload

firewall-cmd --reload

访问http://localhost会显示apache的页面

14 关闭selinux

永久关闭

vi /etc/sysconfig/selinux

####Change the line as shown below.

[...]

SELINUX=disabled

[...]

临时关闭,避免重启

setenforce 0

15.验证

http://server_IP_address/phpvirtualbox

username = admin

password = admin

Virtualbox和phpVirtualBox版本不同的警告

参考:

  1. Installing VirtualBox In CentOS 7 Headless Server With Support for phpVirtualBox
  2. 在 CentOS 上安装及使用 VirtualBox

  3. Install ‘PhpVirtualBox’ to Manage VirtualBox Virtual Machines via Web Browser in Linux
  4. https://www.linuxhelp.com/how-to-install-phpvirtualbox-in-centos-manage-virtualbox/

  5. http://solutionsatexperts.com/how-to-install-virtualbox-phpvirtualbox-on-centos-redhat/

在 CentOS 7上Virtualbox+phpVirtualBox完整虚拟化环境部署的更多相关文章

  1. 在doker上的python安装及环境部署

    python环境部署 我们今天学习的内容是如何将Django项目部署到linux服务器上,我们部署的linux系统是centos7首先,我们先在linux上搭建我们的Python3环境: 在这里首先强 ...

  2. Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇

    由于来源身份不明.越权操作.密码泄露.数据被窃.违规操作等因素都可能会使运营的业务系统面临严重威胁,一旦发生事故,如果不能快速定位事故原因,运维人员往往就会背黑锅.几种常见的运维人员背黑锅场景:1)由 ...

  3. Centos下堡垒机Jumpserver V3.0环境部署完整记录(2)-配置篇

    前面已经介绍了Jumpserver V3.0的安装,基于这篇安装文档,下面说下Jumpserver安装后的的功能使用: 一.jumpserver的启动 Jumpserver的启动和重启 [root@t ...

  4. kvm企业级虚拟化环境部署

    由于要做毕设了,不得不要搭建Linux环境,自己做的课题是ELK日志分析相关.因此要大干一场,一下子计划采用近10台机器来做试验,但由于我这里只有三台物理机,所以我就搞起了虚拟化kvm.在Linux里 ...

  5. kvm虚拟化环境的搭建

    首先搭建kvm的虚拟化环境,我选择的环境是在vmvare上的Centos 7的虚拟机,在该环境上搭建kvm的虚拟化环境 1:安装虚拟机(该过程自行安装) 2:操作系统环境的设置 (1)修改内核模式为兼 ...

  6. 【原】【BG】-一次虚拟化环境实践简要记录

    部分涉及到Linux.Nginx.tomcat.MySQL等的点滴操作记录,时间长了,就忘掉了,偶尔整理一下操作的history,就此简要备份一下: [原][BG]-一次虚拟化环境实践简要记录: ht ...

  7. Xen入门系列一【使用Xen4CentOS 在 Centos 6 上安装 Xen】

    最近在学习Hadoop,在Win7下用VMware搭了三台虚拟机好不容易装好了Hadoop结果跑个两个单词的wordcount就跑了十分钟,郁闷啊,于是开始寻找效能更好的虚拟化解决方案,然后选定了Xe ...

  8. Centos服务器上NFS灾备环境及KVM的搭建及使用

    1.概述 由于在单台服务器上搭建灾备环境需要KVM和NFS的支持,下面先列出KVM的搭建流程,再列出使用NFS实现单台服务器灾备的流程. A.搭建KVM环境 1>.主机环境准备 Linux Sy ...

  9. 在CentOS 6上使用 AWStats 分析 httpd 和 Tomcat 日志

    准备工作: Awstats 是由perl语言编写的,所以要首先准备好awstats的运行环境.# yum install –y perl*   Apache 一.首先,要安装apache服务器,并且启 ...

随机推荐

  1. HashMap实现原理简析及实现的demo(一看就明白)

    HashMap底层就是一个数组结构,数组中的每一项又是一个链表. jdk源码: transient Node<K,V>[] table; static class Node<K,V& ...

  2. 在Idea中添加自定义补全代码设置(Main方法为例)

    一.打开File->setting->Editor->Live Templates 二.注意右边有“+”.“-”号,点击+号选择第二个Template Group...,并输入新组名 ...

  3. 1e9个兵临城下

    https://ac.nowcoder.com/acm/contest/321#question 代码写得蛮丑的..真的很丑 像是高中教的veen图,并涉及到容斥原理. #include<cst ...

  4. 基于netty的websocket例子

    nettyServer package com.atguigu.netty.websocket; import javax.annotation.PostConstruct; import org.s ...

  5. [译]the cost of javascript in 2018(1)

    前言 为了构建交互性网站,我们需要发送js给我们的用户,但很多情况下,我们使用了太多js. 在移动端,经常看到只加载了个点击链接或者滚动不了的情况. 实话说,js仍然是移动端最昂贵的资源,因为其在很大 ...

  6. Jmeter元件——JSON Extractor后置处理器

    场景使用 json extractor后置处理器用在返回格式为json的HTTP请求中,用来获取返回的json中的某个值.并保存成变量供后面的请求进行调用或断言等. 使用方法 1.常规操作 路径:选择 ...

  7. PHP反序列化与Session

    0x00前言: php存储session有三种模式,php_serialize, php, binary 这里着重讨论php_serialize和php的不合理使用导致的安全问题 关于session的 ...

  8. Java简介及开发环境配置

    Java简介 Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称.(注:Sun公司已于2009年04月20日被Oracle公司收购) 目前, ...

  9. elasticsearch数据备份还原

    elasticsearch数据备份还原 1.在浏览器中运行http://XXX.XXX.XXX.XXX:9200/_flush,确保索引数据能保存到硬盘中. 2.原数据的备份.主要是elasticse ...

  10. SpringBoot使用事务

    事务是很多项目中需要注意的东西,有些场景如果没有加事务控制就会导致一些脏数据进入数据库,本文简单介绍SpringBoot怎样使用事务. 本文使用的是之前整合JPA的文章,具体可以参考 传送门. 无论是 ...