Installing Arch Linux in VMware (systemd)
This article describes how to get Archlinux running in a VMWare virtual machine when you're using systemd as SysV replacement.
Please install the open-vm-tools-modules from the Community repository.
Add the VMWare drivers to your mkinitcpio.conf:
... MODULES="vmsync vmblock vmxnet3 vmwgfx vmw_balloon vmci autofs4 vmghfs" ...
Now you have to rebuild your kernel:
# depmod # mkinitcpio -p linux
In the following steps you have to create some systemd scripts so that the vmblock driver can be used successfully.
Create the following files:
# creates the directory which is used by the vmblock driver d /tmp/VMwareDnD 1777 root root
[Unit] Description=Mount the vmblock device ConditionPathExists=/proc/fs/vmblock/ After=vmblock.conf Requires=vmblock.conf [Mount] What=none Where=/proc/fs/vmblock/mountPoint/ Type=vmblock
[Unit] Description=Mount the vmblock device ConditionPathExists=/proc/fs/vmblock/ After=vmblock.conf Requires=vmblock.conf [Automount] Where=/proc/fs/vmblock/mountPoint/ [Install] WantedBy=multi-user.target
Then you have to enable the mount point in systemd:
# systemctl enable proc-fs-vmblock-mountPoint.automount
VMware user suid wrapper
The following script is responsible that you can resize the window of your virtual machine:
[Desktop Entry] Type=Application Name=VMWare User Agent Exec=/usr/bin/vmware-user-suid-wrapper Icon=system-run Comment=Enable Unity, DnD, etc.
Disable unneeded drivers
The open-vm-tools-modules package installs a configuration file for the vmxnet driver. Either delete the following file or comment the contents:
To make sure the vmxnet driver doesn't get loaded create the following file:
For shared folders to be working you need to have loaded the vmhgfs driver. Simply add the following line to your fstab:
... # enable shared folders .host:/ /mnt/hgfs vmhgfs defaults,ttl=5 0 0
The shared folders will be mounted in /mnt/hgfs/.
Fix for problems
Mouse not working as expected
If you have the problem that mouse clicks are not registered in some programs you can try the following: edit /etc/X11/xorg.conf.d/10-evdev.conf and comment out the section with the identifier evdev pointer catchall [xf86-input-vmmouse does not work expected]