Kurztipp: Webserver auf die Schnelle

Braucht man mal ganz schnell und unkompliziert einen sehr einfachen Webserver um Dateien anzubieten:

$ python -m SimpleHTTPServer 8080

und bei Python 3 (laut Kommentar)

$ python -m http.server 8080

Wobei 8080 der Port ist. Standardmäßig wird dabei das aktuelle Verzeichnis als  DocumentRoot verwendet , also immer schön drauf achten wo man sich befindet wenn man den Befehl ausführt.
Hier nochmal etwas ausführlicher Beschrieben.

Kurztipp: Postfix Befehle

Da man es immer mal braucht:


$ mailq
$ postcat -q ID
$ postsuper -d ALL

 

Mailqueue ansehen
mailq

oder auch

postqueue -p

Mailqueue löschen:
postsuper -d ALL

einzelne Mails aus dem Queue löschen:
postsuper -d ID

Postfix zwingen, die Mails zu versenden
postqueue -f

Versuchen verzögerte (deferred) Mails abzuschicken (erzwingen)
postqueue -i ID

Verzögerte (deferred) Mails aus dem Queue löschen
postsuper -d ALL deferred

virtuelles VLAN Interface

Machen wir es kurz. Man hat drei VLANs in denen man gerne wäre, aber man hat nur zwei NICs. Es wir also mit tagged VLANs gearbeitet.  Unter Debian funktionierte das wie folgt.

$ apt-get install vlan

Dann schreiben wir in die /etc/network/interfaces

auto eth1.242
iface eth1.242 inet static
 address 10.100.1.2
 netmask 255.255.252.0
 network 10.100.1.0
 broadcast 10.100.1.255

Dabei wird das VLAN 242 auf eth1 gelegt. Ein ifdown eth1;ifup eth1;ifup et1.242 sollte das Device online setzen. Im Zweifel rebooten ;-).
Will man das nur mal temporär einrichten

$ apt-get install vlan
$ modprobe 8021q (keine Ahnung ob das wirklich nötig ist)

Wir legen VLAN 242 auf eth1 an, weisen die IP zu und sind fertig

$ vconfig add eth1 242
$ ifconfig eth1.242 10.100.1.2/22

Das ganze gibt es unter http://blog.sleeplessbeastie.eu/2012/12/23/debian-how-to-create-vlan-interface/  etwas ausführlicher. Ansonsten hilft auch ein Blick in man vlan-interfaces.

Kurztipp: wget soll vorhandene Datei überschreiben

Nutzt man wget um eine bereits vorhandene Datei erneut runterzuladen bekommt man in der Regel etwas wie

$ wget http://exdc.net/DATEI
...
In »DATEI.1« speichern.

Will man aber DATEI überschreiben falls eine neuere Version auf dem Server existiert, kann man z.B. einfach den Parameter -N nutzen

$ wget -N http://exdc.net/DATEI
...
Datei auf dem Server nicht neuer als die lokale Datei »DATEI« -- kein Download.

Dabei wird die Datei nur runtergeladen wenn die Datei auf dem Server neuer bzw. die Größe unterschiedlich zur lokalen Version ist.

Das steht natürlich alles in den man pages, aber ich wollte es mal erwähnt haben, da ich heute drüber gestolpert bin.

 

Kurztipp: Apache Maintenance

Ein recht einfacher Weg den Webserver in den „Temporarily Unavailable“ Modus zu versetzen.

RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} !=503
RewriteCond "/var/www/hallo" -f
RewriteRule ^(.*)$ /$1 [R=503,L]

Dabei wird zur Laufzeit überprüft ob die Datei /var/www/hallo existiert. Falls dem so ist wird die Fehlerseite angezeigt. Das geht natürlich auch mit „!-f“. Die Möglichkeiten sind dabei recht vielfältig.