Last week, after much waiting by myself, Ubuntu 8.04 LTS came out. Before the release, I didn’t have the time to really mess around much with the BETAs or the last Release Candidate, but the morning it was released, torrenting commenced and went to work.

Got home, burned it to a CD and installed it on my primary Windows workstation (running Vista) using the Wubi Installer.

For those of you not familiar with Wubi, here is the blurb from their website:

“Wubi is an officially supported Ubuntu installer for Windows users that can bring you to the Linux world with a single click. Wubi allows you to install and uninstall Ubuntu as any other Windows application, in a simple and safe way. Are you curious about Linux and Ubuntu? Trying them out has never been easier!”

So basically, you can install Ubuntu into C:ubuntu then when rebooting your machine, you will have another option to boot to besides Windows… The Wubi Installer by default only created a 12gb “container” for the Ubuntu installation. If you plan on actively using Ubuntu under Wubi, make it as large as you can do without, space wise, in Windows. It can get a bit geeky to add more space to the Wubi side after the fact. I didn’t realize it at the time and went with the 12gb, but then I wanted to run XP inside a Virtual Machine, which didn’t leave me much space left. I ended up Googling around and found a method to create a second Wubi disk and copy over your /home/ folder to it and changing your fstab to use it. So I had the 12gb for system stuff and another separate 25gb /home/ disk image.

The best thing about Wubi is that it allows you to test out Ubuntu on your machine without wiping out anything, no re-partitioning, no real impact on your system at all. You do take a slight performance hit since you are running this off a file on the NTFS file system, but the hit isn’t anywhere near as much as running it from VMWare, which doesn’t help if you are looking to see if Ubuntu is truly compatible with your hardware.

First Install as Desktop

Here are my basic system specs of my first install:

Lenovo something…
AMD 64 X2 3800+
2048mb RAM
250gb HDD
nVidia GeForce 8600GT XFX XXX w/ 256mb RAM
22″ Samsung wide screen @ 1680×1050
19″ Samsung @ 1280×1024

The installation was a breeze and all I had to do was set my network information to get online (I don’t use DHCP on my router).

The nVidia “restricted” driver took a few minutes to download and install due to the mass deluge of downloaders hitting Ubuntu’s (and mirror) servers. Response time for all APT-GET queries were a bit slow over the weekend. It calmed down some on Sunday and I was able to get things done quickly.

Setting up the Beryl/XGL effects were easy once the aforementioned driver was enabled, but Ubuntu leaves out the “advanced” configuration options for the effects. Again, googling around, I was able to find the “apt-get” commands to get those utilities installed.

Probably the longest thing to get working was the true dual display.

Just after installing Ubuntu, both monitors had the same output. After installing the nVidia drivers, the secondary screen dropped out, but there was no explanation for it and no setting in the display properties would bring it back. Googling mentioned a program called “nvidia-settings” which I ran and after much tinkering was able to get a solid xorg.conf created to have the 22″ monitor primary and the 19″ as a secondary span to the first.

Needing to work a lot in the Windows world, I keep a Raw XP VM Machine around that is patched (mostly) and ready to unzip and load to install the few Windows based utilities I need like Adobe Photoshop (doesn’t work well under Wine) and Microsoft Expressions/Visual Studio. Installing VMWare Player took a bit of hacking around, but installed fine. I used the secondary monitor to full screen XP while keeping Ubuntu on the primary.

Overall, things are MUCH better under 8.04 than any of the previous Ubuntus in my opinion. Googling around for things was key for me. Be sure to include “8.04” in your search queries to limit the number of older pages from being returned. Some of those instructions are way out of date with 8.04.

Later this week, I am going to try my “dad test” on Ubuntu to see if he can handle it, I did install it on his machine, but had trouble getting his Wireless to connect to one of my many access points (He lives across the street with a WiFi repeater in his office). I think the driver is just flaky.

Might end up just putting an Ethernet bridge on his PC so it’ll just use his ethernet port which looked fine.

Second Install as Server

System Specs:
Dell SC430 Server
Intel Pentium D Dual Core 2.8ghz
1gb RAM
160gb SATA HDD
Integrated Video
17″ Viewsonic LCD

As has been usual with the later Ubuntu builds, Installation was a breeze. This time, I wiped out the parition completely and installed it directly on the box which made it very fast compared to the Wubi install above, which isn’t bad to begin with.

For this installation, I was more server focused, but did not install the “server” version of Ubuntu. I opted to use the same “desktop” version and install all the packages I needed to make it a “server”.

Doing a lot of WordPress Installations, I chose to get a Virtual host WP environment setup.

I’ve been hearing a lot of good about LighttpD lately and decided to apt-get that instead of Apache2.

LighttpD is a VERY fast alternative to Apache2 (up to 50% faster in some cases). Setting it up was as easy as “apt-get install lighttpd” (After removing Apache2).

# apt-get remove apache2.2-common
# apt-get install lighttpd mysql-server php5-cgi php5-mysql

I also grabbed PHP-CGI and did a little tweaking to get lighttpd to parse the PHP files using FastCGI which was not difficult.

# lighty-enable-mod fastcgi

Had to edit the /etc/lighttpd/conf-enabled/10-fastcgi.conf to get my paths correct.

Googling around gave me the conf file lines I needed for the Virtual host config:

For a single hostname like yourdomain.com

$HTTP["host"] == "yourdomain.com" {
server.document-root = "/your/www/path"
}

for anything.yourdomain.com use this…

$HTTP["host"] =~ "(^|.)yourdomain.com$" {
server.document-root = "/your/www/path"
}

Put as many as you need in there. I used a spare domain and pointed *.MyDomain.com over to it and setup a few virtual hosts to test them.

Restart Lighttpd using:

/etc/init.d/lighttpd force-reload

I had a LLMP (Linux, Lighttpd, MySQL, PHP) server setup and ready to go.

Download the latest WP files:

curl http://wordpress.org/latest.tar.gz -o latest.tar.gz

Uncompress them to the virt root of your choice and be sure to chmod the folders correctly so WP can run the setup and create the wp-config.php file.

To make Permalinks (friendly URLs) work, just add this into the lighttpd.conf before (or within) the virtual host directives…

server.error-handler-404 = "/index.php"

This will allow the permalinks to work correctly, mod_rewrite rules are not necessary.

There may be a little more to all this than the above instructions, depending on your configuration. The information provided was to just provide basic guidance.

My plans are to eventually backup all the WP blogs on host on my dedicated server and curl them over to this Ubuntu box, uncompress them, drop and restore the databases and have a mirror of them offsite from the dedicated server in case anything ever happens. This should be easiest enough to do in a few hours in one script file on the server to do the backups and database dumps into one compressed file, then another cron’ed script on the local Ubuntu to curl it down and restore everything. If anything ever goes wrong, just change the DNS for the domains and point them to my local Ubuntu which can be DMZed on my router. 🙂