7

I have the conflict that I do most of my work, software developing and data analysis, in Linux but there are a few applications I have to use which do not run well using Wine (specifically MS Word and PowerPoint cannot import eps figures, Endnote does not display correctly and cannot interface with MS Word).

I currently either make do with Wine or reboot into Windows. This has the huge disadvantage of having to kill all the tasks I am working on when I need to switch to the other OS. I am considering using a VM environment and also just setting up a second desktop with a KVM switch.

What are the advantages and disadvantages of the following 3 setups:

  1. VirtualBox VM with Linux host and Windows guest (I like the idea from this post of the guest having network access, would be wise to occasionally enable the network to perform security updates though?)
  2. VirtualBox VM with Windows host and Linux guest (guest would need regular network access to ssh, rsync, and scp with remote servers)
  3. Two desktop computers connected with a KVM switch for keyboard and mouse, change monitor input setting for multiple monitors (using a cloud service to sync shared files)

I have looked at this similar comparison from 2006, and this somewhat similar question asked in 2012 but would like an updated opinion. Alternatively, if you would like to recommend another option, that may be interesting.

I did try teamviewer to connect to another computer but it seemed slow and I did not have multiple monitor access (that option may be there but I did not find it).

4
  • You should check where are the performance problem. If it is only for word and powerpoint use VirtualBox VM with Linux host and Windows guest. You should have problem to do heavy calculations or to use gpu with the guest system. BTW never thought to give a look to latex and bibtex? – Hastur Apr 10 '15 at 20:19
  • 1
    @Hastur, I actually prefer LaTeX and Bibtex but it complicates collaboration (particularly when your collaborator refuses to use it). We use the track changes and comments features in MS Word especially useful when writing together. Similar behavior could be achieved with LaTeX using a revision controller (svn, cvs, git, etc.) but it would be more complicated (especially the first setup) and a PDF markup tool. I have not yet found a good native PDF markup package for Linux but Foxit in Wine works reasonably well. – Steven C. Howell Apr 10 '15 at 20:26
  • You can also connect the computers without KVM. I used to have the 3rd monitor on my desktop (the potrait one) connected to a WinXP running laptop that shared the keyboard and mouse with my main machine (Ubuntu 12.04 at that time) with x2vnc – Anthon Apr 11 '15 at 3:30
  • 1
    I use multiple system for development and after a painful learning session i spend $500 on the best dual monitor, triple computer KVM and now use three system computers (Hackintosh, Windows, Linux). Each has advantages i have to use and the terrible video emulation was the reason to be unable to use a VM. VM is still for server operations. My systems idle at 15W so it's not even a power bill question anymore. – Lothar Sep 6 '17 at 17:58
8

Virtualization is usually a better choice, rather than "two desktops". But that may not always be true.

First, you must determine if what you want to do can be virtualized. Office products and other such low load things should be just fine. High CPU tasks usually work fine. High ram tasks are usually okay but could be a problem if you don't have the overhead to run both OSes and the ram chewing task at the same time. Tasks that require specific hardware may work, but typically do not, or require complicated configurations. If you can virtualize then it's a question of which way.

I am a fan of Linux hosts and Windows guests. However, it may not be the right way. Generally speaking, Linux is better at being the virtualization host if you're doing normal office stuff. If your trying to get some super special hardware running in the VM, particularly if it needs to interface with some hardware (as mentioned), Windows may be the better host. I also think Windows hosts have a tiny bit better support for GPU emulation for 3D rendering, but I have never seen it make a difference.

So what you're really left with is what is the best tool for the job? Do you spend more "time" in Windows or Linux? That one should be the host, the other the guest. The only thing that should override that (time-based preference) is special hardware needs.

Some quick notes on the methods:

  1. Probably the right choice based on your question. Can share clipboard, and it is usually easier to access Linux Host resources in a windows guest than the other way around. There is no downside (especially if you have virtualization enabled hardware)

  2. Windows is not as stable as Linux in most cases, and if your Host OS crashes you lose both the host and all running guests. That said, Linux is very "used to" begin virtualized, and probably runs better as a guest than Windows does. However, that is not likely to matter for office work. (For example, Windows guest OSes seem to always have networking issues under high load conditions)

  3. Probably the worst way to go these days based on your question. That said, it is the tried and true method. In addition, it is the only choice if you need hardware-level access to something you can not get working on a guest OS.

2
  • I totally oppose this comment. First a KVM dual machine is always better, except for your power bill. Even in 2017 the graphics in the vm is bad, even too bad to use it with modern desktops and apps (all require 3d acceleration, even for drawing characters on the screen). If you have serious work to do it becomes soon unacceptable. Server and occasional software use and testing is fine. Also i disagree with the stigma that linux is better, the opposite is true, Windows has a much better and richer virtualisation and memory subystem, much advanced then linux and it is as stable as linux. – Lothar Sep 6 '17 at 17:54
  • 1
    Referring to Lothar's comment: Stable can mean several things, but one problem with a Windows host is unscheduled updates and reboots. If the original question did not specify Window Server, then unplanned reboots are a given. – frozenjim Jul 3 '18 at 20:55

Not the answer you're looking for? Browse other questions tagged or ask your own question.