I have two drives (1 SSD, 1 SATA) in my ThinkPad W510 laptop. One is in a caddy taking up the bay that would normally hold the cdrom.

I need to run Ubuntu 10.04 LTS, and I would like to also run another version of Ubuntu. I might also like to run Windows, and MacOS, if that is possible.

What do you think is the best approach considering the best performance use of the SSD, and minimal loss of support for networking, USB, etc in the guest OSes.

  • Put Ubuntu 10.04 LTS on SSD, and run the other OSes as chroot or virtualize and store their data on the SSD, and put all user data on the SATA drive.
  • Setup dual boot - this is proving to be hard - having to learn grub, and actually get Ubuntu installed on both disks without a cdroom. Doesn't help with getting Windows installed either.
  • Install something else as the base system, and run all systems virtualized or chrooted.

I have only a little bit of experience with virtualization, and none with chrooting or dual booting.

I would use both of the Ubuntu system for extended periods, but generally not at the same time (so dual boot is a possibility.) Windows isn't really necessary, and wouldn't be used much at all.


The question to dual boot or virtualize will really depend upn the specs of your host machine, and the percentage of time that you spend in the various operating systems. If your machine can support decent virtualization, and if you don't need to spend large amounts of time in an alternate OS then I would opt for virtualization.

Dual booting is possible, and getting it all figured out would lead you down a path where you would understand the booting process better, in all of your operating systems, which is never a bad thing. As far as chrooting, I've never heard of using a chroot as a replacement for virtualization / dual booting, which is not to say that it isn't possible; just that I've never heard of it. PErsonally, I've used a chroot to build Gentoo & LFS systems and to repair systems with corrupted boot sectors.

As far as OS X, since you appear to be a PC user, then there is no way that you can legally natively boot into OS X. Until recently, I was under the impression that Apple did not allow their software to be virtualized (legally), but I noticed that Parallels 6 has the option to add OS X Server virtual servers. I was surprised.

  • System is a ThinkPad W510, with 8 gigs of RAM, SSD drive, i7 cpu. It's snappy. I started with Gentoo years ago, but switched to Ubuntu, and skills are getting soft. grub looks very different now. I think I'll go Ubuntu 10.04 LTS at the base, and then consider my next step. For MacOS, I was too under the impression that a MacOS guest under virtualization on a host Linux system was not likely to happen. But, that might be based on old information. – user475119 Jun 5 '11 at 3:21
  • Apple changed their licensing terms during Leopard to allow Mac OS X Server to be virtualized. db.tidbits.com/article/9277 However, you still can't legally virtualize (non) Mac OS X. – peter Jun 5 '11 at 3:29
  • Ubuntu is using Grub2, and I agree that it is not nearly as intuitive as grub was. There might be a way to force a grub install (versus grub 2) to make things simpler. Of course all of these problems are solvable, just depends upon your resolve. – Kirk Jun 5 '11 at 3:42
  • Based on those specs, I think you could comfortably run a couple of VMs. Virtualization will be the path of least resistance for you. – Kirk Jun 5 '11 at 3:44

I would suggest virtualization if your system has the resources to handle it. You'll need 1-2GiB per guest to make things relatively cozy, especially if you intend on running multiples at once. On top of that you'll need the memory for your host OS (no less than 2GiB). So, at minimum, your system should have 4GiB to virtualize 1 or 2 other hosts, and personally, that's pushing it. (My 4GiB iMac could do it, but couldn't switch between the guest and the host well. I added 8GiB more, and it is beautiful now.)

I suggest virtualization for several reasons:

  • Integration between the host and the guest (sooner or later you will need to transfer information easily between the two. Dual booting would make that a pain in the rear.)
  • Consistent virtualized hardware environment, which means that getting OSes set up is far easier (IMO) since you aren't dealing with esoteric hardware. Ubuntu installs just fine under most hosts and work fine with the virtual hardware. You do need the Virtual Guest drivers, but that's a known add-on whereas finding drivers for esoteric (and even relatively standard) hardware is harder to do for some OSes.
  • Segregation from the host. Unless you happen to mount your host's drive in the VM, if something goes wrong (say, a virus), you aren't likely to screw anything up on your host. (That is not to day that Virtual Hosts aren't vulnerable -- I'm sure they are to some degree, but it isn't a typical attack vector.)

Regarding Mac OS X, well, you're in a different world. You might want to go the Darwin route, but that isn't the entire OS, and Apple forbids running Mac OS X on non-Apple hardware in their EULA. Furthermore, the OS does various checks to ensure that it is running on Apple hardware, and the only way around it is to hack it a bit to confuse it. Mac OS X can be virtualized, but only on Apple hardware -- the virtual host will simply pass along the necessary characteristics to the guest in order to permit installation and booting.

So, forget about Mac OS X on your device, unless you're up to the hacking it's going to take (but if you do, go the VM route. Less risk that way of screwing something else up). Otherwise, you should be fine with virtualizing everything else.

As far as chrooting to achieve similar goals, I've never heard of it either. I suppose you could do something funky with *nix distributions this way, but you aren't going to be able to do Windows that way.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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