I want a lightweight Linux VM that I can run with VirtualBox on Windows so I can test how to deploy PHP apps, Mono apps, etc. I don't need the UI and was thinking of going with the Ubuntu server ISO. Is that a good choice? I know I can also download a ready-made VM and it's tempting. What does the community think?
Highly recommend ubuntu server. The server mode will not put much that you don't really need, if anything. I run ubuntu on several servers and have always been happy with it.
You'll also find tons of online support that is relevant to your distro. Linux advice generally translates from one distro to the next, but directory paths are often different. Ubuntu has a huge user base, which generally means an easier time figuring out what's wrong.
Go to the SuseGallery and do a quick search for Mono and you will find JEOS Mono ASP.net which is already setup for most of what you want. It is already a VM, just download and go. It is what I have just started using for some ASP.net migration trials on Windows with VirtualBox. You will need to start Apache. You will want to set up port forwarding, I used the following commands to open SSH and HTTP traffic:
For starting with Linux in a VM, I recommend Ubuntu. For a server, forget Ubuntu Server and use Debian instead. I used both of them, so don't judge me please.
If you install Debian, install just clean Debian -> CLI and nothing else. It boots very quickly and consumes just a few MB of RAM. (x32 was taking only 16-32Mb of RAM and x64 was taking about 48-80Mb when it boots up). Whatever you need, you can just install it later and it is still very quick, and it takes almost no memory. Ubuntu derives from Debian. So if your Debian has any problems, you can solve them on the Ubuntu forums, which is a big advantage.
When comparing Debian and Ubuntu Server: Ubuntu Server boots slower/later. Consumption of RAM was much bigger on Ubuntu Server when comparing it to Debian. Also, if you do a clean install of Ubuntu Server, it will install two to three hundred packages, while Debian only installs 50 to 90. Ordinary Ubuntu installs about 1300 packages, and ordinary desktop Debian installs 900 to 1100 packages.
Ubuntu Server uses newer versions of packages, but it also complicates installations and compilation of some stable apps. If you want a stable server and want to maximize free RAM, choose Debian instead.
That's my experience. I'm not saying not to use Ubuntu at all, but for servers I'd favor Debian even if you're new. On desktops I had problems with Debian, while APT installations from the web were working without a problem on Ubuntu. Ubuntu also has more packages and newer packages. On the other hand, when I tried to autoremove some libraries on Ubuntu it installed absolutely everything.
Nowadays I use Lubuntu desktop in Virtualbox. If you hate the slow speed of Ubuntu but don't want to use Debian, use Lubuntu. It means "Low Ubuntu" and is meant for slow PCs, so it' sfaster than ordinary Ubuntu. I think (but I'm not sure) that Lubuntu uses the same packages as Ubuntu. Before Lubuntu I used Xubuntu, because it was faster than Ubuntu as well.
Also, Ubuntu needs about 4.5GB of space. For debian there is 2GB partition enough. We have one small VM for teamspeak, Ventrillo and so on. Only 256 MB RAM, x32 Debian and a 2GB partition - enough, that's all. I can tell you - this is most stable, it is not newest, but for server - greatest option for me.
I ran a few tests to check CPU power under Virtualbox, KVM, VMware server 1 and VMware server 2.
The fastest is KVM, then Virtualbox, VMware server 2, VMware server 1, and finally QEMU. KVM has the smallest cost for the CPU. It takes less % of cpu to virtualize power for VM then others, because KVM is a module inside the Linux kernel. The others are just applications running on OS layer.
So if you want to virtualize with bigger power and small performance degradation, use KVM. I didn't try to test VMware ESXi and Citrix Xenserver application performance. But, if you want to use a bare metal hypervisor, the fastest will be Xenserver when using Linux-only VMs. If you want to use Windows VMs and Linux VMs and you care about performance, use ESXi.
The problem is that if you want to use KVM with its performance, you need to have CPU with Intel VT-X or AMD-V instructions. KVM can run in a different mode without these instructions. bude it is too difficult to set it up. Virtualbox can use VT-X or AMD-V and it is really user friendly. VMware server 2 knows it only experimentally; you need to set it up through a command, and VMware server 1 is slower. I never tested VMware player, it is too low-end for me. There might be a performance difference between VMware server 2 and Virtualbox, but options for settings are pretty low for me, and when choosing between Virtualbox or VMware player, I would take Virtualbox.
I'd recommend using VMWare server and any distro (I happen to use CentOS). The reason is that there are hundreds of pre-built VM images available on the VMware appliances website. VMware's a good virtualisation platform and is free.
for example: Ubuntu LAMP stacks in various flavours.