Disclaimer: This is a personal document and is not official or endorsed by VMware. Feedback, suggestions, and edits are welcome.
This document is intended for someone new to Fusion, and possibly someone who is new to Macs in general. It describes basic terminology/concepts, where to find things, and notes on using virtual machines.
If you want to be notified of changes and additions to this document, you can use the "Receive email notifications" action in the sidebar on the left. People can't seem to stop using the comments section inappropriately, so I've locked it. For any concerns about this document, please PM me instead.
Another good resource for beginners is the free eBook Take Control of VMware Fusion 3 (oriented towards Fusion 3, obviously).
More advanced users may be interested in A Power User's Guide to VMware Fusion.
Virtualization software lets you run multiple operating systems at once. A hosted product (such as Fusion, Workstation, Server, and Player) runs on top of another OS, called the host. In the case of Fusion, the host is OS X. The OS (such as Windows XP, Ubuntu 7.04, or most x86 OSes) that you run inside the virtualization software is called the guest.
As a side note and comparison, bare metal virtualization (such as ESX/ESXi/vSphere) gets rid of the host OS to improve performance and reduce security vulnerabilities.
See Glossary of Virtualization (and Computing) Terms for a more complete list.
When Fusion runs a virtual machine, there are actually two processes involved: the Fusion GUI and vmware-vmx. The GUI takes care of things like accepting input and drawing to the screen, while the vmware-vmx process does the heavy work of actually running the guest. If you ever want to see how much CPU Fusion is taking up, remember that you need to consider both processes. vmware-vmx is a root-owned process, so to see it in Activity Monitor you have to choose to view All Processes.
If you force quit Fusion, this only kills the GUI process; the vmware-vmx process continues running. If you really want to force quit all of Fusion, you need to kill vmware-vmx as well. Note: If it's just the guest that's not responding, you can tell Fusion to shut down or restart it by holding option and selecting Virtual Machine > Power Off or Virtual Machine > Reset. This is similar to pulling the power cord on a physical computer.
For non-boot Camp virtual machines, Fusion puts virtual machines (VMs) in "/Users/yourusername/Documents/Virtual Machines/" by default. Boot Camp virtual machines are located in "/Users/yourusername/Library/Application Support/VMware Fusion/Virtual Machines/". You can also see the location of a virtual machine in the Virtual Machine Library by hovering the mouse over the listing - the location should pop up in a tooltip.
Another simple way to locate your VM while open is to Control-Click on the VM windows icon. This will bring up a pop-up box showing all of the enclosing folders to your virtual machine. Clicking on its proximal containing folder will open it in a new Finder window.
VMs are packaged up in bundles a.k.a. packages, which is OS X's way of showing things that really belong together. Other examples of bundles include most applications and installers. Fusion bundles have the extension ".vmwarevm" (OS X may hide this by default). You can examine the contents of a bundle by going to the bundle in the Finder, ctrl-clicking it, and choosing "Show Package Contents"
By default, bundles contain the files that describe a virtual machine. These files include:
Other files are created when you run the virtual machine. These include:
With the exception of Boot Camp virtual machines, VMs are just files (albeit very large ones that happens to be able to run other programs). Because of this, you can back them up by simply making a copy to external media (Warning: FAT32 has filesize limitations) and restore them by copying back. You delete them from your computer by deleting them in the Finder (you can remove them from the Virtual Machine Library by selecting the entry and pressing Delete).
Boot Camp virtual machines are a little different, because instead of having a virtual hard disk, the VM uses the Boot Camp partition. Thus you can't simply copy the virtual machine to make a backup.
Fusion (the application) is distinct from virtual machines. Updating or uninstalling Fusion does not affect any virtual machines you have, just as updating iTunes does not affect your mp3s and updating Word doesn't affect your documents. When changing the version of Fusion (or any VMware product), it's good practice to shut your virtual machines down first (e.g. don't suspend a virtual machine then open it with a different version of Fusion). While it'll probably work, we don't guarantee it.
Important: Whenever you do file operations (move, copy, edit, delete, etc.) to a VM, make sure it is powered down and Fusion isn't running. You don't want to change the data out from under Fusion.
See also Choosing the Right Virtual Machine Settings
When selecting disk size, there are two big considerations. The first is how much space the operating system needs. Some guest OSes need lots of space -- I believe Vista wants 7 GB -- while at the other end of the spectrum, Linux Live CDs don't need any. The other concern is how much space you need. If you're just surfing the web and downloading the occasional file, you might not need much extra space. On the other hand, if you're going to be doing things like working with databases, editing video, compiling large programs, etc., you might want lots more space.
I's OK if you selected a size that's too small - unlike a normal physical disk, it's possible to expand a virtual disk. This is a slightly involved process, and Pat Lee has written a good step-by-step guide Resizing Virtual Disks With Step by Step Instructions (a similar procedure works for other guest OSes). You can also add additional virtual disks later, which is an easier way of increasing space. However, the easiest of all is to get it right from the beginning.
Virtual disks can be monolithic or split, and sparse or preallocated. These options can be found under the Advanced disk options triangle in the Virtual Hard Disk step. It is possible to convert between these options later using vmware-vdiskmanager, but it may require a lot of extra space. The default type is monolithic-sparse. My personal recommendation is split-sparse.
Monolithic disks means the virtual disk is one file, while a split disk means the virtual disk is broken up into chunks of at most 2GB each. The split type should be used any time you want to keep the VM on a limited filesystem (such as FAT32) that does not understand large files. The split type also makes certain operations easier - for example, compacting a monolithic disk requires as much additional space as the entire virtual disk, but compacting a split disk only requires an additional 2GB. In some cases, split disks are also easier to repair (i.e. fewer steps) if something goes wrong.
Sparse disks start off small and grow as needed to the maximum size you specified. Preallocated disks are always the maximum size that you specified. Sparse disks are nice because they don't take up space until they need it, while preallocated disks may avoid fragmentation problems on the host. Sparse disks can also be compacted (say you start off with 4 GB of data, write 6 GB more, then delete 5 GB - you could compact a sparse disk back down to 5 GB) by using VMware Tools in the guest. One caveat is that you can't compact a sparse disk if you have a snapshot.
It's important for the guest to have enough RAM to be able to do whatever it needs to, and also important for the host to have enough RAM to be able to do whatever it needs to. It's a bad idea to allocate too much or too little RAM to the guest. As with choosing virtual disk size, the correct choice depends on the guest OS and what you want to do with the VM. The choice of guest determines the minimum RAM you should give it, and the amount of RAM your computer has determines the maximum RAM you should give the guest. Other considerations include what you plan on doing in the host - if you're going to be running Photoshop, iTunes, Mail, VLC, etc. all at the same time, you might want to consider leaving more RAM for OS X. When the virtual machine is off, you can change the RAM allocation under Virtual Machine > Settings > Memory.
Virtual machines love RAM - once you've tweaked settings, the most cost-effective way to improve virtual machine performance is usually to install more RAM on the host. This has two advantages - you can give more RAM to the guest or OS X. If you give it to the guest, your guest applications can use it. If you give it to OS X, OS X can use the RAM as a cache to improve disk performance in the guest.
If you experience stuttering in iTunes or pauses when switching back and forth between the guest and OS X, try disabling disk caching by choosing VMware Fusion > Preferences > Optimize for Mac OS application performance.
By itself, Fusion has a very low-level view of the world - it sees CPU instructions, not programs; disk blocks, not filesystems; etc. This keeps things simple ("all" we have to do is correctly virtualize hardware without worrying about what's the guest is trying to do), but it makes it hard to do certain things that require higher level knowledge. Some examples include copying files directly into or out of a guest, being more efficient than regular drivers, and being able to tell when the mouse enters or exits the guest. To get around this, Fusion uses a helper in the guest called VMware Tools. Tools gives Fusion the high-level knowledge to take shortcuts and do things it otherwise couldn't.
The general way to install Tools is as follows:
Windows: Tools should install automatically unless you've disabled autorun, in which case you'll have to run D:\setup.exe (or wherever your optical drive is) yourself.
Linux: Installing is a two step process: Unpack and install the tools, then configure them. If you're using a RPM-based distro (e.g. Red Hat), use the .rpm, otherwise use the .tgz by unpacking it and running vmware-install.pl as root. To configure tools, run vmware-config-tools.pl.
More detailed instructions (including instructions for Solaris/Netware/FreeBSD) can be found at http://pubs.vmware.com/guestnotes/
On Windows, open the VMware Toolbox by clicking on the VMware-three-boxes logo ( ) in the taskbar. On Linux, run vmware-toolbox (some options require running as root). In either case, go to the About tab and look for "Version X.y.z, build-NNNNN"
Note: You cannot shrink a disk if it has snapshots.
Open the Toolbox as in the previous section, select the Shrink tab, select the partition(s) you want to shrink, then press the Shrink button. Fusion will think for a while as it figures out which parts of the disk are actual data and marks parts which aren't needed anymore, then ask you for a confirmation. Accept and Fusion will finish shrinking the disk. The entire process may take some time (on the order of an hour), especially if you have a large, empty disk. Other running programs on the host may also slow down the process.
You probably already know you can open an application by opening a document that is associated with the application. Remembering that a virtual machine is still a document (just a very large one that's capable of running other programs), you can do things like putting the VM on the right side of the Dock and launch it in one click.
In 2.0, when you suspend, Fusion remembers the last view mode you used and changes back to it when you resume. So instead of powering off your virtual machine, you can suspend it and next time you come back, it will be in the proper view mode.
In 1.x, things were a little different.
Once you've run a VM in Unity, the .vmwarevm bundle should have a folder named "Applications" that has small helper applications representing guest apps. If you open one of these, it should start the guest program (after powering on the VM and switching to Unity, if these have not already been done). You can also put them in the Dock. So to start in Unity, just start the VM via the helper app you want to use.
An alternative that also allows starting up in fullscreen is to use AppleScript: AppleScript to Run Virtual Machine and switch to Full Screen View or Unity View at Login.
If you go to System Preferences > Accounts > yourusername > Login Items, you can select applications or documents to open at login time. You can of course put a virtual machine here, too.
See HOWTO: Run a Virtual Machine at Boot
First, the caveats: Only one person can be using the virtual machine at a time (and Fast User Switching doesn't count). Suspending (and possibly snapshotting) the VM will probably cause other people to not be able to use the VM.
Important: Whenever you do file operations (move, copy, edit, delete, etc.) to a VM, make sure it is powered down and Fusion isn't running. You don't want to change the data out from under Fusion.
To do this, the main things you need to do are:
Fusion doesn't scan your hard drive for virtual machines, it just remembers ones it's seen before. So in order for the shared VM to appear in another user's Virtual Machine Library, you need to either open the shared VM in Fusion as that user or drag-and-drop it to that user's Library.
Remember that if you've moved the virtual machine from it's original location then you'll need to re-add it to your own Virtual Machine Library so that the new location is taken into account.
Fusion uses the same virtual machine format as Workstation 6 and Player 2. Generally speaking, you should be able to move a virtual machine between these programs.
The fine print is that there's the usual cross-platform caveats (i.e. OS X uses "/Users/yourusername/", Windows uses "C:\Documents and Settings\yourusername\My Documents\", Linux might use "/home/yourusername/"), so absolute paths in the .vmx need to be corrected. Not all features are in all products (e.g. Fusion lacks Record/Replay, Workstation lacks Unity, etc.), and hardware may be a problem too (e.g. Macs don't have a parallel port).
Older virtual machines, such as those created in Workstation 5, should also work in Fusion (and the other current versions), they'll just be missing newer features such as USB 2. You can upgrade older VMs by choosing Virtual Machine > Upgrade Virtual Machine. If you need to use a Fusion-created VM with an older VMware product such as Workstation 5 or Server 1, you need to downgrade the VM. Fusion doesn't have this capability, but Workstation 6 does.
Fusion doesn't scan your hard drive for virtual machines, it just remembers those that it has seen before. If you have an existing VM you'd like to use, you need to open it in Fusion or drag-and-drop it to the Virtual Machine Library window before it will show up there.
Fusion supports spanning the full screen view over multiple displays in guest OSes with a compatible display model. Guests OSes known to work include Windows XP and Vista, Ubuntu 8.04 and above (and presumably any Linux distribution using an Xorg version supporting the same display model). Windows 2000 is known not to work.
Multiple display support is not a VM hardware setting. It is enabled at run-time via the View / Use All Displays in Full Screen menu option.
There is a lot more useful information in various resources. Here's an incomplete list:
But where do you actuall GET a virtual machine file?
Not sure what you mean - you create a virtual machine with Fusion > New..., and the files are located on disk as described in Where to Find Things. You could also download premade virtual machines.
OK, so keeping in mind this a beginners guide... virtual machine = virtual appliance correct? And they arent distributed by VMWare but off of various 3d party web sites and I need to install bittorrent, or for some (like Fedora) I need to have something called VMPlayer?
I was able to get ubutu but just a hint to other beginners out there, my new Macbook PRO it placed it on my desktop, not in /Users/yourusername/Documents/Virtual Machines.. I was able to create that folder manually, drag the files there and reopen it and it now appears in Fusions Virtual Machines Library.
T etung - I am very appreciative of your efforts in creating your Beginners Guide and for your quick response. It all has really helped me ALOT! Thanks - rschramm
virtual machine = virtual appliance correct?
Not quite. A virtual appliance is a kind of virtual machine, but not all virtual machines are virtual appliances. You can make your own virtual machine based off your favorite install CD. Virtual appliances are basically specialized virtual machines (perhaps they're set up as a proxy or firewall or filter or just a plain install or...) which are available for others to use. Hence the term "appliance" - it's already set up for you to use (like a toaster), you don't have to do any assembly.
And they arent distributed by VMWare but off of various 3d party web sites and I need to install bittorrent
It depends on the virtual appliance; some you can get from VMware, some are off various third-party sites, some are torrents.
or for some (like Fedora) I need to have something called VMPlayer?
Player is another VMware product that can run virtual machines. I'd expect Fusion to run just about anything Player can.
I was able to get ubutu but just a hint to other beginners out there, my new Macbook PRO it placed it on my desktop, not in /Users/yourusername/Documents/Virtual Machines
When you download files, the typical default location is the desktop (this varies by browser). When you create a new virtual machine using Fusion, the default is /Users/yourusername/Documents/Virtual Machines/
I am a very new user and I just want to add a windows os to my machine for some small applications (downloading and opening palm files).
Which application/vm do I need?
When you would like to do this on remote machine, managed with Apple Remote Desktop (ARD), then you might nog want to use fast user switching. Several users reported not being able to control the machine with ARD after a fast user switch occurs (VMware fusion doesn't even need to be running).
Why is it that my virtual machine keeps locking out other users? I have the VM and all related files -- except the application itself -- in the users/shared folder and I set all permissions (manually) to read/write for all users. After one user uses the account then the rest of the users are locked out. In finder, I can see that the newest files do not have the same permissions. I am shutting down the Windows XP VM via windows and VMWare. Am I going to have to manually open all newly created files for multiple users to use this (VMWare 1.1). Documentation has not helped so far. Same thing happened after I created a "snapshot." I reverted and unlocked the new files for all users. What am I missing. The share files was created and checked under VMWare initially.
I am trying to starting vm in one click. I use boot camp partition (formatted NTFS) as vm. Is there any way to start vm in one click? Thank you in advance.
Dear etung - I've read your very nice beginner's guide on sharing the VM with other users and I'm wondering whether your solution is specific to Tiger. I'm running a mac mini with 1Gb ram, Leopard 10.5.2, the latest version of Fusion and have installed XP-Pro. I installed fusion as root and cannot get past the error message 'unable to connect to peer process' when using it from a standard username despite following your instructions - I've even re-installed fusion but to no avail. It seems to function fine when I run it as root. Any suggestions gratefully received.
Hi etung! Is it possible to create a VM that will run the Mac OSX 10.4 tiger as the OS? I have a MacPro 8core with OSX Leopard installed and Fusion 1.1.1. My goal is to be able to load and run under Mac OSX tiger, the program Adobe Indesign CS2 which ONLY runs on Tiger and below. I have searched the knowledge base and can not find any help how to documents. Can you give me some pointers or tell me the links to search for?
Please note that only questions specifically related to this document should be posted here. Other questions should be made on the discussion page.
bill_shankley: Don't run Fusion as root.
ivanlee: OS X has some nonstandard quirks that cause a stock install to not run in any current VMware product.
Thanks for the reply. Sorry for posting this in the wrong forum. As a brand NEW user I found your article very informative. Thanks again.
Okay I just purchased a mac, and want to move everything from my PC to my mac. Ive downloaded the converter, but cant get it 2 work right. Do I need one of those Ghost software's on my PC first? If not what am i doing wrong. Also Ive lost my XP CD that came with my computer, what should i do because i know i will need it for Fusion?
HOW DO I ACCESS USER HOST FILES? Regarding "Sharing Virtual Machines Between Users" It worked but I need info on how to access the user host files from within the virtual machine. From the administrator user I can access the host files but I can't figure out how to do it from within the virtual machine on a non admin user log on.
I'm a newby to VMWare Fusion. I currently use Parallels and have been happy with it. How can I go about testing VMWare Fusion without deleting my version of Parallels? Do I need to install a completely new version of Windows XP and therefore double the size of storage on my computer? Is there a document that would direct me on how to do this? I am currently using a 17" MacBook Pro, running 10.5.2 with 4 GB of Ram. Any help would be most appreciated.
Welcome to VMware Fusion! Please note that only questions specifically related to this document should be posted here. Other questions should be made on the discussion page - this will ensure that many more people see your question.
The short answer is that Importer can convert a Parallels virtual machine to one that Fusion can recognize; the just-released beta of Fusion 2.0 can do this directly. It will require more space. If you have further questions (such as how to use these tools), please start a discussion.
I believe I stumbled across a minor bug in the GUI tool that automates the expansion (Part 1) of the virtual machine. It is one of two possibilities (or maybe both). First of all, I needed to use a program called diskTool. Second ... I stupidly named my Virtual Machine as "Engineering Tools (XP-Pro)" and neither program liked the spaces or the parenthesis. I ended up having to change directories to the location of the vmdk file, then rename the file abc, then expand it using using a command line of "/applications/vmware\ fusion.app/contents/macos/diskTool -X 80GB abc.vmdk" and then change the name back again. Once I brushed off my 20 year old UNIX command line skills (8 hours later) the rest of the guide was spon-on target.
I purchased Fusion because an Apple sales person said it was better that Boot Camp for working Windows applications. I am thrown now trying to get Windows application where I need them to operate them with Fusion. I think some of my problem is Fusion is using new terms for something that I have used in the past and it is not computing. Are my virtual machines the applications like Quick Books Pro and Microsoft Streets and trips? I allocated 20 gig for Windows XP Professional when I loaded it, but does that cover the other applications? Keep in mind I would not have bought anything Window oriented if Mac had something comporable, and I bought the Mac Book Pro to start over and rid myself of issues associated with Windows. So I will not use it unless forced because nothing exists for Mac. My next step is downloading those Windows applications allowing me to use the Mac rather than the Dell and I am stuck as to the next step.
1. Are the applications including my Windows operating system each individual virtual machines?
2. I intended to 20 gig allocated for Windows operating system when it was loaded to cover everything wondows oriented. Is that correct, or do I allocate more with new apps? I don't want to rob Mac to pay a part time Windows.
I have a question.
Currently I have a MacPro with 16Gb of Ram. I already have a VM installed of Windows and it works just fine.
The MacPro as many of you know, has 2 ethernet ports. The institution I work for has the mac's in a separate network from the Active Directory Network. My mac connects on the "Mac Network" but I would like my Windows VM to connect to the Active Directory, using the Other Ethernet port on the Mac Pro.
Is this possible? If it is, can someone explain in detail how to do it?
Its important for me to know, because I am writing a report to use VMFusion across the Mac users so that they have 1 computer instead of 2 (they have a mac for work, and use outlook on a PC for email), since I think its retarded to have 2 computers when they could use one.
I allocated 20 gig for Windows XP Professional when I loaded it, but does that cover the other applications?
Allocating 20 GB for the virtual machine is like installing a 20 GB in a new computer - you get 20 GB of space for the operating system and whatever else you want to install.
Are the applications including my Windows operating system each individual virtual machines?
No, they should be installed in your XP virtual machine. Think of a virtual machine as a software computer - you can't run QuickBooks Pro without an operating system.
I intended to 20 gig allocated for Windows operating system when it was loaded to cover everything wondows oriented. Is that correct, or do I allocate more with new apps?
That's correct. While it's possible to expand a virtual disk if you run out of space, I don't think it's what you're asking.
The institution I work for has the mac's in a separate network from the Active Directory Network. My mac connects on the "Mac Network" but I would like my Windows VM to connect to the Active Directory, using the Other Ethernet port on the Mac Pro.
This is possible, but there's currently no UI to control this. See KB 1001875 Note that after editing this file, you'll have to restart the network daemon with
sudo "/Library/Application Support/VMware Fusion/boot.sh" --restart