phpMyAdmin setzt time_zone für Session

Simpler Patch, damit phpMyAdmin für jede Verbindung zu Datenbankservern die Zeitzone setzt. Das war hier erforderlich, weil eine Änderung der default time_zone bei AWS RDB nicht möglich ist.

--- libraries/dbi/mysqli.dbi.lib.php        2010-06-26 12:53:06.000000000 +0200
+++ libraries/dbi/mysqli.dbi.lib.php-new    2010-06-30 16:23:54.000000000 +0200
@@ -137,6 +137,10 @@
         PMA_DBI_postConnect($link, $is_controluser);
     }

+    // Dirty hack to set session time_zone because we cannot
+    // change default time_zone in AWS RDB.
+    mysqli_query($link, "SET time_zone = 'Europe/Berlin';");
+
     return $link;
 }

EC2 Abuse: Mail auf Port 25

Von unseren Instanzen in EC2 werden viele Mails über einen Smarthost verschickt. Amazon limitiert die Anzahl der Mails von Instanzen auf Port 25 jedoch (aus verständlichen Gründen (Stichwort: Spam)) und empfiehlt den Einsatz von Elastic IPs und die Anmeldung als Mailversender bei ihnen. Für uns kommt das nicht in Frage, da wir ja unseren Smarthost nutzen. Also habe ich schnell Submission (Port 587/tcp) auf dem Smarthost aufgemacht und die EC2-Instanzen liefern nun dahin aus, was Amazon nicht mehr zu beanstanden hat.

BASH function: Alias mit Variablen

Um häufig benutzte, komplizierte Shell-Kommandos abzukürzen, kann man ein kurzes alias definieren. Leider können so keine Parameter bzw. Variablen übergeben werden. Alternativ kann man in seiner .bashrc eine Funktion schreiben:

function sshlnxp () {
    ssh -A user@lnxp-$*.srv.mediaways.net;
}

Möchte man alle fünf Minuten einen Befehl ausführen lassen, bemüht man hierfür üblicherweise cron und schreibt ihm ein */5 in die crontab. Der Befehl wird dann in den Minuten 0, 5, 10, 15 … 55 ausgeführt. Möchte man den Aufruf aber beispielsweise in den Minuten 2, 7, 12, 17 … 57 ausführen, wird cron einem ein 2/5 als Syntaxfehler um die Ohren schlagen. */5 kann auch als 0-59/5 notiert werden. 2-59/5 erfüllt den Zweck, beginnend ab Minute 2, alle 5 Minuten den Befehl auszuführen.