SVN & WAMP

Juni 9th, 2009

Im Netz findet man jede Menge Anleitungen, wie man SVN unter WAMP einrichtet. Trotzdem stand ich mal wieder mitten im Wald. Ich konnte zwar SVN in den Apache integrieren, jedoch ließ sich der Apache danach nur noch auf der Kommandozeile starten, und nicht mehr über das WAMP-Tray-Icon. Aber beginnen wir von vorn…

Bereits seit längerem habe ich den WAMP-Server inklusive xdebug-Plugin für die PHP-Entwicklung im Einsatz. Diesen wollte ich nun um die SVN-Integration erweitern, ohne einen zusätzlichen Apache installieren zu müssen. Hier zunächst meine vorhandene Konfiguratoin:

Wamp-Verzeichnis: D:\wamp
Apache-Version: 2.2.11
MySQL-Version: 5.1.33
PHP-Version: 5.2.9-2

Schritt 1 – Download
Als erstes habe ich mir die aktuelle Version (Version 1.6.2) von Subversion als ZIP-Archiv für den Apache 2.2 geladen. Es gibt für Apache 2.0 und 2.2 separate Downloads .. daher muss man hier auf die Vorraussetzung sehr genau achten. Die  Einen Installer wollte ich nicht verwenden. Für den Apache 2.2 kann man das ZIP-Archiv unter nachfolgendem Link downloaden … es ist der letzte Eintrag in der Tabelle.

Download SVN Binaries für Apache 2.2.x

Schritt 2 – Entpacken
Ich habe mich entschieden, die SVN-Programmdateien in die Verzeichnisstruktur von WAMP zu integrieren. In meinem Falls hab ich das Archiv nach „D:\wamp\bin“ entpackt. Die folgende Abbildung zeigt die Verzeichnisstruktur.

wamp_svn_directories

Schritt 3 – Konfigurieren von Apache
Viele Anleitung im Netz und auch die readme-Datei von SVN empfiehlt an dieser Stelle die .so-Dateien in den „modules“-Ordner von Apache zu kopieren und danach den Systempfad zu erweitern, damit Apache auf alle Bibliotheken von SVN zugreifen kann. Das hat mich in große Schwierigkeiten gebracht, weshalb ich hier einen anderen Weg gehen möchte. Warum, kann weiter unten nachgelesen werden.

Bei meinem hier gezeigten Lösungsansatz müssen keinerlei Dateien in den Apache kopiert werden, noch muss die PATH-Umgebungsvariable angepasst werden.

Zunächst öffnet man die httpd.conf-Datei über das WAMP-Traymenü oder direkt über einen Editor und sucht nach den folgenden beiden Zeilen:

#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so

Dies sind zwei in Apache bereits enthaltene Module die man für die Nutzung von SVN benötigt. Daher muss man am Anfang jeder Zeile das „#“-Zeichen löschen.

Jetzt müssen noch zwei neue Module hinzugefügt werden, die nicht im Apache enthalten sind. Die betreffenden Module befinden sich im SVN-Ordner, und das ist gut so. Wenn der Apache diese Module direkt aus dem SVN-Bin-Verzeichnis lädt, können auch alle weiteren benötigten SVN-Bibliotheken fehlerfrei geladen werden. Um das zu erreichen, fügt man die beiden folgenden Zeilen in die httpd.conf-Datei ein:

LoadModule dav_svn_module "../../svn-win32-1.6.2/bin/mod_dav_svn.so"
LoadModule authz_svn_module "../../svn-win32-1.6.2/bin/mod_authz_svn.so"

Der Pfad zu den Modulen ist relativ angegeben. Falls man einmal die Wamp-Installation verschieben muss, funktionieren die SVN-Module dennoch. Wir sind aber noch nicht ganz fertig. Ein bestimmte Pfad auf unserem Webserver soll zukünftig den Zugriff auf das SVN-Repository ermöglichen. Hierfür fügen wir am Ende folgenden Abschnitt in die httpd.conf-Datei ein.

<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:\wamp\svn_repository
#SVNIndexXSLT „/svnindex.xsl“
#AuthType Basic
#AuthName „Subversion-Projektarchive“
#AuthUserFile passwd
#AuthzSVNAccessFile svnaccessfile
#Require valid-user
</Location>

Kurz noch zur Erklärung: In der ersten Zeil geben wir an, dass wir die Adresse „/svn“ des Webservers konfigurieren wollen. Die zweite Zeile aktiviert SVN. Die nächsten beiden Einstellungen (SVNListParentPath und SVNParentPath) legen ein Verzeichnis fest, wo sich mehrere SVN Projekt-Archive befinden können. Das hat den Vorteil, dass man über eine URL mehrere SVN-Projekte erreichen kann und gleichzeitig das Anlegen eines neuen Projektarchives durch das Anlegen eines neuen Ordner ermöglicht wird. Die nachfolgenden Zeilen richten die Zugangskontrolle ein, die ich hier jedoch deaktiviert habe. Wer die Benutzersteuerung einrichten möchte, kann hier mehr erfahren.

Nun speichern wir die vorgenommen Änderung der httpd.conf-Datei. Man muss noch sicherstellen, dass das oben mittels „SVNParentPath“ angegeben Verzeichnis auch existiert. Über den Explorer kann man das noch kurzer Hand erstellen. Zum Schluß wählt man aus dem Menü des Wamp-TrayIcons den Eintrag „Restart All Services“.

Schritt 4 – Testen der Einrichtung
Natürlich wollen wir jetzt wissen, ob unser SVN jetzt auch funktioniert. Dafür benötigt man einen Browser. Am einfachsten ist wieder das Wamp-TrayIcon. Aus dem Menü einfach „localhost“ auswählen und der Standard-Browser wird geöffnet. Nun noch die Adresse auf „http://localhost/svn“ geändert …. und man sieht … nun nicht viel.

localhost_svn

Aber es funktioniert soweit. Jetzt müssen wir noch ein Projektarchiv in unserem Repository einrichten. Dazu sind folgende Schritte notwendig:

1) Erstellen eines neuen Ordner

svn_new_folder

2) Anlegen des Projektarchives
Mit Hilfe von TortoiseSVN initialisieren wir nun unseren eben angelegten Ordner.

svn_create_repo

Das angelegt Verzeichnis kann man nun auch im Webbrowser wiederfinden. Die Einrichtung ist nun vollends abgeschlossen und man kann nun weitere Ordner und Dateien in das angelegte Projektarchiv imortieren.

Warum?
Die meisten Anleitungen im Netz empfehlen die innerhalb SVN zu findenden .so-Module in das „modules“-Verzeichnis des Apache zu kopieren. Das wiederum führt dazu, dass man entweder bestimmte DLLs von SVN in das bin-Verzeichnis des Apache kopiert oder das SVN-Bin-Verzeichnis in den systemweiten Pfad aufnimmt. Leider habe ich dabei einen Fehler gemacht und das SVN-Bin-Verzeichnis nur in die Pfadvariable meines Windowsbenutzer aufgenommen. Durch diesn Fehler ließ sich der Apache über das Wamp-TrayIcon nicht mehr starten. In der Ereignisanzeige fand ich später folgende Fehlermeldung:

The Apache service named reported the following error:
>>> httpd.exe: Syntax error on line 86 of D:/wamp/bin/apache/Apache2.2.11/conf/httpd.conf: Cannot load D:/wamp/bin/apache/Apache2.2.11/modules/mod_dav_svn.so into server: Das angegebene Modul wurde nicht gefunden.
Gleichzeitig konnte ich jedoch die „httpd.exe“ unter meinem Benutzer aus einer Shell starten und mit dem Webserver inkl. SVN fehlerfrei arbeiten. Erst nach einiger Zeit wurde mir klar, dass der Apache vom Wamp-TrayIcon als Dienst (unter dem lokalen Dienste-Account) gestartet wird und daher meine lokal definierten Umgebungsvariablen (und somit auch der erweiterte Pfad) nicht verwendet wurden. Daher suchte ich nach einer eigenen Lösung, mit welcher ich dem Problem zukünftig aus dem Weg gehen kann.

Wampserver Homepage
Handbuch zu TortoiseSVN
Subversion Download Page

Supreme Commander 2 Demo

Juni 8th, 2009

Auf der E3 in Los Angeles hat Chris Taylor, CEO von Gas Powered Games, „Supreme Commander 2“ vorgestellt. Das Spiel soll Anfang 2010 erscheinen und einiges an „Verbesserungen“ mit sich bringen. Die wichtigesten Punkte sind:

– Vereinfachte Resourceproduktion
– Unit-Upgrades (für Land, Luft, Wasser, Gebäude, Commander)
– Mini-Experimentals
– Verbesserte Grafikengine
– 3D Welten/Karten wie in Demigod
– Soll auch auf „nicht-High-End“-Computern laufen
– verbesserte KI / verbesserte Wegfindung

Im Video wird der aktuelle Entwicklungsstand des Spiel gezeigt und macht sofort Lust auf mehr. Ob die Änderungen aber tatsächlich zu einem besseren Supreme Commander führen, wird sich erst noch zeigen.

Zum Beispiel gab es noch für den ersten Teil und dessen Addon hunderte von der Community erstellte Karten. Bereits Demigod setzt auf sehr aufwendig zu erstellende 3D-Welten. Dieser Ansatz sorgt zwar für ein besseres Spielerlebnis, aber zeitlich konnten bis zur Veröffentlichung von Demigod lediglich 8 Karten erstellt werden (bei SupCom waren es immerhin 58). Außerdem gibt es für Demigod keinen Map-Editor. Somit ist auch die Community nicht in der Lage eigenen Karte zu erstellen. Langfristige geht so die Motivation schnell verloren. Ich vermute, dass sich das auch bei Supreme Commander 2 nicht ändern wird. Warten wir’s ab…

E3 2009: Supreme Commander 2 Demo

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Supreme Commander 2 Office Site

E3 2009 Trailers

Juni 5th, 2009

Die E3 ist jedes Jahr eines der wichtigsten Ereignisse der Spielebranche. Und die für mich interessantesten Trailer habe ich hier kurz zusammengefast. Nicht immer werden echt Spielszenen gezeigt, aber unterhaltsam sind sie alle Male.

Supreme Commander 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Star Wars Old Republic

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Assasins Creed 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Colin McRae: Dirt 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Castlevania: Lords of Shadow

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Metroid: Other M

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Crysis 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Lost Planet 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Call Of Duty: Modern Warfare 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Dragon Age: Origins

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Gran Turismo 5

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Super Mario Galaxy 2

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Forza Motorsports 3

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Tales of Monkey Island

Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.

Die Macht der Strippen

Juni 5th, 2009

Nein, es handelt sich hier nicht um einen erotischen Artikel. Es geht um die nackten … ähm, die reinen Fakten. 😉 Wer also etwas anders als einen technischen Bericht erwartet, sollte woanders suchen.

Am Anfang war alles gut..

Anfang 2007 stellte ich mir einen neuen Rechner zusammen. Dieser bestand unter anderem aus einem ASUS-Mainboard und zwei Festplatten von Western Digital. Da das Mainboard über einen RAID-Controller verfügt und mir die Geschwindigkeit bei Spielen und Dateioperationen wichtig ist, wurden beide Festplatten zu einem RAID-0-Array verbunden. Alles funktionierte wunderbar und ich war ein zufriedener Besitzer eines neuen PCs.

Der Ärger begann …

Mitte 2008, als der Datendurchsatz meiner Festplatten merklich sank. Das System reagierte teilweise überhaupt nicht mehr oder benötigte für Aufgaben mehrere Minuten, die normalerweise im Bruchteil einer Sekunde erledigt wurden. Nach den ersten Anzeichen erstellte ich sofort ein komplettes Backup, so dass ich vor Datenverlust geschützt war. Einige Wochen später konnte ich trotz mehreren Tests die Ursache des Problem noch immer nicht exakt bestimmten. Jedoch waren definitiv beide Festplatte betroffen. Vom Gehäusehersteller war der Verbau der Festplatten in ein Schaumstofffach vorgesehen, welches die hörbare Geräuschentwicklung der Platten vermindern sollte. Zum Abführen der entstehenden Wärme wurde ein großes Kühlblech an die Festplatten geschraubt. Da die Datenrate der Festplatte teilweise nur noch 1 – 2 MB/s betrug, war meine Vermutung, dass die Kühlung der Platten nicht ausgereicht hat und daher die Elektonik kaputt gegangen ist. Aufgrund der schwankenden Stabilität entschied ich mich im September 2008, eine neue Festplatte zu kaufen. Diese war entsprechend groß um beide vorhandenen Platten zu ersetzen. Diesmal habe ich die Platte in einen normalen 3,5″-Schacht eingebaut. So wollte ich Wärmeproblemen aus dem Weg gehen. Noch eine Neuinstallation und Rücksicherung meiner Daten durchgeführt, und schon lief das System wieder fehlerfrei.

3 Monate später …

begann das Spiel von neuem. Das System reagierte merklich langsamer. Da die Festplatte nicht alt war und ich schon 3 Monate vorher Festplatten ausgetauscht hatte, suchte ich erneut nach anderen Fehlern. Treiber und Systemeinstellungen wurden überprüft. Nichts. Dann entschied ich mich für ein BIOS-Update. Und da ASUS ein super Tool für das Update unter Windows anbietet, hab ich natürlich direkt im laufenden Betrieb ein neues BIOS eingespielt. Doch dummerweise ist dabei etwas schiefgegangen. Nach dem Löschen konnte das neue BIOS nicht geschrieben werden. Das Mainboard war danach nicht mehr zu gebrauchen. Wenn man den Rechner einschaltete liefen zwar die Geräte an, aber es wurde vom BIOS weder die Grafikkarte initialisiert, noch sonst irgendwelche Signale ausgegeben. Also am 20.12.2008 ein neues Mainboard von Gigabyte gekauft (was auf die Schnelle eben verfügbar war) und eingebaut. Neuinstallation war zum Glück nicht notwendig. Vorerst lief das System wie gewohnt.

Etwas über eine Woche später begann das System jedoch wieder zu zicken. Nach Einbau des neuen Mainboards hatte ich vergessen, die S.M.A.R.T.-Überwachung der Festplatte zu aktivieren. Als ich das nachgeholt hatte, wurde auch sofort ein Fehler von der Platte gemeldet. Ein direkter Umtausch der Festplatte im Geschäft war nicht möglich. Die Festplatte müsse durch den Hersteller überprüft werden, was einige Wochen dauern kann. Daher habe ich am 30.12.2008 eine neue Festplatte gekauft und einige Tage später die defekte Platte an den Hersteller zurücksenden lassen. Nun führte ich wieder eine Neuinstallation durch und spielte meine persönlichen Daten auf. Das System lieft wieder ohne Fehler.

6 Wochen später konnte ich mir beim Verkäufer eine neue Festplatte abholen. Ich entschied mich, diese als zusätzlichen Datenspeicher zu benutzen. Die Platte musste ich direkt unter der bereits vorhandenen Festplatte einbauen. Dabei stellte ich fest, dass ich das abgewinkelte SATA-Kabel der bisher vorhandenen Platte nicht weiter benutzen kann. Die neue Platte war dem Kabel einfach im Weg. Dem Gigabyte-Board waren jedoch orange SATA-Kabel ohne abgewickelte Stecker beigelegt. Also tauschte ich das Kabel der Hauptplatte entsprechend aus. Die neu eingebaute Festplatte hab ich weiterhin mit dem abwinkelten SATA-Kabel angeschlossen.

Bis Mai 2009 …

war ich jedoch mit meiner neuen Datenfestplatte nicht so richtig zufrieden. Immer wieder zeigte sich ein Verhalten mit Datenübertragungen zwisch 1 – 2.5 MB/s. S.M.A.R.T.-Fehler wurden diesmal jedoch nicht gemeldet. Und zeitweise war auch ein performanter Zugriff möglich. Aber ich nutzte die Platte nur selten. Doch dann konnte ich plötzlich auf kürzlich gespeicherte Dateien nicht mehr zugreifen. Nun war es wieder an der Zeit für ein Backup. Danach versuchte ich mit Tools des Herstellers (Seagate) Licht ins Dunkel zu bringen. Wenn ich dort Langzeittests durchführte, schlugen diese immer fehl. Aber es gab keinen Fehlerhinweise oder ähnliches. Unter DOS blieben die Tests nach einigen Minuten einfach stehen und reagierten nicht mehr auf Eingaben.

Somit brachte ich die Festplatte wieder zum Händler und schilderte die Symptome. Eine Woche später rief mich der Händler an. Die Platte habe man mehrere Tage getestet und dabei keinen Fehler feststellen können. Bei mir trat das Verhalten aber schon nach wenigen Minten auf. Diese Woche habe ich die Platte dann wieder abgeholt und im Rechner eingebaut. Sie zeigte das gleiche Bild wie zuvor. Unter DOS blieb die Testanwendung nach einigen Minuten einfach stehen.

Da die Primäre-Systemplatte jedoch fehlerfrei funktionierte, konnte ich ein generellen Fehler des Mainboards ausschließen. Mein nächster Gedanke war, dass der Controlleranschluss des Mainboards defekt sei. Ich steckte die Platte daher an einen der vielen anderen SATA-Anschlüsse. Doch bei Tests stellte sich erneut das Verhalten ein, wenn auch erst nach einer viel längeren Zeit. Nächster Schritt: Die Platte am Anschluss der funktionierenden Systemfestplatte testen. Da sich das Umstecken der Kabel auf dem Mainboard relativ schlecht bewerkstelligen lies, habe ich direkt das Kabel von der Systemplatte (die brauchte ich für einen Test ja nicht) an die Datenplatte angeschlossen. Der jetzt gestartete Langzeittest lief und lief und lief. Auch das vollständige Löschen der Platte war nach 2 Stunden erfolgreich beendet. So richtig wollte ich aber nicht glauben, dass bis auf den ersten Anschluss des SATA-Controllers alle Anschlüsse defekt sind.

Da bemerkte ich, dass ich an dem funktionierenden Anschluss das von Gigabyte mitgelieferte SATA-Kabel verwende. Im Gegensatz zur Datenplatte. Dort habe ich nachwievor das zum ASUS-Board gehörenden Kabel verwendet. Nachdem ich auch dieses Kabel ersetzt hatte, war das Nutzen der Datenplatte kein Problem mehr. Ich konnte es kaum glauben … und es kommt noch besser. Die vor einem Jahr als defekt eingestuften WD-Festplatten funktionieren mit dem neuen Kabel auch fehlerfrei.

Fazit

Es zeigt sich mal wieder, dass man an die einfachste Fehlerursache, ein fehlerhaftes Kabel oder eine fehlerhafte Steckverbindung, erst zuletzt denkt. Sämtliche Festplattenproblem der letzten 1 ½ Jahren sind vermutlich auf den Einsatz dieser SATA-Kabel zurückzuführen. Selbst die zurückgegeben Festplatte, welche S.M.A.R.T.-Fehler gemeldet hat, ist vermutlich gar nicht defekt. Der S.M.A.R.T-Mechanismus überwacht bestimmte Informationen der Festplatte und sobald diese zu oft aus dem zuläßigen Bereich laufen, wird ein Fehler signalisiert. Durch das Kabel herbeigeführte Datenfehler könnten somit zur Anzeige eines Festplattenfehlers geführt haben, die Platte wäre jedoch völlig in Ordnung.

Und was ist nun der Unterschied zwischen den beiden verwendeten SATA-Kabeln?

Ganz einfach. Die zuerst verwendeten SATA-Kabel haben keinen Clip-Verschluss und sehen wie folgt aus.

sata1

Die neueren Kabel hingegen sind mit einem zusätzlichen Clip-Verschluss ausgestattet. Somit halten diese besser in den Buchsen.

satacable

Kabel gehören mittlerweile zu den alltäglichsten Elektronikartikeln. Da vergisst man schnell, dass auch diese wichtig sind. Und bei den hohen Übertragungsraten von 3 GB/s „Macht“ eine kleine Halterung den Unterschied.

Gekostet hat mich diese Erfahrung übrigens rund 300 Euro (zwei Festplatten + ein Mainboard) und jede Menge Zeit.

Petition gegen Indizierung und Sperrung von Internetseiten

Mai 19th, 2009

Am 22.04.2009 wurde das Gesetz zur „Bekämpfung der Kinderpornografie“ von der Bundesregierung beschlossen. An sich und auf den ersten Blick nichts Falsches. Wenn mich jemand fragt, ob ich für eine Sperrung von kinderpornographischen Inhalten bin, antworte ich mit „Ja“.

Dennoch wurde eine Petition an den Bundetag eingerichtet, welche das Ablehnen des Gesetzes fordert. Die Indizierung und Sperrung von Internetseiten durch das BKA und die Internetprovider werden darin als undurchsichtig und unkontrollierbar angesehen. Die Sperrlisten können nicht eingesehen werden und der Inhalt wird ausschließlich durch das BKA bestimmt. Nach welchen Kriterien Webseiten auf diese Sperrliste gesetzt werden, ist nicht klar. Beim Aufruf der Sperrseiten werden die IP-Daten des Surfers an das BKA weitergegeben und können schon als illegaler Tatbestand gewertet werden. Es besteht so das Risiko,  dass man bei zufälligem Besuch (durch Spam, Links mit unbekanntem Ziel, Weiterleitungen) unschuldig ins Visier der Kriminalbeamten gerät.

Dem Missbrauch wird Tür und Tor geöffnet und eine unabhängige Kontrolle findet nicht statt. Man könnte sogar Seiten auf die Liste setzen, die den Besucher zunächst zum BKA umleiten und danach die Anfrage an den tatsächlichen Webserver geben. So wäre man in der Lage, sämtliche Zugriffe auf das System zu protokollieren, ohne auch nur irgendeinen richterlichen Beschluss einzuholen.

Hier ein paar Links zu den Fakten, so kann sich jeder eine eigene Meinung bilden. Tut etwas und schaut nicht weg.

Gesetzesentwurf zu den Internetsperren
Petition gegen Internetsperren

Wie passend. Das Innenministerium hat eine Satireseite vom Netz nehmen lassen, ganz einfach direkt durch den Webhoster.
Innenministerium nimmt Satireseite vom Netz
Geschichte zur Sperrung der Satireseite

Quelle