MSN : get rid of Backdoor.Generic3.SAT
If you got this virus (or know someone who did), and it is spreading to all of your MSN contacts with something like the following message :
hey How are you???? this is ur pic rite?!<br /> http://www.msn- gallery.com/gallery.php?user=some_nickname.jpg
or in French something like :
http://msn-friends. iquebec.com/?photo=some_nickname<br /> ta tof fais koi sur ce site :P
Then you can use the following article (there is a removal tool) to get rid of it : How to Remove MSN Virus Project 1/ Generic2.EXO / Backdoor.Generic3.SAT
dsh : a distributed shell
A common problem when you deal with a pool of servers (clusters or server farms, you name it) is to execute the same command line on each server. It is usual to solve this with a “for” construct such as :
for i in server1 server2 ; do ssh $i "uname -a"; done
But this is basically re-inventing the wheel everytime. Here comes Distributed Shell (DSH).
Linux : Clusters, Vitualization, High Availability, Load balancing
I’m back from a 3-day-training about clusters with Linux which was pretty exciting, and here are the main points which were covered :
- Vitualization with Xen
- Sharing data with GFS / GNBD
- Clusters with RedHat Cluster Suite
- Load Balancing with Linux Virtual Server (LVS)
Perl : Convert time from Epoch to local time

This little Perl one-liner can get handy when you need to translate “time in seconds since the Epoch” (for example in logs) to local time :
% perl -e 'print scalar(localtime(1202484725)), "\n";'<br /> Fri Feb 8 16:32:05 2008<br /> %
This was pretty useful today when browsing through Nagios event logs, where times are given in seconds from the Epoch.
By the way, the Epoch is defined as 00:00 UTC on January, 1st, 1970.
ITIL: What is the CAB ?
ITIL Methodology advises that every RFC (Request For Change) be run through the CAB (Change Advisory Board).
What’s that all about, and why ? Read on !
Linux : Using loop devices (eg : mounting an ISO file)
If you downloaded an ISO file and you want to mount it into your filesystem, you can proceed as follows :
spaghetti% sudo losetup /dev/loop0 cdrom.iso<br /> spaghetti% sudo mount /dev/loop0 /mnt<br /> spaghetti% ls /mnt<br /> Autorun.inf setup.exe setup.ico<br /> spaghetti%<br /> [...]<br /> spaghetti% sudo umount /mnt<br /> spaghetti% sudo losetup -d /dev/loop0
This will use the feature known as “loop devices”, which lets you use a file as a device, and subsequently mount it as it would be one.
Perl : A module to play with a GSM mobile
As you might have read in my previous post about accessing your cell phone with the AT-commands under Linux.
If not, you might want to start there for a little context.
I finally wrote and released on CPAN a Perl module which will help to automate cell phone operations such as saving/restoring the phonebook or sending an SMS.
Examples are included in the documentation. I believe I made it easy to use, but let me know if I’m wrong 😀 .
Linux + GSM : How to access your cell phone innards with Linux
This article explores your options to access your GSM cell phone from a linux system, and manipulate SMS and phonebook entries.
Doesn’t provide hints about how to unlock a GSM cell phone though 😉
Perl : Optimizing pattern searches with Regexp::Assemble
When you perform a pattern matching with multiple “or” (|) clauses, such as /pattern1|pattern2|pattern3/, Perl regexp engine will try to match each of them one after the other in sequence, resulting in poor performance if you have a long list of “or” clauses.
In order to optimize such a pattern matching, you can use the Regexp::Assemble module.