Archiv

Archiv für die Kategorie ‘IT’

Bash: Automatisches Logout

22. Oktober 2009

So, seitdem ich seit Mitte Juli nur Windows-Artikel veröffentlicht habe, hier auch mal wieder was für die Linux-Gemeinde:

Als Serveradmin kennt man ja das Problem, dass man gerne mal auf einem System angemeldet bleibt, weil man vielleicht später eh noch was sehen will. Doch manchmal wünscht man sich ein Auto-Logout, wenn man längere Zeit nichts macht, um nicht immer eine Session offen zu halten.

Die Bash wertet die Variable TMOUT aus. Enthält sie eine Zahl größer als Null, so wird nach so vielen Sekunden Inaktivität die Shell automatisch beendet. Dies läßt sich relativ leicht z.B. in der .bashrc setzen, so dass die Einstellung bei jedem neuen Login automatisch aktiv ist:

export TMOUT=1800   # 30m

Vorsicht ist bei niedrigen Werten geboten. Wer es dummerweise mit 5 Sekunden versucht muss sich beim nächsten Login beeilen, den Editor zu öffnen, bevor er rausfliegt :-)

IT, LST , ,

Zufallszahlen mit Modulo auf der Shell erzeugen

5. Juli 2009

Die Firewall aus dem letzten Artikel fand ich extrem lustig, doch die Methode der Zahlenermittlung fand ich sehr interessant. Eine IP-Adresse wurde hier wie folgt erstellt:

echo “$(($RANDOM%256)).$(($RANDOM%256)).[...]”

Die Variable $RANDOM gibt eine Zufallszahl zwischen 0 und 32767. Das Prozent-Zeichen (%) berechnet aus einer Zahl deren Modulo, also den Rest aus der Division zweier ganzer Zahlen. Einfach gesagt berechnet es den Rest einer Teilung der geraden Zahlen.

Grundschul-Beispiel: 100 durch 23 = 4, Rest 8
Das Ergebnis aus 100 mod 23 ist also 8.

Der Modulo eigenet sich gut, eine Zahl auf einem Wert zu kürzen, denn das Ergebnis liegt immer zwischen 0 und dem Divisor-1. Das ist auch logisch, denn der Rest-Wert einer Division muss unter dem Divisor liegen. Also eine zufällige Zahl mod 8 wird ganzzahlig sein und zwischen 0 und 7 liegen.

Der Syntax $(($RANDOM%256)) macht also nichts anderes als die Variable $RANDOM (Zufallswert zwischen 0 – 32767)  modulo 256 zu nehmen – womit ein Ergebnis zwischen 0 und 255 herauskommt.

Interessant gelöst fand ich auch diese Codestelle:

while true; do
sleep 1
echo -n .
if [ $(($RANDOM%13)) -eq 2 ]; then break; fi
done

Hier wurde durch $(($RANDOM%13)) eine zufällige Zahl zwischen 0 und 12 ermittelt und mit -eq 2 mit dem Wert 2 verglichen. Die 2 ist dabei nur eine beliebige Zahl, die if-Anweisung heißt übersetzt nichts anderes als  “In einem von 13 Fällen” (0-12 = 13 Möglichkeiten!), die Bedingung wird also zufällig mit einer Wahrscheinlichkeit von 1/13tel erfüllt.

Übrigens: Wer Zufallszahlen zwischen 1 und … braucht, kann $((RANDOM % 9 +1)) nutzen. Der erste Teil erzeugt eine Zufallszahl zwischen 0 und 9, danach wird das Ergebnis +1 gerechnet, das ergibt also eine Zufallszahl zwischen 1 und 10.

IT, LST , , ,

Zone Alarm Firewall für Linux

27. Juni 2009

Ein Bekannter schickte mir neulich ein paar Zeilen Code und meinte, das sei der Nachbau der Zone-Alarm Firewall für Linux. Ich fand das fast schon böse :evil:

#!/bin/bash
echo -n Starting firewall.

while true; do
sleep 1
echo -n .
if [ $(($RANDOM%13)) -eq 2 ]; then break; fi
done

echo
echo "Your system is now secure\!"

while true; do
sleep $(($RANDOM%53))
HOST="$(($RANDOM%256)).$(($RANDOM%256)).$((RANDOM%256)).$(($RANDOM%256))"
PORT="$(($RANDOM%65535+1))"
echo "Blocked attack from host $HOST on port $PORT!!!"
done

Fun, IT , , , ,

GTK-Anwendungen unter KDE4

23. Juni 2009

Während KDE-Anwendungen das Qt4-Framework benutzen, greifen Gnome-Anwendungen auf GTK zurück. Beide Welten scheinen schwer vereinbar zu sein, was besonders KDE-Anwender immer ärgert, wenn GTK-Programme auf ihrem superstylischen Desktop eher billig wirken.

Es gibt jedoch eine Theme-Engine, die GTK-Anwendungen an das Layout des laufenden KDE-Desktops anpasst. Unter Ubuntu (bzw. Kubuntu) ist diese wie folgt zu installieren:

sudo apt-get install gtk-qt-engine-kde4

Nach einem Neustart stehen GTK-Programme dann in KDE-Optik zur Verfügung.

IT , , ,

YouTube-Videos mit Startzeit verlinken

19. Juni 2009

YouTube erlaubt das Verlinken von Videos, was im Internet häufig eingesetzt wird. Weniger bekannt ist jedoch die Möglichkeit, einem Link die Startzeit im Video mitzugeben. So kann bei einem langen Video ein Link direkt auf die gewünschte Stelle gesetzt werden, statt dem Leser zu erklären, wo er hinspringen muss.

Das funktioniert, indem man dem üblichen Link einfach ein #t=XmXXs anfügt, wobei X und XX die Startzeit in Minuten ist.

Beispiel:

Tipp für lustige Menschen: Schaut euch das Matrix-Video trotzdem ganz von vorne an und wer noch nicht genug hat, ich empfehle auch Professor Wikipedia.

IT, Webtipps