Joost.cx
Personal blog
Personal blog
Sep 27th
The other day our IMAP server (Courier) became unresponsive.
You’d connect using thunderbird and it would just sit there.
No errorlogs (/var/log/mail.*)
After some ngrep’ing (ngrep port 143) I discovered these messages from the server to the client:
BYE Clock skew detected. Check the clock on the file server
This happens as soon as the create-stamp of files start lagging +/- 30 seconds from your system time.
To test, run the following command:
date && touch test && stat test
This results in something similar to this:
Mon Sep 26 15:38:06 CEST 2010 File: `test' Size: 0 Blocks: 8 IO Block: 4096 regular empty file Device: fd01h/12765d Inode: 4956823 Links: 1 Access: (0664/-rw-rw-r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2010-09-26 15:38:06.000000000 +0100 Modify: 2010-09-26 15:38:06.000000000 +0100 Change: 2010-09-26 15:38:06.000000000 +0100
Note that the first line is the system time, and the last 3 lines are the acces/modify/change times of a file being created in that exact same moment.
If your fileserver and mailserver’s systemtime’s are lagging behind, these will start to differ.
More than 30 seconds will result in the above error message by Courier IMAPd
As the error message is not propagated to the end-user, this may take some time to figure out.
Another way of testing for this condition is to ‘telnet mail.example.org 143′ and enter the line ’0 username password’. This will give you the error message if the clock-skew is detected.
The simple solution is to run an ntpd on all hosts (and make sure it keeps running
)
Sep 26th
Following a nice article on UbuntuGeek, here is a quick and easy way to install a theme-pack:
sudo add-apt-repository ppa:bisigi sudo aptitude update sudo aptitude install bisigi-themes
Head over to System->Preferences->Appearance to select one of the newly installed themes.
Sep 22nd
Pidgin is an excellent instant messenger available for Windows, Mac OS X and many Linux distributions. You can extend it’s features by adding plugins.
One thing that Pidgin does by default is show you bubble notifications on new incoming messages while the chat window does not have the focus. This can be useful, but while trying not to get interrupted to much it’s better to disable it.
You can do this by opening up the Tools->Plugins (CTRL+U), Now untick the ‘Libnotify Popups’ plugin. Restart Pidgin to enjoy a less uninterrupted day.
Jul 27th
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_US.utf8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_MESSAGES to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory
On Debian based systems (including Ubuntu), simply run:
apt-get install locales
dpkg-reconfigure locales
Finally select ‘en_US.UTF-8′ from the list, and make it default.
Jul 13th
I’m reading The 4-Hour Workweek: Escape 9-5, Live Anywhere, and Join the New Rich by Tim Ferris.
Primary insights:
I highly recommend you to check it out!
Jul 12th
Highly memorable TED’s performance of Malcolm Gladwell about choice:
Jul 12th
This post is here to support a bug-report on the excellent APC (Advanced PHP Cache). I’ve spent some time with Hongliang to narrow it down to the following cause and minimal testcase.
Apparently you can not have static class properties pre-initialized to ‘array()’. These will result in the following apache2/error.log entries:
[Mon Jul 12 11:40:47 2010] [error] [client x.x.x.x] ALERT - possible memory corruption detected - unknown Hashtable destructor (attacker 'x.x.x.x', file '/var/www/apcbug.php', line 6)
Read on for further details and example-code to trigger the problem.
Jul 10th
Here’s a list of WordPress plugins that you’ll need to improve your SEO results:
Generates nice sitemap.xml and robots.txt files based on your posts, pages, and other content. You’ll need these files in order to inform Google about your content so the Googlebot can find and index it more easily.
After you have installed the plugin, head over to your dashboard and open up the ‘Settings’ tab and open the XML-Sitemap option. Here you can configure the behaviour of the plugin.
For example, you can tell it to automatically notify Google, Bing, Aks and Yahoo about your new sitemap. You can tell the plugin where to put the generated files, in your webroot, or otherwise (make sure you give these files the proper permissions).
Also you can tell the plugin to ignore certain pages, tags, categories, etc. Using the change-frequency settings you can hint the crawlers about how frequently your site should be checked for updates.
After you’ve configured all the settings you can ‘rebuild the sitemap’, which generates the sitemap.xml file, the robots.txt file and informs the search engines about your new sitemap.
This plugin lets you connect your WordPress installation to various webmaster services (Google, Bing, Yahoo, Alexa and Blogcatalog) and analytics services (Google, Quantacast, Clicky and Compete).
Needless to say, an account at Google Analytics or similar service is of huge assistance to improving your SEO results.
Additionally, the plugin lets you submit sitemaps to Google, Bing, Yahoo and Ask.
As the previous plugin combined webmaster and analytics into one, this plugin provides a host of options for improving your SEO results. You can setup the plugin in the Dashboard Settings.
Jul 10th
One of Google’s little secrets is Google Tasks. A very simple, but effective personal task list management tool.
You’ll have access to Google Tasks from within Gmail, Google Calendar and iGoogle.
When Google Tasks really shines is when you combine it with the Android application GTasks. GTasks is available on the Android Marketplace free of charge.
GTasks is an unofficial client to Google Tasks, but one that does it very well. It let’s you create new tasks on existing lists, and it let’s you create multiple lists.
For example, I have lists like:
As with all Google’s products and services, your lists are stored ‘in-the-cloud’. This way you make sure your data is accessible from everywhere, and you can rest assured that your carefully managed life won’t derail as soon as you loose/break/smash/eat/etc your mobile phone.