View Full Version : Vista Home Premium virtual machine in x64 Ubuntu?
NeveSSL 02-28-09, 04:47 PM Hi all!
There are some HTPC features that seem to (for the most part) simply work more easily in Winbloze than in Linux. However, I'm really wanting to have an HTPC/File Server thing going on.
I was wondering what you guys thought about possibly building a x64 Linux machine (probably Ubuntu or Fedora) with plenty of resources to build the basic home server off of and then run a virtual Vista Home Premium machine on top of that to do the actual media stuff?
I've only messed around with virutal machines a little bit, and I'm thinking this could end up being more of a challenge (and more expensive) than just getting Linux to do what I want it to or just have a dedicated machine.
Any thoughts are much appreciated. :)
Brandon
mythmaster 02-28-09, 04:55 PM You can pretty much forget about getting any decent video playback from inside a vm.
What is it exactly that you are trying to do that you believe would be too difficult in linux?
NeveSSL 03-01-09, 12:59 AM Gotcha. That makes sense. VMs are cool, but not without their limits I suppose. :)
Primarily Netflix is a concern. That is part of the whole reason I'm wanting a HTPC. It also seems like you have to jump through quite a few hoops to get Blu-Ray and/or HD-DVD playback and I'm not confident at all in my Linux skills (just yet, anyway... there is but one way to learn, though...).
Brandon
SeijiSensei 03-02-09, 01:08 AM I recommend installing a copy of SMplayer (http://smplayer.sourceforge.net/) on a Windows machine and seeing how well it meets your needs. Because it uses mplayer (http://www.mplayerhq.hu/) as the core engine, the code is fundamentally the same on both Windows and Linux. SMplayer itself is a GUI "skin" for mplayer that offers a wide variety of well-designed controls and options. In addition, SMplayer's developer keeps current (https://launchpad.net/~rvm/+archive/ppa) with improvements to the mplayer code. The mplayer developers themselves largely eschew "releases" and suggest everyone build a personal copy of mplayer from today's code snapshot! (I compile from source fairly often. Nowadays it's almost a no-brainer with the "./configure; make; make install (http://www.tuxfiles.org/linuxhelp/softinstall.html)" series of commands that most standard open-source programs like mplayer adhere to.) Nevertheless, I appreciate having an agent working on my behalf to stay apprised of the ever-changing (almost always for the good) mplayer codebase and conveniently packaging it up for me.
As for virtualization, in your case I'd take the reverse approach. Run 64-bit Vista as the host operating system and Ubuntu as a guest in a VirtualBox (http://www.virtualbox.org/) VM. Let Ubuntu handle all the file-sharing, DNS, web service, mail, database, what-have-you tasks in the background, while you use Windows to watch movies from Netflix.
Running Ubuntu as the guest also gives you the opportunity to play around with Linux and not have to worry you'll do something unfortunate. Once you get an Ubuntu installation working in a VM, you can save a backup copy of the virtual machine's image file. That gives you a fixed starting point that you know works correctly.
In fact, you might consider creating two Ubuntu guests, one to run full-time in the background as a server and another to use as a desktop. You can play around at will with the desktop, yet blow it away and start over if something goes wrong. You can easily fit a text-mode Ubuntu server into 256 MB, maybe less; a decent KDE or GNOME workstation doesn't consume more than a GB. On today's 3-4 GB machines, that still leaves 2 GB or more physical memory for Vista.
NeveSSL 03-02-09, 01:33 AM Thanks for the reply, Seiji. I appreciate it. :)
So it wouldn't be too big of an issue to run a Linux server as a virtual machine? Specifically, is there a way that I could dedicate a resource (such as a NIC or RAID array) to the virtual machine? Maybe I should just build two machines. :D
This may need to be a different thread, but how are things for HTPCs and 64 bit operating systems, specifically a Vista flavor x64?
Brandon
SeijiSensei 03-02-09, 02:46 AM Thanks for the reply, Seiji. I appreciate it. :)
You're welcome! I've been using Linux for a long time now and wouldn't think of using anything else in most circumstances. I do think comfort and convenience matter a lot when it comes to computers, though, so if it's easier to stay in Windows for now, by all means do so.
So it wouldn't be too big of an issue to run a Linux server as a virtual machine?
No, not at all. While the computer industry would like you to think that "servers" are big honking machines with lots of horsepower and "desktops" are rather like toasters, in fact the reverse is true. It takes a lot more resources to play back a video clip than it does to serve files.
For example, I have a small Dell server in my house that handles our email, runs a web server, and provides network services like DNS and both NFS and SMB ("Samba") file-sharing over my local network. It runs CentOS (http://www.centos.org/) 5 and has a whopping 256 MB of memory. It didn't have enough memory to handle all these things and run virus and spam scanning (http://www.mailscanner.info/) software on the email traffic, but otherwise it just hums along. (I now run the scanner on a different box, though adding another 256MB of memory to my home server would have easily fixed the problem.)
On the other hand, I have a similar generation Dell workstation running KDE on Fedora 8 that cannot display H.264-encoded content at 720p because its processor is simply too slow. So I use it as an office machine and have a faster computer connected to my TV.
Specifically, is there a way that I could dedicate a resource (such as a NIC or RAID array) to the virtual machine? Maybe I should just build two machines. :D
The current fascination with virtualization of servers largely makes sense if you're dealing with large server farms. In home or small-office settings, it's often easier to add another box. (Virtualization on the desktop can often make sense if you want to test out different configurations as I described in the earlier post.)
If all you want is a cheap, reliable server that runs Linux, I'd buy a no-frills box like this one from Dell (http://configure.us.dell.com/dellstore/config.aspx?oc=bedwv1e&c=us&l=en&s=bsd&cs=04&kc=segtopic~dell-deals-servers). I've been a happy Dell server customer for quite some time now and so have my clients. I especially like being able to avoid the "Windows tax" and buy a box with no operating system installed. The downside of more boxes, besides a proliferation of cables, etc., is the cost of electricity. Virtualization is definitely the greener approach.
For servers I definitely prefer CentOS, a free "respin" using the source code from RedHat Enterprise Linux. I run Ubuntu or Fedora on the desktop where cutting-edge developments matter more. For servers, I prefer distributions with a long support life span like RedHat or CentOS.
I'm not sure I understand why you'd want to devote specific hardware to the host or guest machine. For network services, the host provides network address translation between the guest OS and the external network just like a firewall router does. As for devices like external hard drives, I simply don't know. Usually the host needs to "see" any physical devices before emulating them to the guest OS, so I don't know if you could make a physical device "private" to the guest OS. You could accomplish this task with network shares, though, since you could ignore the network device in the host but mount it in the guest.
This may need to be a different thread, but how are things for HTPCs and 64 bit operating systems, specifically a Vista flavor x64?
I browsed around a bit to see how well Virtualbox works on x64 systems. In my limited review, it seemed to work fine, even on complex setups like dual monitors (http://ubuntuforums.org/showthread.php?p=6788005). I can't answer the broader question of HTPCs on x64; I have neither an HTPC nor an x64 machine!
NeveSSL 03-02-09, 03:22 AM Thanks yet again for an insightful post. :)
I'm thinking at this point it would probably be best to just have dedicated machines. I have configured a basic server for around $200 that uses a 45w AMD dual core processor (I'll be running it 24/7, so the greener the better because thats more green for me ;) ), a 750g HDD, and a simple motherboard. I would probably configure an HTPC very similarly, just with the addition of a decent HDMI card (or appropriate integrated) and a dual tuner. :)
I would love to have a machine that could be both HTPC as well as Linux server, but I think they would be best separated. On top of the issues already discussed, I would prefer to have as many machines wired as possible and that wouldn't work right now being in an apartment with the server being next to the TV. :)
Thanks again!
Brandon
SeijiSensei 03-02-09, 11:47 AM I'd spring for a second identical disk drive and build a RAID1 array for fault-tolerance.
|
|