PHP APC cache keeps restarting

I encountered a problem when APC cache seemed to restart every now and then (1-5 minutes). First I though that Apache was restarting but that was not the case.
It seems that in my case APC did not do very well with the mod_fcgid module of Apache. As soon as I removed the module, the problem dissappeared.
If you have this problem, try to remove mod_fcgid.

Have fun!

Block IP’s through iptables

WARNING: The following code will REPLACE your existing firewall rules as it uses iptables-restore in order to add hundreds of individual ip rules into the INPUT chain very fast.

rm -f /root/listed_ip_*
wget -q -c --no-cache -P /root/ --output-document=/root/
unzip /root/ > /dev/null

echo "*filter" >/tmp/iptables-save
echo ":INPUT ACCEPT [0:0]" >>/tmp/iptables-save
echo ":FORWARD ACCEPT [0:0]" >>/tmp/iptables-save
echo ":OUTPUT ACCEPT [0:0]" >>/tmp/iptables-save
IPS=$(grep -Ev "^#" $BLOCKDB)
for i in $IPS
echo "-A INPUT -s $i/32 -p tcp -m tcp --dport 80 -j DROP" >>/tmp/iptables-save
echo "COMMIT" >>/tmp/iptables-save
cat /tmp/iptables-save | iptables-restore

How to check packet loss for VOIP purposes

Yesterday I had some problems with the VOIP connection. I heard my party very well but he could barely hear me.
Normal run of mtr to the other host showed no packet loss but I was able to pinpoint the packet loss to the other party with
mtr -n -s 200 -i 0.02 [ip-address]
(you need to be root)
which sends 50 packets/seconds 200 bytes/packet which pretty much emulates the rtp stream.

SPL-C ERROR – Please use the proper driver on Samsung CLP-310N printer

If you get this error written on the test page when using Ubuntu or any other Linux distribution, you should install the Samsung Unified Driver. I’ve followed the tutorial on point II.c and then I’ve added the network printer as lpd:///PASSTHRU with Make and Model “Samsung CLP-310 Series (SPL-C)” (NOT Samsung CLP-310 Foomatic/foo2qpdl)

How to programmatically dump the threads list of a running java process in bash

It seems that jdb cannot accept commands from command line, so we must use expect.
I created the following expect script dumpthreads
You can use it like:
dumpthreads java_process_pid

set pid [lindex $argv 0];
spawn jdb -connect sun.jvm.hotspot.jdi.SAPIDAttachingConnector:pid=$pid;
expect ">";
send "threads\n";
expect ">";
send "quit\n";

Midnight commander does not save the settings in Ubuntu

Today I encountered a strange problem with Midnight Commander 4.6.2 in Ubuntu. I wanted to change the default Ubuntu setting to use the internal edit. I actually like the mc internal editor and I want to use it. The problem was that the setting was not saved when I chosed “Save setup” even if a message “Setup saved to ~/.mc/ini” appeared. There was no ~/.mc folder. After I did
mkdir ~/.mc
everything worked as expected.
This seems to be a bug in mc.

Emtec S800 board picture

Here is a picture of the internal board of my newly aquired Emtec S800 PVR. It works on Linux but Emtec was not so kind to provide the sources of the PVR application (there are some sources of an alternative OEM – Ellion available on the net). I needed to open the box to put a resistor at the internal fan because it was too noisy.

How to convert DVD iso to avi using mplayer

Here is a python script to convert an .iso of a DVD to avi and to encode it using mpeg4. It is a slightly modified version of the script found at to work with newer versions of mplayer/mencoder.

Later edit:
It seems that mplayer/mencoder know to play/convert .iso files directly so we can do:
mencoder in.iso -o /dev/null -ovc xvid -xvidencopts pass=1:bitrate=800:threads=2 -oac copy
mencoder in.iso -o out.mpeg -ovc xvid -xvidencopts pass=2:bitrate=800:threads=2 -oac copy