9 members have voted
Like alot of people, I still use Windows XP for running my work-related programs. I know, lost in the 90's, but it works well for me.
About a year ago, I had a PC crash that set me back severely. I didn't lose any data - for years now, I've kept all my project data in a single folder, and copy-pasted to my backup hard drive regularly. However, it took three days to reinstall all the software after I recovered the PC.
That got me thinking - there's got to be an easier way to do this.
As the first entry on this blog describes, I've dabbled with Linux for a while, and with some sound advice, I decided to make the leap. I wiped Windows from my PC and installed Linux Mint 11. Then I downloaded VMware Player, created a new Vitrual Machine, and installed XP on that.
I was prepared for a raft of headaches arising from this - oh no, linux! oh no, vmware! - hardware issues, software issues, pain, hate, discontent! What I got was - nothing at all. No problems, no issues. The whole thing ran magnificently. Best of all, I can now back up my entire windows virtual machine to my backup drive.
Why is this so grand, you ask? Because my work PC is now essentially indestuctable. I can drop my laptop in the swimming pool, buy a new one, load Mint and VMware, drag-drop my saved VM into my home directory, and get right back to work. Alternatively, I can upgrade to a new pc and get rolling equally fast.
In the process, I've learned a few things, so if you decide to go this route, you may find these experiences helpful -
1. You can't do this with a netbook, at least not an Acer. Not enough ram, and atom chips lack the needed horsepower. Get a laptop with a 64-bit architecture, that you can upgrade to at least 8 Gig of Ram, and a hard drive large enough to accomodate everything you'll need. On the ram side, get as much as you can - mine has 5 gig, and I'll be upping it to 8 gig after the holidays.
2. The temptation is to use a minimalist distro, so you can allocate maximum resources to the VM (where you are doing all the work, after all). Resist this. I've played with Puppy, DSL, Bodhi, and Mint LXDE, and what you gain in performance for the VM is neglible, particularly in relation to the difficulty of using a minimal distro (unless you're into that kind of configuration headache).
Choose something that provides all you need up front. Linux Mint is an excellent option - it's based on the widely used Ubuntu, but includes alot of extras that Ubuntu makes you find yourself. I'm using Pinguy OS, which is derived from Linux Mint, and offers even more eye candy - who wants an ugly desktop?
3. As you can probably guess, I tried a lot of distros. Everybody makes a big whoop about live cd and live usb, but I found testing them that way to be a little pointless - you can't add software (need to test with VMware) and performance lags going that route, so you don't get a true flavor of what you'll have when installed. Apart from seeing if you like the screen, you'll pretty much have to install it to try it out.
So the first time you go to set up linux, create a home partition on your hard drive. When you install most distros, you'll have the option to assign this partition as your home directory. You can install the new system into the rest of the drive, and usually not have to move your important personal files around.
WARNING - that's not fool-proof, so make sure you back up your files first. If it works, it will save you alot of time and aggravation. But if something gums up, it'll kill you if you haven't backed up first.
4. When creating your Windows VM, dedicate some thought to division of responsibility. Simply put, if it doesn't need to be in the VM, put it in the linux host instead. I have about 2 gig of PDF reference files that used to be under windows, that now rest comfortably in my linux home directory, outside my VM. Accessing them is a breeze, with or without windows open, and it keeps the VM smaller. When you do run a backup, you can just backup the contents of the home directory - drag, drop, done - and preserve everything you need, including your VM and external files.
On the hardware side, 99% of everything I've tried has worked great. The most obscure thing I use is PCanOpen Magic Pro, with a USB adapter, and it worked right out of the box. I use an Iconcepts USB to serial adapter for most programming jobs, and it runs flawlessly.
Oddly, the only thing I've had trouble with is a Unitronics 1040 PLC - can't do direct USB to the panel. Apparently, there is a known issue with the linux driver for the usb-serial chip Unitronics used in this device. It's a linux issue, not a Uni issue (just to make that clear). So I just use my usual serial port adapter instead - no problems there.
Detailed instructions for how to do all of this are readily available on the web. Personally, I've found it a huge help (already recovered once [me and my distro hopping]).
Best of Luck, and remember - backups are your friend. This mainly about making them more complete and portable.