I got a little ahead of myself today and decided to upgrade to the latest release of Ubuntu. On the release date, no less.
I shelled into my server remotely and executed the required upgrade command (one-liner: sudo apt-get install update-manager-core && sudo do-release-upgrade). The new installer detects if you are running it via a SSH session and automatically spawns a “backup” SSH session on port 9004. The reason for this is if the main SSH connection disconnects, you can continue by using the backup session on port 9004. A very good move, in my opinion. Someone must have been reading my blog 😉
The download process took a little over 2.5 hours, at a pathetic 22 KB/s. An overloaded US Ubuntu server was to blame, but was expected. I normally receive updates from the Ubuntu server at over 600 KB/s. That tells you how overloaded their server was.
The installation itself went smoothly, but for some odd reason ntp was removed upon installation. A quick Google search proved that there were problems with the ntp daemon and client. Again, a recompile of eAccelerator was necessary due to the new PHP version included with Ubuntu 7.10: PHP 5.3.2.
I’ll update this blog post once the ntp issue has been resolved.
Running sudo apt-get install ntp installs the ntp daemon again.
I finally decided to upgrade my Ubuntu Server 6.10 install to the latest version, 7.04 (Feisty Fawn). Out of habit, I now wait a few weeks before upgrading to the latest version of anything to ensure any last minute bugs get worked out.
Best of all, I upgraded the entire OS remotely using SSH. Upgrading your OS remotely is usually not a good idea, but if you know what you’re doing, go for it! Ensure you backup any custom/modified configuration files just in case you press a wrong key during the upgrade! The upgrade worked well, with the exception of recompiling eAccelerator (to work with PHP 5.2.2) and updating a line (see below) of code in WordPress to make everything work smoothly.
Immediately following the upgrade, I noticed that my WordPress blog was loading very slowly and I also noticed random strings of hexadecimal characters at the top of the main blog page.
If you upgrade your server to Ubuntu Server 7.04 and run WordPress 2.1.x, ensure that you change line 832 in wp-includes/functions.php to the following (all on one line):
@header($_SERVER[“SERVER_PROTOCOL”].” “.$header.” “.$text, true, $header);
Once you make the above change, your blog should load normally.
With WordPress 2.2 (released today), the aforementioned WordPress fix is now irrelevant.
Opps. I just checked a few of my older blog posts and quickly realized I neglected to post part 2 of my ‘Configuring Ubuntu – Part 1’ guide.
Well, here it is!
By default, Ubuntu Server installs MySQL and PHP. However, it doesn’t tweak the system for performance. If you run a WordPress blog on your server, you may not realize that your blog could run more efficiently. WordPress relies on both PHP and MySQL. PHP scripts need to be read from a server’s hard drive, parsed by the web server software and then executed. Wouldn’t it be nice if the server could just skip the first two steps and just execute PHP scripts as quickly as plain HTML?
That’s where eAccelerator comes in. eAccelerator is a free, open-source PHP accelerator and cache. I’ve been using it for nearly seven years on personal and commercial servers. In other words, it’s very stable for a free product.
Let’s get started.
Continue reading “Configuring Ubuntu – Part 2”
On October 26, the Ubuntu team released a new version of Ubuntu, 6.10 (aka Edgy). I waited a couple of days for them to work out any last minute bugs, and decided to proceed with the upgrade today.
In the Ubuntu 6.10 / Edgy release notes, Ubuntu recommends the following procedure to upgrade from Dapper to Edgy:
# apt-get dist-upgrade && apt-get dist-upgrade
That will not work. Why? Because sources.list needs to be updated first (and apt-get update needs to be run beforehand).
Continue reading “Upgrading Ubuntu Server 6.06 to 6.10 (Edgy)”
Once I had Ubuntu Server 6.06.1 installed on my new web server, I quickly realized it needed several changes before I could put it online. Hence, this is the first installment in a series of blog entries to help others configure their systems.
If you installed from a CD-ROM and have a working network connection to your Ubuntu system, you should update the sources.list file used by apt-get so that your system won’t prompt you to insert the Ubuntu CD-ROM each time you install a new package:
1. Log in to your system via the console.
2. Run the following command: sudo vi /etc/apt/sources.list
3. Add a # before the following line (use cursor keys to put cursor in front of the line and then press i, followed by #) :
deb cdrom:[Ubuntu-Server 6.06.1 _Dapper … restricted
4. Save sources.list by pressing ‘Esc’, followed by the following sequence of characters to write the file and exit: :wq
Continue reading “Configuring Ubuntu – Part 1”
My web server was down for most of yesterday, for reasons out of my control.
I shelled in only to see one error message upon restarting the Apache web service: Segmentation fault. I checked the last few lines of Apache’s error_log only to see many more errors related to the same problem. It’s one of most dreaded messages one can receive on a Linux box, aside from the dreaded ‘kernel panic’.
A segmentation fault usually means one of two things in the Linux world: a software fault or a hardware fault. So, I set out to determine what the underlying cause was.
Continue reading “Bye Old Server. Hello New Server.”