Show me my system performance with conky

Today I would like to show you my conky system-performance meter. I do use it since the old Ubuntu 13.xx days and I still love it. On top I am very well aware that my conky settings are very basic and show just my needs 😉

How to install conky:

# sudo apt-get install aptitude python-keyring ttf-ubuntu-font-family hddtemp curl lm-sensors conky-all
# apt-get install conky apcupsd audacious xmms2 mpd moc

Customize it to your needs by using the following pages


My conky – config file looks like this:
Continue reading Show me my system performance with conky

Repository location for downloaded / installed packages

Today I played a bit with apt-get and got some strange failed to fetch error messages. Nothing wrong with but I searched a bit and did recognize I do not know where the downloaded packages are located.

  • The location is here:
  • If you want to remove them, perform
    # apt-get clean
  • output from man apt-get show:
    clean clears out the local repository of retrieved package files. It removes everything but the lock file from /var/cache/apt/archives/ and /var/cache/apt/archives/partial/. When APT is used as a dselect(1) method, clean is run automatically. Those who do not use dselect will likely want to run apt-get clean from time to time to free up disk space.
    Like clean, autoclean clears out the local repository of retrieved package files. The difference is that it only removes package files that can no longer be downloaded, and are largely useless. This allows a cache to be maintained over a long period without it growing out of control. The configuration option APT::Clean-Installed will prevent installed packages from being erased if it is set to off.

As always – have Fun!

Mirror your Blog using ‘wget’

Sometimes you want to have your “How to…” section as offline resource with you, so that you can take and view it without internet access.
As wget was my preferred choice since late 1990 and early 2000’s I wanted to ensure I do save my brain once again.

Simple way is:

wget --mirror http://your-site.whatever

The more powerful & “I am no longer a greenhorn” way is to do it like this:

wget --mirror --convert-links --adjust-extension --page-requisites --no-parent http://your-site.whatever

As I need an explanation of the various options:

  • --mirror – the download will be recursive
  • --convert-links – The links to files that have been downloaded by wget will be changed to refer to the file they point to as a relative link
  • --adjust-extension – If a file of type application/xhtml+xml or text/html is downloaded and the URL does
    not end with the regexp \.[Hh][Tt][Mm][Ll]?, this option will cause the suffix .html to be appended to the local filename, same as for files of type text/css end in the suffix .css
  • --page-requisites – This option causes wget to download all the files that are necessary to properly display a given HTML page. This includes such things as inlined images, sounds, and referenced stylesheets
  • --no-parent – it guarantees that only the files below a certain hierarchy will be downloaded.

Conky – my default performance meter

My conky version is configured like this on my Ubuntu 14.04.X

Conky 1.9.0 compiled Wed Feb 19 18:44:57 UTC 2014 for Linux 3.2.0-37-generic (x86_64)

Compiled in features:

System config file: /etc/conky/conky.conf
Package library path: /usr/lib/conky

 * Xdamage extension
 * XDBE (double buffer extension)
 * Xft
 * ARGB visual

 Music detection:
 * Audacious
 * MPD
 * MOC
 * XMMS2

 * math
 * hddtemp
 * portmon
 * Curl
 * RSS
 * Weather (METAR)
 * Weather (XOAP)
 * wireless
 * support for IBM/Lenovo notebooks
 * nvidia
 * eve-online
 * config-output
 * Imlib2
 * apcupsd
 * iostats
 * ncurses
 * Lua

 Lua bindings:
 * Cairo
 * Imlib2

Continue reading Conky – my default performance meter

How to remove old/unused kernel images from system


$ dpkg –list | grep linux-image

# dpkg –list | grep linux-headers

ii linux-headers-3.11.0-13 3.11.0-13.20 all Header files related to Linux kernel version 3.11.0

ii linux-headers-3.11.0-13-generic 3.11.0-13.20 i386 Linux kernel headers for version 3.11.0 on 32 bit x86 SMP

ii linux-headers-generic i386 Generic Linux kernel headers

ii linux-headers-generic-pae i386 Transitional package

rc linux-image-extra-3.8.0-19-generic 3.8.0-19.30 amd64 Linux kernel image for version 3.8.0 on 64 bit x86 SMP

rc linux-image-extra-3.8.0-21-generic 3.8.0-21.32 amd64 Linux kernel image for version 3.8.0 on 64 bit x86 SMP

rc linux-image-extra-3.8.0-22-generic 3.8.0-22.33 amd64 Linux kernel image for version 3.8.0 on 64 bit x86 SMP

Note the “rc” and “ii” in the dpkg output.

rc – package removed, cnfig files remain

ii – package installed


In respect to ‘rc’ .. Removed but Config files remain:

While there is no built in way to remove all of your configuration information from your removed packages you can remove all configuration data from every removed package with the following command.


dpkg -l | grep ‘^rc’ | awk ‘{print $2}’ | xargs dpkg –purge


After I finished, I ran /usr/sbin/update-grub just to be safe.


I use this script to clear my kernels



ls /boot/ | grep vmlinuz | sed ‘s@vmlinuz-@linux-image-@g’ | grep -v `uname -r` > /tmp/kernelList

for I in `cat /tmp/kernelList`


aptitude remove $I


rm -f /tmp/kernelList



Validation steps:

$ ls /boot/ | grep vmlinuz



$ ls /boot/ | grep vmlinuz | sed ‘s@vmlinuz-@linux-image-@g’



$ ls /boot/ | grep vmlinuz | sed ‘s@vmlinuz-@linux-image-@g’ | grep -v `uname -r`


$ uname -r


Wer braucht denn schon ‘ne FireWall

… wenn er iptables haben kann 🙂

So, bevor Ihr weiterlest, bitte erstmal den Link zur Ubuntu Help Seite für Iptables klicken und lesen. Wer das verstanden hat braucht eigentlich
gar nicht mehr weiterlesen.


Weil dort die Grundlagen sowie ein paar ganz wichtige Regeln für eingehenden Traffic für User wie mich beschrieben sind. Und wenn ich das kapiere
kapierst Du – Ja genau Du, der Leser dieses Blog’s – das auch. Basta!

Also wollen wir uns mal mit meiner iptables befassen.

"Alles was von innen initiiert wird ist erlaubt" + 
"Alles was von aussen initiert wird, wird silent drop erfahren" + 
"ssh von aussen erlaubt" + 
"Möglichkeit der Protokollierung, für debug Zwecke"

Continue reading Wer braucht denn schon ‘ne FireWall

Paketlisten erzeugen/restaurieren

… kann manchmal ganz schön wichtig werden. Denken wir nur mal an das Thema Backup und Restore.

Also erster Schritt, Paketliste erzeugen:

dpkg --get-selections | awk '!/deinstall|purge|hold/ {print $1}' > /your/path-to/packages.list

Dies hilft insbesondere wenn man nach einer Neuinstallation die gleichen Pakete wieder installieren will 😉

Wer schlau ist packt /your/path-to/ mit ins Backup rein, bzw läßt vor jedem Backup den obigen Befehl laufen.

Packetliste zu Restorezwecken einsetzen

Um alle in der erzeugten /your/path-to/packages.list gespeicherten Pakete zu installieren, bzw. als einen der ersten “restore-Schritte” hilft uns:
# xargs -a "packages.list" sudo apt-get instal
extrem gut.

Fan Speed control on my Thinkpad T4x0

This article fall under my How to Sections and will be reported here for later brain dump restore :-D

Well, what’s about the topic? I installed and configured some performance monitoring stuff (will write a HowTo later for this one) and
realized that my fan-speed on the ThinkPad T400 was extreme slow, while thermal sensor tell me CPU temp is increasing.

I did some research and found the following to work for my Ubuntu config:

Karma w/ 2.6.31-22-generic-pae – (PAE because I used a 32-bit with 4GB RAM).
create new file ” vi /etc/modprobe.d/thinkpad_acpi.conf” and add the following line “options thinkpad_acpi fan_control=1”

Do some sort of “modprobe -r thinkpad_acpi && modprobe thinkpad_acpi” OR reboot (<– only for lamers ;-))
which enables you to perform some sort of actions with the fan:

# cat /proc/acpi/ibm/fan
status:        enabled
speed:        3416
level:        auto

commands:    level <level> (<level> is 0-7, auto, disengaged, full-speed)
commands:    enable, disable
commands:    watchdog <timeout> (<timeout> is 0 (off), 1-120 (seconds))

 echo level 7 > /proc/acpi/ibm/fan
$ echo level full-speed > /proc/acpi/ibm/fan
$ echo level auto > /proc/acpi/ibm/fan

Have some Fun and as always I have tested it before post!



How to rename a user and change $HOME


Diese Aktion lässt sich nicht für den Benutzer, der gerade angemeldet ist durchführen. Sollte man keinen zweiten Benutzer mit Administrator-Rechten angelegt haben, so muss man in den Recovery Modus booten.

 Homeverzeichnis ändern

Linux bringt für dieses Manoever usermod mit. Per command-line kann man damit den Namen eines Benutzers und weitere Details ändern.

# Allgemein gilt
sudo usermod -l <neuer_benutzername> -d </home/neuer_benutzername> -m <alter_benutzername>

# Beispiel, nennt den Benutzer bernd in otto um und verschieb das Homeverzeichnis
sudo usermod -l otto -d /home/otto -m bernd


Optionen für usermod zum Umbenennen eines Benutzerkontos
Option Bedeutung
-l Neuer Login des Benutzers
-d Neues Homeverzeichnis des Benutzers, gibt man diesen Parameter nicht an, so bleibt das Alte erhalten.
-m Nur sinnvoll, wenn mit -d ein neues Verzeichnis angegeben wurde. Wird der Schalter -m gesetzt, so werden die Daten aus dem alten Homeverzeichnis gleich in das Neue verschoben.
Weitere Optionen zu usermod findet man unter man usermod von usermod.


Und damit mir keiner sagen kann das dies ein schmarrn ist – Ich habe es getestet. Es funzt. Anpassen der Gnome-nautilus Bookmarks und schon funzt alles.