Messages that are produced by the kernel are placed in a ring buffer which has a default size of 16392 bytes. This buffer is available from userspace via /proc/kmsg. Messages are categorized into levels which are also used to decide which are printed to the console.


The nohup command allows executing programs which are safe from hangup signals:

Desktop via XSession

Instead of choosing your favourite dektop environment when logging in via a display manager, use XSession to gain more control over the login process. This will invoke ~/.xsession (permissions: 0755):

ViM: Modelines

When working on a project with several developers, some coding style has to be agreed on. This will not necessarily correspond with individual point of view. A very common disagreement upon developers is the indentation of source code: How many spaces does a single level of indentation correspond to? Is it represented by a series of spaces of by a single tab stop?

Traversal of the Netfilter Code

The following ascii image describes the way a packet takes when traversing the netfilter firewalling code inside the linux kernels 2.4 and 2.6. It is followed by a description of the visualized paths.

Stateful Filtering with Netfilter

When implementing security policies with a packet filter you will usually have to specify rules for each and every packet that you wish to handle. This will result in a myriad of rules that are hard to maintain. Still, you might be able to prolong choas by distributing rule definitions among several files and cascading chains of similar rules. Though, there is an easier way.

Remote Commands

SSH is most commonly known for its ability to login to remote hosts. But it also allows the execution of commands on the remote host without a prior login although it still requires successful authentication (otherwise, there would be no sense in using SSH, right?!):


A series of measurements $x_i = x_1, \dots, x_n$ is a one dimensional list or array which is by nature very space inefficient to store. A histogram is a two dimensional data structure that can be configured to a custom trade off between space and accuracy. The values are sorted into bucket according to their size.


When comparing two or more series of measurements, it is useful have a relative measure like the distribution of values.


A mean value is only valid for the exact series of measurements that it was calculated from. When adding one or more measurements to the series, the mean value needs to be calculated again and probably result in a similar but not the same mean value. The reason for this is the fact that the final mean value can only be calculated from an infinite number of measurements but this is apparently impossible to do.