Eigentlich bin ich der Ansicht, dass einem auf einem Server nicht viel besseres passieren kann als ein Debian. Heute wurde dieser Eindruck böse getrübt, allerdings glaube ich weiterhin dass andere Systeme nicht besser sind. Höchstens ‚anders Scheiße‘. :-)

Was passiert ist? Ich habe endlich mal den angestaubten Apache einspunktirgendwas durch einen hypermodernen Apache 2 ersetzt. Das hat im Wesentlichen gut funktioniert, mit einem kleinen Dämpfer: ich benutze SysCP um den Server zu verwalten. Das Ding hat eine MySQL-Datenbank, und darin stehen unter anderem meine Mitbenutzer. Also Namen und (verschlüsselte) Passwörter der Leute die auf dem Server was zu sagen haben. Ich habe an einer Stelle verschiedene administrative Tools installiert, auf die eben diese Benutzer zugreifen können sollen. Sowas wie phpMyAdmin, aber auch die Oberfläche von SysCP selbst. Diese Seite war bis dato über libapache-mod-auth-mysql geschützt. Naheliegend, da die Namen und die Passwörter eh in einer Tabelle liegen. Dummerweise gibt es kein libapache2-mod-auth-mysql für Etch, und damit fingen die Probleme an…

Klar, ich hätte mir da eben selbst was stricken können. Wollte ich aber nicht, unter anderem weil absehbar ist dass das keine Dauerlösung werden würde. Und genau das ist es, was mich aufregt: Das Modul gab es für Sarge, das gibt es für Sid und das wird es für Lenny auch wieder geben. Nur eben für Etch nicht. Grund ist, dass der Maintainer die Klamotten hin geschmissen hat und zur Zeit der Veröffentlichung von Etch niemand den Job haben wollte. :-(

Naja, viele Versuche und einiges an Nerven später habe ich es dann doch geschafft, wieder gegen die SysCP-Datenbank zu autorisieren. Geholfen hat eine Kurzanleitung die ich hier zu meiner persönlichen Referenz noch mal wieder gebe. Ist zwar eigentlich für Ubuntu, hat aber auch auf Etch geklappt:

To get mysql authentication working in Gutsy, you have to manually compile mod_auth_mysql:

1. wget http://heanet.dl.sourceforge.net/sourceforge/modauthmysql/mod_auth_mysql-3.0.0.tar.gz
2. wget http://www.bleb.org/software/mod_auth_mysql-3.0.0-apache-2.2.3.patch
3. tar zxf mod_auth_mysql-3.0.0.tar.gz
4. apt-get install apache2-prefork-dev libmysqlclient15-dev; apt-get --purge remove libapache2-mod-auth-mysql
5. cd mod_auth_mysql-3.0.0
6. patch < ../mod_auth_mysql-3.0.0-apache-2.2.3.patch
7. sed -i 's|#include <mysql.h>|#include <mysql /mysql.h>|' mod_auth_mysql.c
8. apxs2 -c -lmysqlclient -lm -lz mod_auth_mysql.c
9. apxs2 -i mod_auth_mysql.la
10. echo 'LoadModule mysql_auth_module /usr/lib/apache2/modules/mod_auth_mysql.so' > /etc/apache2/mods-available/auth_mysql.load
11. a2enmod auth_mysql

Configure it as follows (adapt to your environment):

<location /mysqlauth>
  AuthName "test"
  AuthType Basic
  AuthUserFile /dev/null
  AuthBasicAuthoritative Off

  AuthMySQLEnable On
  AuthMySQLAuthoritative On
  AuthMySQLDB apache_auth_test
  AuthMySQLUser authtestuser
  AuthMySQLPassword something
  AuthMySQLUserTable auth
  AuthMySQLNameField username
  AuthMySQLPasswordField passwd
  require valid-user
</location>

Hope this helps someone.

Also mir hat es definitiv geholfen, Dank an mrts. Ich musste nur noch mittels AuthMySQLPwEncryption md5 angeben wie die Passwörter verschlüsselt sind.

Damit ich mir nicht schon wieder das komplette Kommando zusammensuchen muss: Nach einem fröhlichen Aufruf von

remind -lmp12b1 ~/.reminders | rem2ps -i -e -m A4 | lp

fällt ein Kalender für das nächste Jahr aus dem Drucker. Samt aller jetzt bekannten wichtigen Termine natürlich.

Habe ich eigentlich schonmal erzählt^Wgeschrieben wie ich zu der Mikrocontroller-Bastelei gekommen bin? Nein? Gerade bin ich beim Aufräumen auf den Link gestossen der einer der Haupt-Anlässe war: Alarm Clock of the Short Now.

Das ist zwar ein PIC und kein AVR, und das ist ein denkbar simples Projekt. Sowas wollte ich aber auch bauen. Erst. Die Idee habe ich dann aber immer weiter gesponnen, und damit bin ich bis jetzt noch nicht fertig. Irgendwann werde ich den ultimativen Wecker bauen. Erwähnt habe ich den hier schon öfter, man möge die Suche bemühen. Alle Projekte die ich bis jetzt gemacht habe — und auch einige die ich noch ‚in der Pipe‘ habe — waren praktisch nur die Vorgeschichte, um alles zu lernen was ich brauche um einen anständigen Wecker zu bauen. ;-)

Mehr werde ich aber auch Heute nicht zu dem Thema spinnen, ich bin selbst extrem gespannt wann es soweit ist… Ich habe wie gesagt gerade nur den Link gefunden und wollte dem mal anständig Tribut zollen.

Vor einem halben Jahr habe ich mal festgestellt dass ich zwar einer Pokersendung im Fernsehen folgen kann, es aber nicht auf die Reihe kriege selbst zu spielen. Wer darf wann was machen, wer muss wann was machen…? Kann daran liegen dass es mir niemand erklärt hat… ;-)

Um das mal in Ruhe nachvollziehen zu können wollte ich eine passende Software haben, und da bin ich ziemlich schnell bei PokerTH gelandet. Dummerweise gibt es das für mich nicht als Paket, und an der Compilierung bin ich aus irgendwelchen nicht innerhalb einer halben Stunde lösbaren Problemen gescheitert. Mehr Aufwand habe ich da dann auch nicht mehr rein fließen lassen, und seitdem ruhen die Karten.

Ein Blogeintrag von Frank hat die schlafende Idee wieder geweckt, und siehe da: neue Version, neues Glück. Letzteres hatte ich jetzt nämlich immerhin schon beim Compilieren. Beim Spiel hapert es noch: in meiner ersten Runde gegen sieben Computergegner konnte ich nur aus einer Hand was machen… :-)

PokerTHEdit: Ich nehme alles zurück und behaupte das Gegenteil. Nein, compilieren konnte ich wie gesagt. Aber schon die zweite Runde hat deutlich besser geklappt. :-) So, jetzt aber nix wie auf zur Arbeit…

Naja, ganz so dramatisch muss man das vielleicht nicht ausdrücken. Aber ab Morgen (Samstag) sind es nur noch 30 Jahre bis zum gefürchteten Y2K38-Bug, bei dem Unix-Systeme Probleme mit der Zeitzählung kriegen können.

(Ja, ich weiß auch dass viele Systeme bereits jetzt Gegenmaßnahmen ergriffen haben, und man sich 2038 wahrscheinlich mehr Sorgen darum macht dass die Grafikkarte nicht für Duke Nukem Forever reicht… ;-) )