Archive for July, 2005

PostgreSQL mit DarwinPorts - aber bitte komfortabel!

Thursday, July 21st, 2005

Ich benutze DarwinPorts als Paketmanager und installiere Software wenn möglich über dieses System - so auch PostgreSQL.

So weit, so gut. Bei der Installation gibt es zwei kleinere Probleme: Zum einem warnt einen DarwinPorts nicht, dass man noch ein paar Schritte zu gehen hat, bis der PostgreSQL server läuft und zum anderen habe ich für Daemons gerne sogenannte StartupItems, also Skripten, über die man Hintergrundprogramme komfortabel starten und beenden kann. Davon ganz zu schweigen, dass sie auch beim Start von Mac Os X automatisch geladen werden.

Der Worte sind genug gewechselt, lasst uns nun endlich Taten sehen. Für die Installation installiere ich erstmal PostgreSQL mit dem ports Kommando:

$> sudo ports install postgresql

Danach richte ich einen neuen Benutzer postgres und eine neue Gruppe postgres ein. Der Server soll dann unter diesem Benutzer laufen. Das ist unter Os X ein bisschen trickreich: Ich benutze die Kommandozeilenversion vom NetInfo Manager: niutil. Ich erstelle den Benutzer und die Gruppe mit der Nummer 401 und würde eine andere nehmen, wenn die Nummer schon belegt wäre.

$> sudo niutil -create /groups/postgres
$> sudo niutil -createprop /groups/postgres gid 401
$> sudo niutil -create /users/postgres
$> sudo niutil -createprop /users/postgres uid 401
$> sudo niutil -createprop /users/postgres gid 401
$> sudo niutil -createprop /users/postgres home /opt/local/var/pgsql

Nun erstelle ich die nötigen Verzeichnisse und vergebe die korrekten Berechtigungen:

$> sudo mkdir -p /opt/local/var/postgres/data
$> sudo chown -R postgres:postgres /opt/local/var/postgres
$> sudo chmod -R ug=rwx /opt/local/var/postgres
$> sudo chmod -R o-rwx /opt/local/var/postgres
$> sudo mkdir -p /var/log/postgres
$> sudo chown -R postgres:postgres /var/log/postgres
$> sudo touch /var/log/postgres/logfile
$> sudo chmod -R ug=rwx /var/log/postgres
$> sudo chmod -R o-rwx /var/log/postgres

Als nächstes initialisiere ich die PostgreSQL Datenbank in /opt/local/var/pgsql/data:

$> su - postgres \
  -c "/opt/local/bin/initdb /opt/local/var/pgsql/data"

Nun installiere ich das StartupItem von Marc Liyanage.

Dann modifiziere ich die Datei /Library/StartupItems/PostgreSQL/ PostgreSQL noch ein wenig. Das Ergebnis ist hinter diesem Link zu finden.

Fertig, ich kann PostgreSQL nun komfortabel starten und anhalten:

$> /Library/StartupItems/PostgreSQL/PostgreSQL start
Starting PostgreSQL database server
postmaster successfully started
$> /Library/StartupItems/PostgreSQL/PostgreSQL stop
Stopping PostgreSQL database services
waiting for postmaster to shut down……done
postmaster successfully shut down

Google Maps - Cheesy!

Wednesday, July 20th, 2005

Google Maps hat nun nicht nur Karten und Satellitenbilder von der Erde, sondern auch vom Mond inklusive der Landeplätze der Apollo-Missionen.

Google Moon

Wir alle wissen ja, dass der Mond in Wirklichkeit aus Käse ist: Deshalb kann man ihn ja essen! (Dass man das auch logisch belegen kann erspare ich dem geneigten Leser hier einmal). Wie dem auch sei: in der höchsten Auflösung des Mondes sieht man folgendes:

Google Moon

Quelle dafür, dass es nun Google Moon gibt: Slashdot. Hereingezoomt und den Käse gesehen: Ich. Dann in den Kommentaren auf Slashdot festgestellt, dass jemand es schon vorher gesehen hat: Wieder ich. Schade, den Schritt für die Menscheit konnte nicht nicht schreiten.

What the Potter!

Monday, July 18th, 2005

Ich kaufte mir gerade folgendes, am Samstag um 00:00 Uhr erschienenes Buch:

Harry Potter 6

Es liegt hier nun qasi neben meinen Numerik- und Informatikunterlagen. Wie passend das Buch doch in die Vorbereitungszeit zu den den Klausuren erschienen ist!

Mal gucken wie viel Selbstbeherrschung ich aufbringen kann und Harry, Dumbledore und Voldemort nicht den guten Unifikatoren oder dem Algorithmus von Casteljau allzusehr vorziehe.

Freaky URL?

Tuesday, July 12th, 2005

Here you go: http://3.141 592 653 589 793 238 462 643 383 279 502 884 197 169 399 375 105 820 974 944 592.com/

Kudos to Anstei.

UNIX anywhere.

Tuesday, July 12th, 2005

Spielerei oder Anwendung mit Nutzwert? Wofür man auch immer ein in Javascript implementiertes Mini-Unix braucht: Es gibt es! Wo? hier

JS/UIX ist zwar nicht POSIX-Konform, bringt aber unter anderem folgendes mit:

  • Einen vi Klon
  • Ein virtuelles Dateisystem

Das ganze versehe man jetzt noch mit einem SSH-Client in Javascript und man muss auf keinem Rechner mehr sein geliebtes Unix vermissen.