| Freie DatenBank |
|---|
Für die hier beschriebene Lösung wird ein Linux-Server benötigt, der einen Interverbindung besitzt und auf dem Perl (Version 5) installiert ist. Für die Installation des hier beschriebenen Skript muss man auf dem Linux-Rechner als Benutzer root einloggen können. (Die Installation des hier beschriebenen Perl-Skripts benötigt einige Erfahrung als Linux-Adminstrator!)
Zum Testen der Richtigkeit von WWW-Adressen werden mehrere Perl-Module (z. B. Socket und LWP) benötigt, die zuerst auf dem Linux-Rechner installiert werden müssen. Da diese Module wieder andere Module benötigen, ist zur Vorbereitung einige Installationsarbeit notwendig. Die folgenden Module können hier in gepackter Form heruntergeladen werden. (Unter Windows werden beim Herunterladen die Punkte im Dateinamen durch das Unterstreichungszeichen ersetzt: URI-1_04_tar.gz. Die Dateien müssen vor dem Entpacken wieder händisch umbenannt werden.)
| Perl-Module herunterladen: | URI-1.04.tar.gz, MIME-Base64-2.11.tar.gz, HTML-Parser-2.23.tar.gz, libnet-1.0606.tar.gz, Digest-MD5-2.09.tar.gz und libwww-perl-5.44.tar.gz |
Die aktuellen Versionen dieser Module können von Adresse www.perl.com heruntergeladen werden.
Die gepackten Dateien werden mit dem Befehl
tar -xzf modulname.tar.gz
auf dem Linux-Rechner entpackt. Für jedes Modul wird dabei ein Verzeichnis
mit dem Namen modulname angelegt.
Jedes Modul wird dann durch die Befehlsfolge
cd modulname perl Makefile.PL make make test make install
vom Benutzer root installiert. Fehlermeldungen beim Installieren weisen darauf hin, ob noch weitere Module installiert werden müssen. Einige Module benötigen für die Installation auch den C-Compiler gcc, der aber standardmäßig installiert sein sollte.
| Perl-Skript herunterladen: | Datei SCHULEN_test.perl.tgz |
| gepackte Datei: | SCHULEN_test.perl |
Entpacken Sie diese Datei in einem Verzeichnis, auf das nur der
Benutzer root Lese- und Schreibrechte hat.
Das Perl-Skript SCHULEN_test.perl überprüft eine vorgegebene
Anzahl von WWW-Adressen, die in der Tabelle SCHULEN gespeichert sind. In dieser
Tabelle wird dann das Feld TESTDATUM gleich den aktuellen Datum gesetzt. Das
Feld TEST wird nach folgender Regel geändert:
| Wert von Feld TEST | WWW-Adresse war ... |
|---|---|
| wird gleich 0 gesetzt | richtig |
| wird um 1 erhöht, wenn der Wert von TEST kleiner als 20 ist | falsch |
Damit diese Skripts verwendet werden können, muss in MySQL-Datenbank mysql (Tabelle user) ein Benutzer FDBADMIN existieren. Sein Passwort muss in einer Textdatei mit dem Namen init.dat gespeichert sein. (Die Datei init.dat wird mit einem Editor angelegt und besteht nur aus einer einzigen Zeile mit dem Passwort. Die Datei init.dat muss im selben Verzeichnis wie die Datei SCHULEN_test.perl gespeichert werden.) Als Benutzer root kann mit dem Befehl
chmod 600 init.dat
das Lesen und Schreiben nur für den Benutzer root gestattet werden.
Folgende Werte können im Perl-Skript angepasst werden:
$testanzahl = 150; $dateiname = "/var/log/FDB.SCHULEN.log";
$testanzahl ist die Anzahl der WWW-Adressen, die bei jedem Aufruf des
Perl-Skripts geprüft wird.
$dateiname ist der Name der Logdatei, die vom Perl-Skript angelegt wird.
Durch das Programm cron lässt sich das Perl-Skript regelmäßig z. B. in den Nachtstunden starten. Dazu editiert man als Benutzer root die Datei /etc/crontab und fügt folgende Zeile ein:
0 2 * * * root /pfad_zum_Skript/SCHULEN_test.perl
Dadurch wird täglich um 02.00 Uhr das Perl-Skript SCHULEN_test.perl mit den Rechten des Benutzers root gestartet.
| FDB-Projekt | Datenbanknetz SCHULEN | Niederösterreichischer Bildungsserver |
Letzte Änderung am 04. September 2001
herwig.reidlinger@pinoe-hl.ac.at.