Ubuntu server offers a great bundling feature during the installation to install a DNS server, LAMP (Linux, Apache, MySQL, PHP), and various other common packages for Linux servers. Often enough, administrators end up needing to either migrate a system to serve another purpose or add a service onto that server. A lot of those admins then go back to the manual "apt-get install" method of installing each of the packages in the bundle. Fortunately since Edgy, Ubuntu has included the tasksel utility to mitigate this problem. According to the Ubuntu documentation: "Tasksel is a software installation application that is an integral part of the Debian installer. It groups some packages by tasks and offers the user an easy way to install the packages for that task. It provides the same functionality as using conventional meta-packages."
Tasksel allows you to install the LAMP stack, DNS server, as well as the different desktop variations of Ubuntu such as Kubuntu, Xubuntu, and Edubuntu.
To use tasksel, simply jump to a terminal on your server and run as root (or sudo): "tasksel". It will bring up a prompt to select the packages you would like to install. You can use the arrows to scroll through the list and use the space to select a package. Packages with an "*" beside them will be or are already installed. Once you are done selecting your packages, hit tab and then enter to select "OK". Tasksel will begin to use apt to install the packages you have selected.
You can also use "tasksel install