Sponsored By Aspose - File Format APIs for .NET

Aspose are the market leader of .NET APIs for file business formats – natively work with DOCX, XLSX, PPT, PDF, MSG, MPP, images formats and many more!

Getting used to working with VMs

Since getting his new desktop a couple o’ weeks ago, the hillbilly’s gone all virtual. I’ve been playing with virtual machines as my primary destination, leaving the host as dumb as I can possible make it. And to be quite honest, it is difficult to make something dumb, which is surprising considering some of the comments from past clients.

One of the things I had hoped to do was keep all my data on the host machine and access it via a shared drive from my VMs. It’s basically the 21st century version of creating an Apps partition and a Data partition. Then I’d use SyncToy to keep that folder up-to-date on an external hard drive as well as the virtual machines themselves. (On a side note: I dearly hope the promise of virtual machines holds true because setting up a new workstation is more mind-numbing than the stuff I have brewing in the still in the basement.)

I’ve run into a couple of issues with this set up. First was a time-sucking annoyance where I wasn’t able to copy documents in the same folder. I.e. Select the document, press Ctrl-C, then Ctrl-V. Kept getting permission errors. I was able to create new documents just fine. It’s one of those annoyances that goes away if you ignore it long enough apparently because I’m no longer able to duplicate it.

The second problem was trying to attach a database to SQL Server from a shared drive. Perhaps it’s possible with a SQL statement but from the GUI, it doesn’t even list network drives.

Problem three: IIS seems to have trouble with web apps using a network drive as well. It had trouble reading the web.config file until I moved the thing locally.

Problem four actually pre-dated problem three. I didn’t actually have IIS installed when I started this odyssey. After I did, it took a while to figure out that I had installed IIS after I had installed .NET 3.0. Hence, none of my WCF services would register. That was solved by running servicemodelreg.exe –r from C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation. It appears to be analogous to aspnet_regiis.

So all in all, it’s been a configuriffic afternoon. I’m still trying to get the hang of booting to various virtual machines. I do NOT like the fact that I can’t change my primary monitor in a VM with VMWorkstation.

This is also my first foray into the 64-bit world and I’m discovering the idiosyncrasies that brings. For example, UltraMon still has some work to do to make it work on Vista 64-bit. The smart taskbar is kinda flaky and the two extra window icons (move to other monitor, maximize across both monitors) don’t appear, though you can click in the general area and get the same effect.

Kyle the Virtual

This entry was posted in Sundry. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://blogs.imeta.co.uk/sstrong Steve Strong

    You might be interested in something that I blogged about this a couple of days ago: http://blogs.imeta.co.uk/sstrong/archive/2009/01/29/589.aspx

  • Scott Bussinger

    I found that the performance of accessing a shared network drive from a VM (I’m using VirtualPC with Vista host and XP VMs) to be pretty poor. I suspect it’s because there’s little to no caching of network drives in the VM. I found it much faster to create a second VHD file to store all my data files and sync them using version control. It made a huge difference in compile times.

  • Doug Wilson

    After having used VMs for my development work for the past year I finally gave up a few weeks ago. Too many unexplained crashes, lockups, etc. Too much of a performance hit too.

    I didn’t use a shared drive/volume though. Instead I used SVN on a local server and kept everything in there, including dependencies and then sync’d the VMs to the server.

  • http://www.tqcblog.com/ Tom Clarkson

    I’ve been trying the vm/shared drive thing as well, but I haven’t been able to get it working quite as well as I’d like, basically because visual studio doesn’t like projects on shared drives, especially web projects.

    The solution I’ve got at the moment is setting up the documents folder etc to a shared drive and having a seperate virtual drive for code – the vmdk for that is only 2GB (compared to 19GB for the system drive) and would be smaller if I didn’t fill it up with database logs. That drive is easy to move between vms or back up, though everything on it is in subversion anyway. Getting at the files from the host doesn’t work at the moment, but I think that’s a mac thing.

    A similar approach would probably solve your sql issue quite nicely – for backups on the host a vmdk file containing a single sql database file isn’t that different from a database file on the host.