admin管理员组

文章数量:1532656

2024年2月7日发(作者:)

CentOS7下VirtualBox的安装和使用

版 本: V1.1

文件状态: 修订稿

2016年10月20日

版本历史及修订说明

版本

1.0

1.1

日期

2016/10/13

2016/10/20

拟制人/修改人

Kevin_Wu

Kevin_Wu

版本修订说明

初稿

补充VirtualBox命令详解

审核人

目 录

1. 安装VirtualBox ...........................................................................................................................................4

1.1 准备环境 ...............................................................................................................................................4

1.2 安装相关组件和依赖库 ....................................................................................................................4

1.3 安装VirtualBox-5.1.6 ........................................................................................................................5

1.4 安装扩展包(使其支持远程桌面等功能) ...............................................................................7

2. 在VirtualBox中创建虚拟机 ...................................................................................................................7

2.1 准备环境 ...............................................................................................................................................7

2.2 创建并安装虚拟机 .............................................................................................................................7

2.2控制虚拟机常用命令 ...................................................................................................................... 10

3. VirtualBox命令详解 ............................................................................................................................... 11

1. 安装VirtualBox

1.1 准备环境

操作系统:CentOS7.0

VirtualBox:VirtualBox-5.1-5.1.6_110634_el7-1.x86_

VirtualBox扩展包:Oracle_VM_VirtualBox_Extension_-extpack

VirtualBox下载地址:/virtualbox/5.1.6/

1.2 安装相关组件和依赖库

1.安装所需依赖包和kernel-headers、kernel-devel并重启

#yum install gcc make dkms kernel-headers-$(uname -r) kernel-devel-$(uname -r)

#reboot

2.查看内核版本和kernel-headers、kernel-devel是否一致

#rpm -qa | grep kernel | sort

3.安装所需的依赖库

#rpm -ivh VirtualBox-5.1-5.1.6_110634_el7-1.x86_ //这里会发现缺少很多的依赖库

通过yum方式安装:

#yum install libGL libICE libSDL libSM libXcursor libXext libXinerama libXmu

libXrender libXt libfontconfig libvpx

然后会发现找不到SDL和fontconfig,需要手动安装:

下载SDL和fontconfig并安装:

/centos-7/centos-x86_64/7.x86_

/centos-7/centos-x86_64/

#rpm -ivh 7.x86_

#rpm -ivh 7.x86_

需要fontpackages-filesystem,通过yum方式安装fontpackages-filesystem:

#yum install fontpackages-filesystem

再次安装fontconfig,成功:

#rpm -ivh 7.x86_

1.3 安装VirtualBox-5.1.6

#rpm -ivh VirtualBox-5.1-5.1.6_110634_el7-1.x86_

将root用户加到vboxusers组中:

#usermod -a -G vboxusers root

#/sbin/vboxconfig

1.4 安装扩展包(使其支持远程桌面等功能)

#VBoxManage extpack install Oracle_VM_VirtualBox_Extension_-extpack

2. 在VirtualBox中创建虚拟机

2.1 准备环境

镜像文件:CentOS-6.5-x86_

宿主机有足够大的内存和磁盘空间

2.2 创建并安装虚拟机

1.查看支持的内核和操作系统类型

#VBoxManage list ostypes

2.创建一个2.6内核64位的Linux虚拟机,名称为centos6,虚拟机文件存放路径在/data/下

#VBoxManage createvm --name centos6 --ostype Linux26_64 --register --basefolder

/data/

3.创建一个20G的虚拟磁盘

#VBoxManage createvdi --filename /data/ --size 20480

4.创建虚拟机的硬盘控制器

#VBoxManage storagectl centos6 --name storage_controller_1 --add ide

5.挂载虚拟硬盘

#VBoxManage storageattach centos6 --storagectl storage_controller_1 --type hdd

--port 0 --device 0 --medium /data/

6.挂载虚拟光驱(这里将5创建好的虚拟磁盘挂载在虚拟机上,同时挂在一个虚拟光驱,加载ISO镜像文件。)

#VBoxManage storageattach centos6 --storagectl storage_controller_1 --type

dvddrive --port 1 --device 0 --medium /data/CentOS-6.5-x86_

7.设置启动顺序(将光驱设置为第一启动顺序,以便安装操作系统。)

#VBoxManage modifyvm centos6 --boot1 dvd

#VBoxManage modifyvm centos6 --boot2 disk

8.建桥接的网络(在创建之前查看下当前宿主机器的网卡名称,例如此处是 eno1,安装系统的时候记得打开系统的自动连接网络,否则有可能出现无法启动网卡的情况)

#VBoxManage modifyvm centos6 --nic1 bridged --cableconnected1 on --nictype1

82540EM --bridgeadapter1 eno1 --intnet1 brigh1 --macaddress1 auto

9.启动vrde模块(VRDE模块用于启动RDP协议,默认使用微软的3389客户端即可连接。这里改端口为3390)

#VBoxManage modifyvm centos6 --vrde on --vrdeport 3390

10.调整系统参数(内存1G、CPU1个)

#VBoxManage modifyvm centos6 --memory 1024

#VBoxManage modifyvm centos6 --cpus 1

11.启动虚拟机并开始安装操作系统

#VBoxHeadless -startvm centos6

启动后可使用远程桌面工具连接宿主机地址的3389端口,开始安装操作系统,安装完成重启后关闭虚拟机(poweroff),并在宿主机中关闭此屏幕输出:

#VBoxManage modifyvm centos6 --vrde off

2.2控制虚拟机常用命令

启动虚拟机:

# VBoxManage startvm centos6 --type headless

关闭虚拟机,等价于点击系统关闭按钮,正常关机:

# VBoxManage controlvm centos6 acpipowerbutton

列出运行中的虚拟机:

#VBoxManage list runningvms

暂停虚拟机的运行:

# VBoxManage controlvm centos6

恢复暂停的虚拟机:

# VBoxManage controlvm centos6 resume

保存当前虚拟机的运行状态:

# VBoxManage ontrolvm centos6 savestate

删除虚拟机:

#VBoxManage unregistervm /data/centos6/ -delete

3. VirtualBox命令详解

查看当前虚拟机:

VBxoManage list vms

查看当前正在运行的虚拟机:

VBoxManage list runningvms

无前端图形界面方式启动虚拟机:

VBoxManage startvm 虚拟机名 --type headless

使用 VRDP 方式通过命令行启动虚拟机(3389):

VBoxManage startvm 虚拟机名 --type vrdp

VBoxManage [-v|-version] 显示virtualbox的版本号

VBoxManage -nologo 隐藏logo

VBoxManage -convertSettingsBackup 允许自动转换设置文件,并在转换前作备份

VBoxManage list vms|runningvms 显示列表虚拟机|正在运行的虚拟机

|ostypes|hostdvds virtualbox支持的系统类型|宿主机的光盘驱动器

|hostfloppies 宿主机的软盘驱动器

|hostifs|hostinfo 宿主机的网络接口|宿主机的信息

|hdds|dvds 已注册的虚拟硬盘|已注册的虚拟光盘

|floppies|usbhost 已注册的虚拟软盘|宿主机的USB设备

|usbfilters USB筛选器

|systemproperties 虚拟机的基本信息

VBoxManage showvminfo | 显示指定虚拟机的信息

[-details] 显示详细信息

[-statistics] 显示统计信息

[-machinereadable] 以清晰的格式显示虚拟机信息

VBoxManage registervm 将指定文件所在的虚拟机添加到列表

VBoxManage unregistervm | 从虚拟机列表清除指定的虚拟机

[-delete] 从虚拟机列表删除指定的虚拟机

VBoxManage createvm -name 创建指定名称的虚拟机

[-register] 将创建的虚拟机添加到列表

[-basefolder 指定虚拟机的基础目录

[-settingsfile ] 指定虚拟机配置文件的基础目录

[-uuid ] 创建指定uuid的虚拟机

VBoxManage modifyvm 编辑指定的虚拟机的配置

[-name ] 修改虚拟机的名称

[-ostype ] 修改虚拟机的操作系统类型

[-memory ] 修改虚拟机的内存大小

[-vram ] 修改虚拟机的显存大小

[-acpi on|off] 启动或禁止acpi电源管理接口

[-ioapic on|off] 启动或禁止I/O APIC电源管理接口

[-pae on|off] 启动或禁止CPU的PAE支持,PAE是

[-hwvirtex on|off|default] 启动或禁止CPU的硬件虚拟化支持

[-nestedpaging on|off] 开启或关闭CPU的嵌套页面列表支持

[-monitorcount ] 设置显示器数目,VRDP多用户模式时

[-bioslogofadein on|off] 开启或关闭bioslogo渐显效果

[-bioslogofadeout on|off] 开启或关闭bioslogo渐隐效果

[-bioslogodisplaytime ] 设置bioslogo显示时间(以毫秒为单位)

[-bioslogoimagepath ]设置bioslogo图像路径,用于自定义bioslogo

[-biosbootmenu disabled| 设置是否显示bios启动菜单 关闭

menuonly| 只菜单

messageandmenu] 信息和菜单

[-biossystemtimeoffset ] 设置bios系统时间补偿(以毫秒为单位)

[-biospxedebug on|off] 打开或关闭biospxe调试

[-boot<1-4> none|floppy|dvd|disk|net>] 设置启动顺序

[-hd none||] 为虚拟机添加三个IDE设备之一(第2个主盘被vm保留作为光驱,不能占用)在三个IDE中,你可以指定(硬盘)的vdi文件名或者它的UUID

[-idecontroller PIIX3|PIIX4] 设置IDE控制器的类型

[-sata on|off] 开启或关闭SATA硬盘控制器

[-sataportcount <1-30>] 设置虚拟机最多支持的SATA控制器数目

[-sataport<1-30> none| 没有硬盘连接到SATA控制器

| 指定uuid的硬盘连接到SATA控制器

] 指定文件名的硬盘连接到SATA控制器

[-sataideemulation<1-4> <1-30>] 指定一个SATA设备工作在IDE兼容模式,IDE设备编号是1-4,SATA设备编号是1-30

[-dvd none| 不连接DVD光驱

| 指定UUID的DVD光驱连接

| 将指定的光盘映像文件挂接到DVD光驱

host:] 将宿主机的DVD光驱挂接到虚拟机的DVD光驱

[-dvdpassthrough on|off]打开|关闭虚拟机里光盘的刻录功能

[-floppy disabled| 不连接软驱

empty| 连接软驱但不插入软盘

| 指定UUID的软驱连接

| 将指定的软盘映像文件挂接到软驱驱

host:] 将宿主机的软驱驱挂接到虚拟机的软驱

[-nic<1-N> none| 虚拟机不添加网卡

null| 虚拟机有网卡但不连接

nat| 网络连接使用NAT模式

hostif| 网络连接使用桥接模式

intnet] 网络连接使用内部网络模式

[-nictype<1-N> Am79C970A| 虚拟机连接AMD PCNet PCI II网卡

Am79C973| 虚拟机连接AMD PCNet FAST III网卡(默认)

82540EM| 虚拟机连接Intel PRO/1000 MT Desktop网卡

82543GC] 虚拟机连接Intel PRO/1000 T Server网卡

[-cableconnected<1-N> on|off]插入或拔出网线

[-nictrace<1-N> on|off] 开启或关闭网络追踪

[-nictracefile<1-N> ] 将网络流量追踪数据保存到文件

[-nicspeed<1-N> ] 设置网络连接的速度

[-hostifdev<1-N> none| 不连接到主机网络接口

] 桥接模式下连接到指定的主机接口

[-intnet<1-N> ] 内网模式下为虚拟机指定内部网络名称

[-natnet<1-N> | 配置NAT网络接口的地址

default] 默认NAT网络接口的地址是0/24

[-macaddress<1-N> auto| 自动生成虚拟网卡的MAC地址

] 指定虚拟网卡的MAC地址

[-uart<1-N> off| 不启用虚拟串口

]启用虚拟串口,并设置虚拟串口的I/O参数和IRQ参数

[-uartmode<1-N> disconnected| 启用虚拟串口,但不连接到宿主机的串口

server | 在宿主机创建PIPE通道,并将虚拟机串口连接到这个通道

client | 不创建PIPE通道,而是将虚拟机串口连接到已存在的通道

] 将虚拟机串口连接到宿主机的串口

[-gueststatisticsinterval ] 配置虚拟机静态时间间隔

[-audio none| 虚拟机不连接声卡

null| 将虚拟机的声卡连接到空的声音设备

dsound] 将虚拟机的声卡连接到宿主机的声卡

[-audiocontroller ac97| 将虚拟机声卡虚拟为ICH AC97声卡

sb16] 将虚拟机声卡虚拟为soundblaster

16声卡

[-clipboard disabled| 不共享剪贴板

hosttoguest| 将宿主机的剪贴板共享给虚拟机

guesttohost| 将虚拟机的剪贴板共享给宿主机

bidirectional] 宿主机和虚拟机共使用一个剪贴板

[-vrdp on|off] 开启|关闭virtualbox内置的VRDP服务器

[-vrdpport default| 使用默认的vrdp端口3389

] 指定vrdp端口

[-vrdpaddress ] 指定VRDP主机地址

[-vrdpauthtype null| 不用授权,任何客户机都可以连接到VRDP服务器

external| 只有宿主机的用户才可以连接到VRDP服务器

guest] 只有虚拟机的用户才可以连接到VRDP服务器

[-vrdpmulticon on|off] 打开|关闭VRDP多用户连接模式

[-vrdpreusecon on|off] 打开|关闭VRDP断线重连

[-usb on|off] 打开|关闭虚拟USB控制器

[-usbehci on|off] 打开|关闭虚拟USB2.0控制器

[-snapshotfolder default| 将系统快照保存到默认文件夹

] 将系统快照保存到指定文件夹

VBoxManage startvm | 开启指定UUID|名称的虚拟机

[-type gui|vrdp] 设置虚拟机标准显示设备GUI界面|VRDP

VBoxManage controlvm | 改变正在运行的虚拟机的状态

pause| 暂停,这时虚拟机窗口显示灰色

resume| 恢复暂停的虚拟机

reset| 复位

poweroff| 强行关闭

acpipowerbutton| 关机

acpisleepbutton| 使虚拟机处于睡眠状态

savestate| 保存状态然后关闭,相当于休眠

keyboardputscancode [ ...] 键盘扫描码设置

setlinkstate<1-4> on|off 连接|断开网络连接

usbattach |

连接到指定UUDI|地址的USB设备

usbdetach |

断开指定UUDI|地址的USB设备

dvdattach none| 不连接虚拟DVD光驱

| 连接到指定UUID的DVD光驱

| 连接到指定名称的DVD映像文件

host: 连接到宿主机的DVD光驱

floppyattach none| 不连接虚拟软驱

| 连接到指定UUID的虚拟软驱

| 连接到指定名称的软盘映像文件

host: 连接到宿主机的软驱

setvideomodehint 设置虚拟机的屏幕分辨率 水平像素

垂直像素

颜色深度

[display] 刷新频率

setcredentials 指定VRDP自动连接参数 用户名

密码

[-allowlocallogon ] 允许|禁止本地登陆

VBoxManage discardstate | 丢弃指定UUID|名称的虚拟机的保存状态

VBoxManage adoptstate | 将虚拟机从指定的保存状态中恢复

VBoxManage snapshot | 为指定的虚拟机拍快照

take 为快照取名

[-desc ]| 给快照添加描述

discard | | 丢弃指定的快照

discardcurrent -state| 恢复到最近的快照

-all | 恢复到倒数第二个快照

edit || 编辑指定的快照

-current 编辑当前快照

[-newname ] 修改快照名称

[-newdesc ] 修改快照描述

showvminfo | 显示快照的虚拟机信息

VBoxManage registerimage disk|dvd|floppy 注册硬盘、光盘、软盘映像文件

[-type normal| 注册为普通类型(可创建快照,可读写)

immutable| 注册为只读类型(相当于加了硬盘卡)

writethrough] 注册为可写类型(这种类型不能创建快照)

(disk only) (注册类型选项只适用于硬盘)

VBoxManage unregisterimage disk| 从虚拟介质管理器删除指定的硬盘

dvd| 从虚拟介质管理器删除指定的DVD光盘

floppy 从虚拟介质管理器删除指定的软盘

| 删除时指定UUID

删除时指定映像文件

VBoxManage showvdiinfo | 显示指定UUID|名称虚拟硬盘的信息

VBoxManage createvdi -filename 创建指定名称的虚拟硬盘

-size 指定虚拟硬盘的大小(以兆为单位)

[-static] 创建固定大小的虚拟硬盘

[-comment ] 添加一段解释性文字

[-register] 注册新创建的虚拟硬盘

[-type normal| 注册类型 普通(可以创建快照)

writethrough] 注册类型 可写(不能创建快照)

(default: normal) 默认是普通类型

VBoxManage modifyvdi | compact 压缩指定的虚拟硬盘

VBoxManage clonevdi | 克隆指定的VDI虚拟硬盘

VBoxManage convertdd [-static] 将raw硬盘转换成vdi虚拟硬盘

VBoxManage convertdd [-static] stdin 将标准输入参数指定的设备转换成vdi虚拟硬盘,比如:dd if=/dev/sda1 | VBoxManage convertdd

stdin /media/disk/ 62277025792

增加一个新的扩展包:

VBoxManage extpack install <.vbox-extpack>

卸载指定扩展包:

VBoxManage extpack uninstall

显示已安装的扩展包:

VBoxManage list extpacks

移除安装扩展包失败或卸载扩展包失败时可能遗留下来的文件和目录:

VBoxManage extpack cleanup

显示所有虚拟机的配置信息:

VBoxManage list vms --long

列出VirtualBox所能识别的所有客户机操作系统

VBoxManage list ostypes

显示主机的Hardware time、CPU、内存、操作系统及系统版本信息

VBoxManage list hostinfo

//输出中的"Processor count"指的是CPU的线程数

列出所有VirtualBox支持的虚拟磁盘后端

VBoxManage list hddbackends

列出VirtualBox当前正在使用的虚拟磁盘的信息:

VBoxManage list hdds

列出虚拟机配置文件中加载的虚拟磁盘镜像的信息:

VBoxManage list dvds

显示VirtualBox的一些全局设置信息,包括Guest Additions文件的路径:

VBoxManage list systemproperties

显示虚拟机的配置信息:

VBoxManage showvminfo |

详细显示虚拟机的配置信息:

VBoxManage showvminfo | [--details]

创建并注册一个虚拟机:

VBoxManage createvm --name "Win 2008" --register

将虚拟机Win 2008重命名为win2008:

VBoxManage modifyvm "Win 2008" --name win2008

将虚拟机win2008的操作系统类型改为Windows 2008(32位):

VBoxManage modifyvm win2008 --ostype Windows2008

将虚拟机win2008的CPU个数设为2个:

VBoxManage modifyvm win2008 --cpus 2

将虚拟机的第一启动设备设为硬盘:

VBoxManage modifyvm win2008 --boot1 disk

将虚拟机win2008的第一个网卡的网络连接方式设为桥接:

VBoxManage modifyvm win2008 --nic1 bridged

将虚拟机win2008的第一个网卡的网卡芯片类型设为82540EM:

VBoxManage modifyvm win2008 --nictype1 82540EM

将虚拟机win2008的第一个网卡桥接到host的eth0网卡上:

VBoxManage modifyvm win2008 --bridgeadapter1 eth0

//前提是虚拟网卡1使用的网络连接方式是桥接

开启VirtualBox remote desktop extension (VRDE) server:

VBoxManage modifyvm win2008 --vrde on

//VRDE server的默认监听地址为0.0.0.0,默认监听端口为3389

以VBoxHeadless作为前端来启动虚拟机win2008:

VBoxManage startvm win2008 --type headless

创建一个大小为100G的虚拟硬盘:

VBoxManage createhd --filename --size 102400

给虚拟机win2008添加一个IDE控制器:

VBoxManage storagectl win2008 --name "IDE Controller" --add ide --controller

PIIX4

将文件作为虚拟机win2008的第一块IDE硬盘:

VBoxManage storageattach win2008 --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium

配置第一个IDE光驱,并挂载安装光盘:

VBoxManage storageattach win2008 --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium server_2008_

将主机的/home/vbox目录共享给Guest虚拟机win2008,且共享名为share

VBoxManage sharedfolder add win2008 --name share --hostpath /home/vbox

//该命令必须在关闭虚拟机之后才能执行

将主机的/home/vbox目录瞬间共享给Guest虚拟机win2008,且共享名为share

VBoxManage sharedfolder add win2008 --name share --hostpath /home/vbox --transient

//该命令在虚拟机运行时就可以执行,但当虚拟机关闭(指虚拟机的状态为poweroff)后该共享文件夹不会保留

备注:

1.使用VBoxManage modifyvm命令的前提是虚拟机已经处于关机状态;

本文标签: 指定虚拟连接关闭安装