MMEncode is not available on Linux distros any more.

Not sure what happened to this or why but its no longer available. I used to have a script that used it to convert binary data to text for attachments on emails. Having searched high and low I came up with a new solution – use openssl.

You can do the same that you were doing with mmencode by doing the following

openssl base64 -e < $FILE

Enjoy.

MySQL pegging CPU after the leap second adjustment.

So I find that my MySQL database is running high on CPU all of a sudden. I optimize the tables etc and no difference. I hunt around the internet to find that there seems to be a problem with this years leap second adjustment which sends MySQL into orbit.

The solution reset the date

date -s "`date`"

and it dropped back to normal.

Credit goes to this lady here http://www.sheeri.com/content/mysql-and-leap-second-high-cpu-and-fix

BackupPC Has qw(…) Warnings Since Upgrading Perl

So since upgrading Perl I am presented with qw warnings coming out of the cron job checking that BackupPC is running.

Use of qw(...) as parentheses is deprecated at /usr/share/BackupPC/lib/BackupPC/Storage/Text.pm line 301.
Use of qw(...) as parentheses is deprecated at /usr/share/BackupPC/lib/BackupPC/Lib.pm line 1412.

The way to get rid of these warnings is to enclose qw in parentheses and Perl processes the foreach parameters without warnings.

Like so

Text.pm (Line 301)

#
# Promote BackupFilesOnly and BackupFilesExclude to hashes
#
foreach my $param (qw(BackupFilesOnly BackupFilesExclude)) {
next if ( !defined($conf->{$param}) || ref($conf->{$param}) eq "HASH" );
$conf->{$param} = [ $conf->{$param} ]
if ( ref($conf->{$param}) ne "ARRAY" );
$conf->{$param} = { "*" => $conf->{$param} };
}

Lib.pm (Line 1412)

foreach my $param (qw(BackupFilesOnly BackupFilesExclude)) {
next if ( !defined($conf->{$param}) );
if ( ref($conf->{$param}) eq "HASH" ) {

Checkpassword-0.90 Compilation Error on Fedora Core 3

Ok now next problem that I ran into in trying to get qmail running on the distrubution is that checkpassword-0.90 doesnt want to compile and looking on the web there is 1 arabic website explaining how to get around this which I cant understand but with again more pain I have finally cracked it.

In the source directory of checkpassword you will need to change the error.h file to include errno.h just after the line extern int errno like so…

extern int errno;

#include

then recompile and everything should work. 

POP3: unable to scan $HOME/Maildir?

Ok I run qmail here and funny thing was outlook wasnt logging into it. Thought I had been hacked or something. To see what the problem was I telnetted into my qmail box using

telnet mail.farrowcomputing.com 110

port 110 is the port designated to pop3, then put in your username

user  “username”

then password

pass “password”

and on my system was then seeing “Unable to scan $HOME/Maildir” looked into it and had 6000 spam messages, now the limit I have for mails is quite low so you either need to up it or delete some of the messages from the linux box running qmail or you will need to put the softlimit up, ie.

Try to increase the softlimit for pop3d which is found in your pop3d run script such as /var/qmail/service/pop3d/run (for e.g.): 

blah blah… softlimit -m 2000000 to higher value.