linux上虚拟机vmware-workstation详细教程
本文介绍了在centos上离线安装vmware-workstation的详细过程以及使用方法。
回到目录
回到末尾
一、VMWare基本介绍
虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,在实体计算机中能够完成的工作在虚拟机中都能够实现。
VMWare虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMware采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。
参考链接:【
VM安装清理工具 + VM配置调试工具 + VM反虚拟机检测
】
二、VMWare下载
2.1 查看本地系统信息
-
查看内核版本:
cat /proc/version
. 我的机器系统信息: Linux version 3.10.0-1160.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5
-44) (GCC) ) #1 SMP Mon Oct 19 16:18:59 UTC 2020 -
查看系统版本:
cat /etc/redhat-release
.我的机器系统信息: CentOS Linux release 7.9.2009 (Core)
2.2 选择及下载合适的版本
VMware下载地址:
(非官方,但是版本很全,不需要登录注册官网)点击下载
官网下载:
- 进入官方下载地址:
https://www.vmware.com/cn.html
- 按提示登录\注册后,然后按照图片标注操作如下:
等待下载完成即可。
三、VMWare安装
3.1 安装依赖库
依赖库有:
(1) libaio \ libaio1、
(2)pcsc-lite-libs \ libpcsclite1 、
(3) make 、
(4)gcc \ gcc-c++ 、
(5) libglib2.0-dev、
(6)perl \ kernel-devel
(7)libX11 \ libXinerama \ libXcursor \ libXtst
-
在线安装:
yum -y install perl gcc kernel-devel libX11 libXinerama libXcursor libXtst
-
离线安装:通过 uname -r 查询内核版本,然后到 CentOS 官网的历史版本里找到对应的 rpm 包手动安装。安装参考链接:
linux资源包安装详细教程
如下示例:
(1)离线安装
perl
(2)离线安装:
kernel-devel
3.2 vmware安装
- 将下载的安装包 VMware-Workstation-Full-版本号.x86_64.bundle放到centos某个目录下,这里我放置的目录是/home/soft/vmware
#查看安装包信息
ls /home/soft/vmware
2. 将目录权限设置成可读写:
#进入安装目录
cd /安装目录
chmod +x *.bundle
- 执行安装命令:
./VMware-Workstation-Full-{版本号}.x86_64.bundle --console --eulas-agreed --required -s vmware-workstation serialNumber {激活序列号}
#示例 16安装
./VMware-Workstation-Full-16.2.5-20904516.x86_64.bundle --console --eulas-agreed --required -s vmware-workstation serialNumber {YF390-0HF8P-M81RQ-2DXQE-M2UT6}
#示例 15安装 - 不同版本,只需要安装一个版本,因为我第一个版本跟系统不兼容,后面重新下了15版本的
./VMware-Workstation-Full-15.5.7-17171714.x86_64.bundle --console --eulas-agreed --required -s vmware-workstation serialNumber {UG5J2-0ME12-M89WY-NPWXX-WQH88}
安装成功:
卸载vmware命令:
vmware-installer -u vmware-workstation
3.3 验证安装
-
启动VMware,执行命令:
systemctl start vmware
-
查看启动状态,执行命令:
systemctl status vmware
-
如果出现异常,状态栏会有红色的文字标识错误原因。如下示例:
根据失败的原因去解决问题,然后再重新启动即可。
我这边安装时出现了
Fa
i
l
e
d
t
o
s
t
a
r
t
S
Y
S
V
:
T
h
i
s
s
e
r
v
i
c
e
s
t
a
r
t
s
a
n
d
s
t
o
p
s
V
M
w
a
r
e
s
e
r
v
i
c
e
s
.
\color{red}{ Failed to start SYSV: This service starts and stops VMware services. }
F
ai
l
e
d
t
os
t
a
r
tS
Y
S
V
:
T
hi
sser
v
i
ces
t
a
r
t
s
an
d
s
t
o
p
s
V
Mw
a
reser
v
i
ces
.
异常,【
点击进入Failed to start SYSV异常解决方案
】
-
如果是正常的,状态栏会显示“ Runing ”
-
查看安装状态:
vmware-modconfig --install-status
-
一般而言只要 vmmon、vmnet 是 installed, vmware 就能干活了
-
如果vmmon、vmnet 是 unknown,说明安装过程出现异常了,缺失模块。
(1)这时候大概率是安装的版本与系统不兼容,建议卸载后降低版本重新安装。我就是安装16.2.4版本时出现了这个问题,降低到15.5.7版本后就正常了。卸载参考链接:本人实战记录-
linux下卸载vmware
(2)如果不是版本问题的话,继续排除:-
点击【
运行配置异常-第一个实参不是一个常量
】,看是否是出现该异常。 -
点击【
vmmon、vmnet 需要手动编译安装
】,看手动编译能否解决问题。
-
点击【
3.4 异常及解决方案
3.4.1 Failed to start SYSV
1. 异常描述
:
Failed to start SYSV: This service starts and stops VMware services.
2. 解决方案如下:
(1)执行命令,运行vmware配置文件,查看详细原因:
vmware-modconfig --console --install-all
(2)大概率是没有安装依赖,
点击检查依赖是否正确安装
3.4.2 GLib does not have GSettings support
1. 异常描述
:
G
L
i
b
d
o
e
s
n
o
t
h
a
v
e
G
S
e
t
t
i
n
g
s
s
u
p
p
o
r
t
.
\color{red}{GLib does not have GSettings support. }
G
L
ib
d
oes
n
o
t
ha
v
e
GS
e
tt
in
g
ss
u
pp
or
t
.
安装配置文件时,报异常:
2. 原因
:缺失lib
依赖库有:
(1) libaio \ libaio1、
(2)pcsc-lite-libs \ libpcsclite1 、
(3) make 、
(4)gcc \ gcc-c++ 、
(5) libglib2.0-dev、
(6)kernel-devel 、perl
(7)libX11 \ libXinerama \ libXcursor \ libXtst
3. 解决方案如下:
(1)确认是否有
libaio
:
rpm -qa|grep libaio
find / -name libaio.*
-
如果lib有缺失,安装libaio参考链接:
linux资源包安装详细教程
(后面所有的lib安装都参考这个链接)
(2)确认是否有
libpcsclite1
:
find / -name pcsc-lite-lib*
find / -name libpcsclite*
这里pcsc-lite-libs缺失,安装pcsc-lite-libs:
(3)确认是否有
make
(4)确认是否有
gcc
rpm -qa|grep gcc
(5)确认是否有
perl
rpm -qa|grep perl
(6)确认是否有
kernel-devel
rpm -qa|grep kernel-devel
(8)确认是否有
libX11
libXinerama
libXcursor
libXtst
rpm -qa|grep libX
(9)确认安装了所有的依赖包后,卸载vmware:
vmware-installer -u vmware-workstation
(10)
点击进入重新安装vmware
3.4.3 vmmon、vmnet 是 unknown
vmmon、vmnet 是 unknown,说明vmmon和vmnet模块无法自动安装,需要手动编译安装。
执行以下命令编译安装:
cd /usr/lib/vmware/modules/source
git clone https://github.com/mkubecek/vmware-host-modules
cd vmware-host-modules
git checkout workstation-16.2.3
make
tar -cf vmnet.tar vmnet-only
tar -cf vmmon.tar vmmon-only
mv vmnet.tar /usr/lib/vmware/modules/source/
mv vmmon.tar /usr/lib/vmware/modules/source/
vmware-modconfig --console --install-all
3.4.4 第一个实参不是一个常量异常
-
运行配置文件:
vmware-modconfig --console --install-all
- 此时如果出现:
In file included from /tmp/modconfig-EEeEV8/vmmon-only/./include/x86desc.h:33:0,
from /tmp/modconfig-EEeEV8/vmmon-only/./include/modulecall.h:34,
from /tmp/modconfig-EEeEV8/vmmon-only/common/task.c:60:
/tmp/modconfig-EEeEV8/vmmon-only/common/task.c: 在函数‘TaskRestoreHostGDTTRLDT’中:
/tmp/modconfig-EEeEV8/vmmon-only/./include/vm_asm_x86.h:70:22: 错误:‘__builtin_choose_expr’的第一个实参不是一个常量
__builtin_choose_expr(__builtin_constant_p(expr), \
^
/tmp/modconfig-EEeEV8/vmmon-only/./include/vm_assert.h:372:22: 附注:in definition of macro ‘ASSERT_ON_COMPILE’
_Static_assert(e, #e); \
^
/tmp/modconfig-EEeEV8/vmmon-only/./include/vm_asm_x86.h:266:7: 附注:in expansion of macro ‘ASSERT_ON_COMPILE_SELECTOR_SIZE’
ASSERT_ON_COMPILE_SELECTOR_SIZE(expr); \
^
/tmp/modconfig-EEeEV8/vmmon-only/common/task.c:726:7: 附注:in expansion of macro ‘SET_TR’
SET_TR(tr);
^
/tmp/modconfig-EEeEV8/vmmon-only/./include/vm_asm_x86.h:69:22: 错误:expression in static assertion is not constant
ASSERT_ON_COMPILE(sizeof(Selector) == 2 && \
^
.......
这个大概率是版本与系统环境不兼容,建议卸载后降低版本重新安装。我就是安装16.2.4版本时出现了这个问题,降低到15.5.7版本后就正常了。卸载参考链接:本人实战记录-
linux下卸载vmware
四、VMWare使用
本人实战记录:
linux下的vmware workstation使用
五、VMWare产品卸载
本人实战记录:
linux下卸载vmware