环境说明
[malin@malin-pc ~]$ lsb_release -a
LSB Version: n/a
Distributor ID: ManjaroLinux
Description: Manjaro Linux
Release: 20.2
Codename: Nibia
[malin@malin-pc ~]$ uname -a
Linux malin-pc 5.9.11-3-MANJARO #1 SMP PREEMPT Sat Nov 28 09:08:57 UTC 2020 x86_64 GNU/Linux
安装步骤
1.安装基础环境
[malin@malin-pc ~]$ sudo pacman -S yay
warning: yay-10.1.1-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (1) yay-10.1.1-1
Total Installed Size: 7.97 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n] Y
(1/1) checking keys in keyring [##################] 100%
(1/1) checking package integrity [##################] 100%
(1/1) loading package files [##################] 100%
(1/1) checking for file conflicts [##################] 100%
(1/1) checking available disk space [##################] 100%
:: Processing package changes...
(1/1) reinstalling yay [##################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
[malin@malin-pc ]$ sudo pacman -S base-devel
:: There are 24 members in group base-devel:
:: Repository core
1) autoconf 2) automake 3) binutils 4) bison 5) fakeroot 6) file 7) findutils 8) flex
9) gawk 10) gcc 11) gettext 12) grep 13) groff 14) gzip 15) libtool 16) m4 17) make
18) pacman 19) patch 20) pkgconf 21) sed 22) sudo 23) texinfo 24) which
Enter a selection (default=all): 5
resolving dependencies...
looking for conflicting packages...
Packages (1) fakeroot-1.25.3-1
Total Download Size: 0.07 MiB
Total Installed Size: 0.13 MiB
:: Proceed with installation? [Y/n] Y
:: Retrieving packages...
fakeroot-1.25.3-1-x86_64 70.2 KiB 33.8 KiB/s 00:02 [################################] 100%
(1/1) checking keys in keyring [################################] 100%
(1/1) checking package integrity [################################] 100%
(1/1) loading package files [################################] 100%
(1/1) checking for file conflicts [################################] 100%
(1/1) checking available disk space [################################] 100%
:: Processing package changes...
(1/1) installing fakeroot [################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
2.安装依赖
[malin@malin-pc ~]$ sudo pacman -S fuse2 gtkmm pcsclite libcanberra
warning: fuse2-2.9.9-4 is up to date -- reinstalling
warning: gtkmm-1:2.24.5-4 is up to date -- reinstalling
warning: pcsclite-1.9.0-1 is up to date -- reinstalling
warning: libcanberra-0.30+2+gc0620e4-3 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (4) fuse2-2.9.9-4 gtkmm-1:2.24.5-4 libcanberra-0.30+2+gc0620e4-3
pcsclite-1.9.0-1
Total Installed Size: 8.92 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n] Y
(4/4) checking keys in keyring [##################] 100%
(4/4) checking package integrity [##################] 100%
(4/4) loading package files [##################] 100%
(4/4) checking for file conflicts [##################] 100%
(4/4) checking available disk space [##################] 100%
:: Processing package changes...
(1/4) reinstalling fuse2 [##################] 100%
(2/4) reinstalling gtkmm [##################] 100%
(3/4) reinstalling pcsclite [##################] 100%
(4/4) reinstalling libcanberra [##################] 100%
:: Running post-transaction hooks...
(1/3) Reloading system manager configuration...
(2/3) Reloading device manager configuration...
(3/3) Arming ConditionNeedsUpdate...
[malin@malin-pc ~]$ sudo pacman -S gcc linux-headers
warning: gcc-10.2.0-3 is up to date -- reinstalling
warning: linux59-headers-5.9.11-3 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (2) gcc-10.2.0-3 linux59-headers-5.9.11-3
Total Installed Size: 195.58 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n] Y
(2/2) checking keys in keyring [##################] 100%
(2/2) checking package integrity [##################] 100%
(2/2) loading package files [##################] 100%
(2/2) checking for file conflicts [##################] 100%
(2/2) checking available disk space [##################] 100%
:: Running pre-transaction hooks...
(1/1) Save Linux kernel modules
:: Processing package changes...
(1/2) reinstalling gcc [##################] 100%
(2/2) reinstalling linux59-headers [##################] 100%
:: Running post-transaction hooks...
(1/4) Arming ConditionNeedsUpdate...
(2/4) Updating module dependencies...
(3/4) Restore Linux kernel modules
==> Warning:
-> Kernel has been updated. Modules of the current kernel
-> have been backed up so you can continue to use your
-> computer. However, the new kernel will only work
-> at next boot.
(4/4) Updating the info directory file...
[malin@malin-pc ~]$ yay -S --noconfirm --needed ncurses5-compat-libs
# 有报错,忽略即可
3.安装VMware Workstation
[malin@malin-pc VM16]$ yay -S --noconfirm --needed vmware-workstation
:: There are 6 providers available for vmware-workstation:
:: Repository AUR
1) vmware-workstation 2) vmware-workstation-tech-preview 3) vmware-workstation11 4) vmware-workstation12 5) vmware-workstation14 6) vmware-workstation15
Enter a number (default=1): 1
:: Checking for conflicts...
:: Checking for inner conflicts...
[Aur:2] vmware-keymaps-1.0-1 vmware-workstation-16.1.0-1
2 vmware-keymaps (Build Files Exist)
1 vmware-workstation (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
:: PKGBUILD up to date, Skipping (1/2): vmware-workstation
:: PKGBUILD up to date, Skipping (2/2): vmware-keymaps
2 vmware-keymaps (Build Files Exist)
1 vmware-workstation (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
:: (1/2) Parsing SRCINFO: vmware-keymaps
:: (2/2) Parsing SRCINFO: vmware-workstation
==> Making package: vmware-keymaps 1.0-1 (Fri 25 Dec 2020 04:32:36 PM CST)
==> Retrieving sources...
-> Found vmware-keymaps-1.0.tar.gz
==> Validating source files with sha256sums...
vmware-keymaps-1.0.tar.gz ... Passed
==> Making package: vmware-workstation 16.1.0-1 (Fri 25 Dec 2020 04:32:37 PM CST)
==> Retrieving sources...
-> Found VMware-Workstation-Full-16.1.0-17198959.x86_64.bundle
-> Found vmware-bootstrap
-> Found vmware-vix-bootstrap
-> Found config
-> Found configure-initscript.sh
-> Found vmware-environment.sh
-> Found vmware-networks-configuration.service
-> Found vmware-networks.service
-> Found vmware-usbarbitrator.service
-> Found dkms.conf.in
-> Found Makefile
-> Found vmmon.patch
-> Found vmnet.patch
==> Validating source files with sha256sums...
VMware-Workstation-Full-16.1.0-17198959.x86_64.bundle ... Passed
vmware-bootstrap ... Passed
vmware-vix-bootstrap ... Passed
config ... Passed
configure-initscript.sh ... Passed
vmware-environment.sh ... Passed
vmware-networks-configuration.service ... Passed
vmware-networks.service ... Passed
vmware-usbarbitrator.service ... Passed
dkms.conf.in ... Passed
Makefile ... Passed
vmmon.patch ... Passed
vmnet.patch ... Passed
==> Making package: vmware-keymaps 1.0-1 (Fri 25 Dec 2020 04:32:40 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found vmware-keymaps-1.0.tar.gz
==> Validating source files with sha256sums...
vmware-keymaps-1.0.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
-> Extracting vmware-keymaps-1.0.tar.gz with bsdtar
==> Sources are ready.
==> Making package: vmware-keymaps 1.0-1 (Fri 25 Dec 2020 04:32:42 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Entering fakeroot environment...
==> Starting package()...
==> Tidying install...
-> Removing libtool files...
-> Purging unwanted files...
-> Removing static library files...
-> Stripping unneeded symbols from binaries and libraries...
-> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "vmware-keymaps"...
-> Generating .PKGINFO file...
-> Generating .BUILDINFO file...
-> Generating .MTREE file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: vmware-keymaps 1.0-1 (Fri 25 Dec 2020 04:32:43 PM CST)
==> Cleaning up...
-> vmware-keymaps not satisfied, flushing install queue
loading packages...
resolving dependencies...
looking for conflicting packages...
Packages (1) vmware-keymaps-1.0-1
Total Installed Size: 0.06 MiB
:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring [################################] 100%
(1/1) checking package integrity [################################] 100%
(1/1) loading package files [################################] 100%
(1/1) checking for file conflicts [################################] 100%
(1/1) checking available disk space [################################] 100%
:: Processing package changes...
(1/1) installing vmware-keymaps [################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Making package: vmware-workstation 16.1.0-1 (Fri 25 Dec 2020 04:32:45 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found VMware-Workstation-Full-16.1.0-17198959.x86_64.bundle
-> Found vmware-bootstrap
-> Found vmware-vix-bootstrap
-> Found config
-> Found configure-initscript.sh
-> Found vmware-environment.sh
-> Found vmware-networks-configuration.service
-> Found vmware-networks.service
-> Found vmware-usbarbitrator.service
-> Found dkms.conf.in
-> Found Makefile
-> Found vmmon.patch
-> Found vmnet.patch
==> Validating source files with sha256sums...
VMware-Workstation-Full-16.1.0-17198959.x86_64.bundle ... Passed
vmware-bootstrap ... Passed
vmware-vix-bootstrap ... Passed
config ... Passed
configure-initscript.sh ... Passed
vmware-environment.sh ... Passed
vmware-networks-configuration.service ... Passed
vmware-networks.service ... Passed
vmware-usbarbitrator.service ... Passed
dkms.conf.in ... Passed
Makefile ... Passed
vmmon.patch ... Passed
vmnet.patch ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
==> Starting prepare()...
Extracting VMware Installer...done.
==> Sources are ready.
==> Making package: vmware-workstation 16.1.0-1 (Fri 25 Dec 2020 04:33:04 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Entering fakeroot environment...
==> Starting package()...
==> Patching vmmon module for DKMS
patching file Makefile
==> Patching vmnet module for DKMS
patching file Makefile
==> Tidying install...
-> Removing libtool files...
-> Purging unwanted files...
-> Removing static library files...
-> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "vmware-workstation"...
-> Generating .PKGINFO file...
-> Generating .BUILDINFO file...
-> Adding install file...
-> Generating .MTREE file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: vmware-workstation 16.1.0-1 (Fri 25 Dec 2020 04:33:13 PM CST)
==> Cleaning up...
loading packages...
resolving dependencies...
looking for conflicting packages...
Packages (1) vmware-workstation-16.1.0-1
Total Installed Size: 828.77 MiB
:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring [################################] 100%
(1/1) checking package integrity [################################] 100%
(1/1) loading package files [################################] 100%
(1/1) checking for file conflicts [################################] 100%
(1/1) checking available disk space [################################] 100%
:: Processing package changes...
(1/1) installing vmware-workstation [################################] 100%
==> Before using VMware, you need to reboot or load vmw_vmci and vmmon kernel modules (in a terminal on root: modprobe -a vmw_vmci vmmon)
==> You may also need to enable some of these services:
- vmware-networks.service: to have network access inside VMs
- vmware-usbarbitrator.service: to connect USB devices inside VMs
Optional dependencies for vmware-workstation
linux-headers: build modules against Arch kernel [installed]
:: Running post-transaction hooks...
(1/6) Reloading system manager configuration...
(2/6) Arming ConditionNeedsUpdate...
(3/6) Install DKMS modules
==> dkms install --no-depmod -m vmware-workstation -v 16.1.0_17198959 -k 5.9.11-3-MANJARO
==> depmod 5.9.11-3-MANJARO
(4/6) Updating icon theme caches...
(5/6) Updating the desktop file MIME type cache...
(6/6) Updating the MIME type database...
4.配置启用服务
[malin@malin-pc VM16]$ sudo systemctl enable vmware-networks.service vmware-usbarbitrator.service
[malin@malin-pc VM16]$ sudo systemctl start vmware-networks.service vmware-usbarbitrator.service
5.加载VMware模块
[malin@malin-pc VM16]$ sudo modprobe -a vmw_vmci vmmon
6.启动Workstation验证安装成功
其他可能用到的命令
卸载Workstation
[malin@malin-pc VM16]$ sudo vmware-installer -u vmware-workstation
参考文章
https://blog.csdn.net/gandongusa/article/details/104220745
https://wiki.archlinux.org/index.php/VMware#VMware_bundle
https://aur.archlinux.org/packages/ncurses5-compat-libs#pinned-547799