Hier sind die aus blognostalgischen Gründen archivierten Artikel meines ersten Weblogs das Netzbuch, das von Mai 2002 bis November 2006 aktiv war. Aktuellere Artikel hat die neueste Version der Uninformat im Angebot.

Perennen

Gigantentreffen: iPod 3G 20GB trifft iPod 4G 40GB

Mac Perennen

Am Wochenende begab es sich, dass ein iPod 3G 20GB (links im Bild) auf einen neuen iPod 4G 40 GB traf. Die Kamera war Zeuge, als der allzeit neugierige Netzbuch-Schreiber den neuen iPod unter die Lupe nahm.

Als erstes fällt der Unterschied in den Bedienelementen ins Auge und ins Fingerchen. Die eleganten Sensortasten des iPods der 3.Generation (3G), deren Bedienung mit einem zarten Fingertipp ohne jegliche Mechanik wirklich sehr elegant ist, wird in der 4. Generation (4G) abgelöst durch das neue glorreiche “Click Wheel”. Offensichtlich hält Apple seine Kundschaft für in haptischen Dingen unbegabte Grobmotoriker, die mit Sensortasten nicht zurecht kommen. Die Mechanik mit einem deutlichen Druckpunkt des Klickrädchen fühlt sich sehr “gewöhnlich” an, in meinen Augen ein klarer Rückschritt.

Ganz übel: Auf dem Bild oben sieht man auf dem iPod 4G (rechts im Bild) deutliche Klebstoffspuren. Diese darf man, gemäß Apples Anleitung, durch Rumfuhrwerken mit Klebeband auf dem Display entfernen. Das ist lachhaft und einem Gerät dieser Preisklasse absolut unwürdig. Nimmt man noch dazu, dass die schöne Detailliebe des 3G, wie bspw. die kleine Plastikabdeckung des Dockports, in der 4. Generation ebenso weggefallen ist wie der Stoffbeutel, die Schutztasche und die Fernbedienung, so ist offensichtlich dass die Preissenkung der neuen Generation mit deutlichen Abstrichen bei der Qualität erkauft wurde. Das zweite Bild zeigt die iPods im Halbdunkel mit eingeschalteter Beleuchtung, auch hier wirkt der 4G (rechts im Bild) deutlich “unedler” als sein Vorgänger mit seinen sehr kühlen beleuchteten Sensortasten.

Aber Optik ist nicht alles, Hauptsache sind ja die “inneren Werte”. Ein Probehören ergab bei “normal” produzierten Stücken keinen hörbaren Unterschied, ältere “Garagenproduktionen” klingen (ohne Equalizer, versteht sich) subjektiv ein wenig “druckvoller”. Bei größeren Sammlungen (mit fast 39 Lenzen hat man halt schon ein bißchen Musik angesammelt) kommt es nicht mehr zu den beim 3G sporadisch auftretenden “Gedenksekunden” beim Wühlen in der Sammlung, da macht sich wohl das neue “Innenleben” des 4G bezahlt. Das letzte Bild zeigt die beiden Geräte von unten, der 4G mit 40 Gig (rechts) ist deutlich dicker als der 3G mit 20 GB, wobei der 4G 20GB 4 Millimeter dünner ist.

Fazit: Der Eindruck vom 4G ist zwiespältig, die Qualität der Verarbeitung (Klebstoffreste!) und das neue “Click Wheel” (ein enttäuschender Rückschritt, einfach “uncool”) wirken “gewöhnlicher” im Vergleich zur Detailliebe und den Sensortasten des 3G. Der erste Eindruck von Klang und Software des 4G überzeugen dagegen. Für den Besitzer eines 3G gibt es aber keinen Grund zum “Upgrade”.

Internet Explorer 6 unter Linux

Linux Perennen

Ein Ärgernis für jeden passionierten oder professionellen Website-Kreator: Man kommt nicht umhin, seine Werke mit dem “Werkzeug des Teufels”, dem MS Internet Explorer 6, zu testen. Das bedeutet für den Linuxer, dass er entweder Windows booten oder einen zweiten Rechner mit Windows anschaffen muß, und das nur um mal zu gucken wie die Windowser gucken. Extrem ärgerlich!

Vor zwei Jahren hatte ich mal mit Wine experimentiert, das aber frustriert wieder aufgegeben. Heute startete ich einen neuen Anlauf, und staunte nicht schlecht als sich schlußendlich dieses Bild auf meinem KDE-Desktop bot:

Screenshot: MSIE 6 unter Linux

Es funktioniert tatsächlich, und das relativ unaufwändig!

Vorgegangen bin ich nach einer Installationsanleitung im Gentoo-Forum, einer weiteren Anleitung in “Frank`s Corner” und Mikes Wine Internet Explorer Installer.

Als erstes benötigt man Wine. Wine ist kein “Windows-Emulator”, wie der Volksmund gerne mal behauptet, sondern stellt einen Layer für die Ausführung von Windows-Programmen unter Linux zur Verfügung. Die Installation von Wine ist distributionsabhängig, unter Gentoo installiert man es mit emerge wine cabextract, letzteres ist ein nützliches Utility das man gleich mit installieren sollte. Wichtig: Man benötigt die Wine-Version “20031212”!

Als nächstes muß das System wissen wie es Wine findet, folgende Befehle, in der Shell ausgeführt, bewerkstelligen dies:

export PATH=$PATH:/usr/lib/wine/bin<br /> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/wine/lib

Am besten fügt man diese Zeilen gleich seiner .bashrc hinzu!


Nun besorgt man sich Mikes Wine Internet Explorer Installer, bspw. mit wget:


wget http://bylands.dur.ac.uk/~mh/wine-ie/install-ie6.sh

Und führt ihn aus: ./install-ie6.sh


Es wird nun das Installationsprogramm von Microsoft für den Internet Explorer 6 “downgeloadet” und ausgeführt. Ab und an kommt es zu irgendwelchen Fehlermeldungen, einfach ignorieren! Bleibt Mikes Installationsskript in der Wine-Debugshell stehen, beendet man diese mit “quit”. Das Skript bietet am Schluß noch an, ein Startskript sowie ein Symbol für den Internet Explorer anzulegen, dem stimmt man zu. Wenn alles gut gegangen ist, sollte das Bild oben auf dem Linux-Desktop erscheinen.


Als erstes sollte man die Startseite im Internet Explorers umstellen, denn bei mir stürzte der IE ab als er versuchte die von Microsoft voreingestellte MSN Deutschland – Startseite zu laden, “about:blank” ist da eine gute Wahl.


Das war es schon, zukünftig kann man mit iexplore den Internet Explorer starten, diesem Skript kann man auch einen URL als Parameter mitgeben, also in der Shell z.B. iexplore <a href="http://www.das-netzbuch.de" >http://www.das-netzbuch.de</a> tippen. Fortan kann man sich das Booten von Windows für Textzwecke sparen! :-)

Blogroll aus OPML generieren

Techkram Perennen

Inspiriert von Martins “Weblogs, die ich lese”-Seite habe ich nun auch meine RSS-Feeds als “Blogroll Nummero Zwo” zugänglich gemacht. Dazu habe ich meine RSS-Feeds aus NetNewsWire als OPML-Datei exportiert und über eine geschwind programmierte PHP-Funktion (basierend auf einem “Code-Brocken”, den man auf “The Tao of Mac” finden kann) umgewandelt und in die Seite eingebunden.


Wie das hier im Netzbuch so gute Sitte ist ;-), steht diese Funktion zur freien Verwendung zur Verfügung. Die OPML-Datei aus NetNewsWire funktioniert problemlos, auch die von mir testweise verwendete OPML-Datei von Martin, mit dem SharpReader erzeugt, funktionierte klaglos.

Den Code findet Ihr hier: OPML-Blogroll. Diesen speichert Ihr als “opml-blogroll.php” ab und “loadet” sie auf Euren Webserver “up”. pMachine-UserInnen haben es gut, sie brauchen diese Datei nur in das pm/scripts-Verzeichnis zu werfen und haben die Funktion dann automatisch verfügbar, alle anderen müssen die Datei mit include("opml-blogroll.php") in ihre Seite einbinden. Als nächstes exportiert Ihr die OPML-Datei aus Eurem Feedreader und ladet sie ebenfalls auf Euren Webserver hoch. Aufgerufen wird die OPML-Blogroll dann mit:


opml2html($opmlfile,$myFeedSymbol);


$opmlfile steht für den Pfad oder die URL zu Eurer OPML-Datei, der optionale zweite Parameter $myFeedSymbol definiert ein Symbol für den Link zum RSS-Feed. Das kann einfach ein Text sein wie “XML”, aber auch ein HTML-Code-Brocken der ein Bildchen referenziert, prinzipiell alles was man halt so als Link verwenden darf. Wird der zweite Parameter weglassen, wird als Voreinstellung “[XML]” für den Link zum RSS-Feed verwendet.


Die Funktion erstellt eine alphabetisch sortierte “unordered list”, die Ihr mit einem div drum herum und CSS-Selektoren nach eigenen Wünschen formatieren könnt.


Die Funktion erfordert ein PHP mit der expat-Library für die XML-Funktionen auf Eurem Webserver. Wenn es Probleme gibt mit einer OPML-Datei, einfach lamentierend kommentieren. ;-)


Verwendung natürlich nur auf eigenes Risiko, sollte Euer Server explodieren oder sich sonstiges Unheil ereignen bin ich unschuldig! ;-)

Für Mutige: MSIE-Basteleien

Webworking Perennen

Problem für Webworker: Man kann pro Windows-Installation nur einen MS Internet Explorer installieren, man muß aber seriöserweise seine Werke auch im MSIE 5.0 und MSIE 5.5 testen, ob man will oder nicht, da immer noch eine nicht unbeträchtliche Anzahl von technisch nicht so versierten Surfern mit diesen Antiquitäten unterwegs ist.

Jens schildert auf F – LOG – GE einen Weg mehrere MSIEs parallel auf einer Windows-Installation zu betreiben, was nach Jens` Aussage ganz gut funktioniert, von einigen Nebenwirkungen wie Abstürze, wenn man das Favoriten-Menü öffnet, mal abgesehen. Mal schauen ob ich mutig genug bin das mal auszuprobieren. ;-)

Server-Konsolidierung, oder: Oh, Du göttliches Knoppix!

Zeugs Perennen

Nach dem Wochenende, welches den schönen Offline-Seiten des Lebens gewidmet war, habe ich mich zum Auftakt dieser Woche einem aktuellen IT-Modetrend gewidmet: Server-Konsolidierung. ;-)


Sprich: Ich habe meinen Hardware-Zoo ein wenig ausgedünnt, zur Reduzierung der Lärmentwicklung und des Stromverbrauchs, und zur Anpassung an meine durch das Powerbook veränderten Computer-Gewohnheiten. Das alte Notebook wurde verschenkt, ebenso der P75 der bisher als fli4l-Disketten-Router fungierte. Letzterer wurde durch einen leisen und stromsparenden Hardware-Router ersetzt.


Als Server im Netz fungiert nun der bisher nur als GiantDisc-MP3-Server eingesetzte PII mit Debian, beim Neuordnen der Platten passierte dann ein Malheur: Da der PII ein BIOS besitzt das nur Platten bis 33GB erkennt lief dort ein Diskmanager von IBM, um die 60GB-Datenplatte ansprechen zu können. Den habe ich in einem Moment geistiger Umnachtung von der Boot-Partition entfernt und wollte die 60GB-Platte in meinen P4-Arbeitsrechner einbauen. Das Problem: Da sie mit dem Diskmanager partitioniert worden war, erkannte kein installiertes System die Partitionen, kein Debian, kein Gentoo, Windows sowieso nicht. Die Diskette mit dem Diskmanager blieb unauffindbar. Gut, denkt man sich, holt man ihn sich bei IBM. Dort wird man zu Hitachi geleitet, nach einiger Sucherei findet man die lapidare Botschaft: »Looking for Disk Manager? Disk Manager is no longer available for download on our site, because systems with Windows XP and 2000 don`t require it.«

Na toll. Es gibt ja auch keine anderen Systeme, und dass man eine bereits mit Daten bestückte Platte besitzt und dafür noch mal einen Diskmanager benötigt ist ja so unwahrscheinlich wie Schnee im August. Was für ein Fruchtgetränke-Kontor! Damit haben wir einen weiteren Eintrag auf der “Schwarzen ralle-Liste” von Herstellern die bei zukünftigen Hardware-Anschaffungen keine Berücksichtigung mehr finden werden …


Das Problem verschärfte sich, mir wurde ganz ungut zu Mute, denn auf der 60er waren insgesamt 30GB wichtige Daten (alle mühsam von meinen CDs gerippten MP3s, das Archiv meiner Arbeit seit 1997, usw.), die ich schon immer mal auf DVD brennen wollte, aber irgendwie nie zu gekommen bin. ;-) Was nun? Mit einem Hex-Editor die Partitionstabelle bearbeiten? Sehr gefährlich!


Ein von zahlreichen Lucky-Strike begleitetes fieberhaftes Nachdenken über eine Lösung setzte ein, dann, auf dem Rückweg vom Rauchen, fiel mein nachdenklicher Blick auf eine Knoppix-CD. Debian und Gentoo konnten die Platte nicht ansprechen, wieso also Knoppix? Aber “Versuch macht klug”, also wurde flugs Knoppix gebootet, und, unfassbar aber wahr, die Platte konnte problemlos “gemounted” werden. Nun bleibt der Rechner an, die Daten werden auf eine andere Partition gesichert, und dann wird alles, was Diskmanager und seine Partitionen ist, gänzlich entfernt. Für dieses Gefühl der Erleichterung werde ich Klaus Knopper und seinem genialen Knoppix bis ans Ende aller Zeiten dankbar sein, oh göttliches Knoppix, ich bin Dein devoter Adept …


Was lernen wir daraus? Nie, nie, nie Festplatten mit verhärmten Diskmanagern einrichten, und wenn dann die Installationsmedien am berühmten “sicheren Ort” verwahren. Und man sollte bis ans Ende aller Zeiten Award für ihre saudummen BIOS-Bugs schlagen und prügeln, denn ich habe mit eigenen Händen in einen PII 266 mit Phoenix-Bios problemlos eine 120 GB-Platte einbauen können, dass das ohne Diskmanager nicht funktioniert ist also keineswegs ein Naturgesetz, auch nicht bei 3,5 Jahre alten Boards.


Und eine weitere Lehre: Mit Macs wäre das alles nicht passiert. ;-)

Spaß mit cal

Linux Perennen

Unter der unscheinbaren Unix-Kommandozeile (z.B. in Mac OS X und Linux) schlummert so manches unentdeckte Schätzchen. Z.B. der cal Befehl. Wenn man gerade in einem Terminal tippt und mal schnell nachschauen möchte wann man Geburtstag hat, so hackt man mal kurz ein cal -y in die Kommandozeile und erhält einen wunderhübschen Jahreskalender. Unter Linux kann man auch ncal -y benutzen, das formatiert den Jahreskalender etwas eleganter.

cal funktioniert für den Zeitraum ab dem Jahr 1 nach Christus. Sehr interessant ist ein cal -y 1752. Bekanntlich gab es bereits im Jahre 1582 die Gregorianische Kalenderreform, die aber erst 1752 in ganz Europa umgesetzt wurde. Daher sieht der September 1752 sehr interessant aus …


Aber es steckt noch mehr drin. Unter “/usr/share/calendar” sind in Mac OS X und Linux Kalenderdateien mit historischen Daten versteckt, Paso bedient sich im fscklog immer dieser Funktion für seine “Jubiläen aus dem Terminal”. Unter Mac OS X gibt ein cat /usr/share/calendar/* | grep `date +"%m/%d"` auf dem Terminal aus was sich alles so ereignet hat, Linux-User brauchen nur ein trockenes calendar in das Terminal zu hacken.


Mit calendar -a kann der oder die “root” des Systems alle Jubiläen und Termine eines Tages per Mail an alle User senden, und (zumindest unter Linux) kann sich auch jede® Benutzer(in) eine Kalenderdatei im Home-Verzeichnis anlegen die dann durch cal und calendar ebenfalls verarbeitet wird.


Wie man sieht, es müssen nicht immer große bunter Programme sein, auch in der unscheinbaren Kommandozeile findet man nützliche Sachen …

Internet-Plagen: Mailing-Listen-Thread Kaputtmacher

Internet Perennen

Und mal wieder etwas aus der beliebten Netzbuch-Reihe Internet-Plagen: Der “Mailing-Listen-Thread Kaputtmacher”. Werfen wir mal einen Blick auf diesen, aus Gründen der Diskretion anonymisierten Screenshot:

Das Thema war “Powerpoint auf HTML-Seite”, plötzlich taucht mitten drin eine “Antwort” mit dem Thema “MacOSX” auf, die damit nicht das geringste zu tun hat. Was ist passiert? Ein besonders unfähiger Teilnehmer hat eine Mail aus der Liste auf dem Schirm, und möchte etwas ganz anderes schreiben. Da es ja so furchtbar viel Arbeit ist eine neue Mail zu erstellen und die Mailing-Listen-Adresse einzutragen drückt der Schlauberger auf Antwort, ersetzt Betreff und Text im Wissen “nu habe ich eine neue Mail erstellt” und schickt es ab. Was die eher schlichteren Gemüter aber nicht wissen: In den Headern jeder Mailing-Listen-Mail steht eine Referenz auf den Beitrag, richtige Mail-Clients (also nicht Outlook) werten das aus und sortieren die Beiträge in der logischen Reihenfolge. Davon weiß unser Schlauberger aber nichts. Wenn man nun diese Liste archiviert und den Thread zuklappt findet man “MacosX” nie mehr wieder, da ja in der Übersicht nur das erste Thema des Threads, “Powerpoint auf HTML-Seite”, zu lesen ist.
Wenn man nun noch berücksichtigt dass in der Liste wieder und wieder darauf aufmerksam gemacht wird, und dann trotzdem immer die selben Schlauberger sich solchem verwerflichen Tun hingeben, und das auf einer Liste von “Internet Professionals”, dann fehlen einem wirklich die Worte. Avanti Dilettanti!

Aber es gibt auch das genaue Gegenteil davon:

[Screenshot: Von unfähigem Teilnehmer zerstörter Thread]

Hier haben wir das Thema “Achtung!!!”. Hier ist der Thread zerstört, weil zwei Leute eine Antwort geschrieben haben, die aber in Wirklichkeit eine neue Mail ist, jedenfalls sind die Referenzen im Header weg. Oder sie benutzen einen grausam unfähigen Mail-Client. Jedenfalls ist der Thread völlig zerfasert und man hat Mühe heraus zu finden, was sich eigentlich auf was bezieht. Ergo liest man einfach gar nichts davon. Was aber eigentlich nicht der Sinn einer Mailing-Liste ist.

Es kann doch nicht so schwer sein: Möchte ich an ein Thema anschließen dann antworte ich, möchte ich ein neues Thema eröffnen so schreibe ich eine neue Mail. Ich weigere mich standhaft so etwas einfach so hin zu nehmen, es kann nicht sein dass immer auf den kleinsten gemeinsamen Nenner “internettigen” Grundwissens Rücksicht genommen wird. Wer sich im Internet äußert soll sich wenigstens die elementaren Grundkenntnisse aneignen, verstehen und anwenden. Finde ich.

Bisher erschienen in der Reihe “Internet-Plagen”:

Internet-Plagen: Texte im Word-Format in Emails

Internet Perennen

Man kennt das: Kunde möchte einen Text für eine im Aufbau befindliche Website senden, und man bekommt – ein Word-Dokument. Oder man reserviert ein Wochenende in einem Hotel, man erhält eine digitale Auftragsbestätigung – als Word-Dokument. Als wäre das in irgendeiner Form ein Standard. Man öffnet es (schließlich benötigt man die Info), ein Makrovirus aktiviert sich, löst eine Kette von schlimmen Killer-Prozessen in Windows aus, der Prozessor überhitzt, der Rechner fängt Feuer, die Tapeten gleich danach. Schon steht das Stockwerk in Flammen, die Gasleitung explodiert – kurz und gut, totale Apokalypse, ein halber Stadtteil in Trümmern, und alles nur weil jemand nicht in der Lage war den Text per Zwischenablage in die Mail zu kopieren!


Richard Stallman, seines Zeichens GNU-Evangelist, mag auch keine Word-Attachments, deshalb fordert er alle Nutzer freier Systeme Emails mit Word-Anhängen höflich aber bestimmt abzulehnen und den Absender über sein schä(n)dliches Tun aufzuklären: Wir können Word-Anhängen ein Ende machen


»Für uns Nutzer freier Betriebssysteme ist es lästig, Word-Dokumente zu erhalten. Aber die schlimmste Wirkung übt das Senden von Word-Dokumenten auf Leute aus, die auf freie Software umsteigen wollen: Sie zögern, weil sie Word benötigen, um die erhaltenen Dateien zu lesen. Die Praxis, Word-Anhänge zu verschicken, verhindert das Wachsen unserer Gemeinschaft und die Ausbreitung der Freiheit. Wir nehmen nur die gelegentliche Belästigung eines Word-Anhangs wahr, dabei stellt dies eine beständige Verletzung unserer Gemeinschaft dar, die nicht in unsere Aufmerksamkeit rückt. Aber es passiert die ganze Zeit.«


Da diese Aktion aber schon seit Januar 2002 im Netz steht und ich die aufgeblähten Virenschleudern trotzdem immer bekomme war diese Aktion wohl noch nicht sehr erfolgreich, man müsste vielleicht einen schicken Button für den Einbau auf der Homepage basteln, sonst nimmt das keiner wahr. Oder das Thema hat nicht die soziale Relevanz wie z.B. die Aktion gegen Copy & Paste in Gästebüchern


Interessant ist es übrigens so ein fremdes Word-Dokument mal mit einem Ascii-Editor unter die Lupe zu nehmen, was die meisten nicht wissen ist dass Word gelöschte Textteile im Dokument speichert und man so leicht mal nachschauen kann wie denn z.B. der erste Preis des Angebots war …

Lebenshilfe: Backup-Strategie für das Weblog

Webworking Perennen

Die Geschichte mit den Strato-“Backups” hat es mal wieder gezeigt: Es ist ein Spiel mit dem Feuer die Daten auf einem gemieteten Webspace nicht regelmäßig zu sichern, wenn es mal schief geht sind Monate oder Jahre des Bloggens einfach im Daten-Nirwana verschwunden. Darum: Daten sichern! Daten sichern! Daten sichern! Die Schwierigkeit dabei: Eine MySQL-Datenbank (entgegen anderslautenden Meinungen ist MySQL sehr zuverlässig, bei meinem Arbeitgeber habe ich fast die gesamte interne Verwaltung in MySQL-Datenbanken laufen, und es gab in über zwei Jahren nicht einen Datensatz der verloren ging, die zuverlässigste Datenbank nützt aber nichts wenn der Rechner drumherum wie bei Strato ein Saustall ist), wie sie viele Weblogsysteme einsetzen, kann man nicht per ftp auf den eigenen Rechner ziehen, sondern muß die Daten extrahieren und dann an dem berühmten “sicheren Ort” lagern.


Eine entsprechende Ausstattung des gemieteten Accounts erleichtert die Sache dergestalt dass man die Datensicherung völlig automatisieren kann. Je billiger der Webspace, desto mehr Handarbeit kann notwendig sein. Wie man die Datensicherung am geschicktesten anstellt kann die verehrte Zielgruppe in einem Netzbuch-Karfreitag-Special erfahren indem sie einmal behände auf Mehr klickt …

Luxus-Account: Cronjob verschickt Mail mit komprimierter Datenbank


Die folgende Vorgehensweise funktioniert wenn man Shell-Zugriff auf seinen Webspace hat. Bevor etwaige Nörgler rumnöhlen “ey, dat kann man aber alles in eine Zeile packen”, weiß ich, aber ich habe das bewusst einfach gehalten damit es durchsichtig bleibt.


Wenn man Shell-Zugriff per ssh oder telnet (sofort den Hoster wechseln, kein verantwortungsvoller Hoster bietet telnet an) hat ist es ganz einfach. Wir benötigen “mpack” um eine Mail mit Anhang zu erstellen, darum probieren wir nach dem Login durch ein beherztes “mpack” auf der Kommandozeile einmal aus ob das vorhanden ist. Wenn die Antwort etwa “An input file must be specified” lautet, wunderbar. Lautet die Antwort “bash: mpack: command not found” dann muß man die “Nicht ganz der Luxus-Account”-Methode (s.u.) verwenden.


Mit einem Editor der Wahl erzeugt man nun in seinem home-Verzeichnis das folgende kleine Shellskript mit dem Namen db-backup.sh:

<br />#!/bin/sh <br />mysqldump --user=DB-BENUTZER --password=DB-PASSWORT NAME-DATENBANK > NAME-DATENBANK.sql <br />gzip NAME-DATENBANK.sql <br />mpack -s Backup NAME-DATENBANK.sql.gz DEINE_EMAILADRESSE <br />rm -f NAME-DATENBANK.sql.gz <br />

Für DB-BENUTZER tragt Ihr den Benutzernamen für Eure Datenbank ein, für DB-PASSWORT das Passwort, für NAME-DATENBANK überraschenderweise den Namen der Datenbank und für DEINE_EMAILADRESSE Eure Email-Adresse. Nach dem Speichern verändert Ihr noch die Rechte des kleinen Skriptes mit

chmod 700 db-backup.sh, das Skript ist nun ausführbar und außer Euch kann niemand das Passwort für die Datenbank lesen.


Nun testen wir einmal, auf der Shell einmal ~/db-backup.sh eintippen, und kurze Zeit später erhaltet Ihr eine Email welche die Datenbank als komprimierten Dateianhang enthält.

Da das Ganze ja automatisch ablaufen soll erstellen wir nun noch einen Cronjob, der bewirkt dass das Skript zu von uns definierten Zeitpunkten automatisch ausgeführt wird und uns die Datenbank selbstständig nach Hause sendet. Dazu müssen wir noch den genauen Pfad zum “home”-Verzeichnis wissen, ein locker eingetipptes (immer auf der shell) “set|grep HOME” liefert als Ergebnis etwas wie “HOME=/home/irgendwo/juppi23” als Ergebnis. Jetzt wird es ein wenig kompliziert, aber ist für uns auch kein Problem. ;-) Mit “crontab -e” öffnen wir einen Editor, meistens der etwas exzentrisch zu bedienende vi. Jetzt nicht einfach lostippen! Mit einem “i” wechseln wir in den Bearbeitungsmodus und erstellen eine neue Zeile. Es muß definiert werden wie oft unser Skript laufen soll, im Editor muß eine Zeile nach dem Schema “MINUTE STUNDE TAG_DES_MONATS MONAT WOCHENTAG auszuführendes_Programm” erzeugt werden. Ein “*” steht dabei für beliebig. Wir tippen nun “* 3 * * * /home/irgendwo/juppi23/db-backup.sh” (natürlich müssen wir den eben ermittelten Pfad zu unserem Home-Verzeichnis verwenden) ein, mit einem Druck auf die ESCAPE-Taste gefolgt von “:wq” sichern wir den Cronjob. Nun wird jeden Tag um 3:00 Uhr automatisch ein Backup der Datenbank erstellt und per Mail verschickt. Würde man z.B. “* 3 * * sun /home/irgendwo/juppi23/db-backup.sh” eintippen entsprechend nur Sonntags um 3:00 Uhr. Das war es schon, wir brauchen nichts mehr zu tun, das Datenbank-Backup unseres Weblogs trudelt von nun an automatisch in unsere Mailbox. Was wir dann im Falles des Falles damit anstellen wird weiter unten erläutert!


Nicht ganz der Luxus-Account: Cronjob verschickt Mail mit unkomprimierter Datenbank



Wenn kein “mpack” vorhanden ist müssen wir das Skript ein wenig modifizieren. Es bleibt uns nichts anderes übrig als den Inhalt der Datenbank als Text zu versenden, was die Mail ein wenig umfangreich machen kann. Das db-backup.sh-Skript lautet dann in diesem Fall:

<br />#!/bin/sh <br />mysqldump --user=DB-BENUTZER --password=DB-PASSWORT NAME-DATENBANK > NAME-DATENBANK.sql <br />mail -s "Backup" DEINE_EMAILADRESSE < NAME-DATENBANK.sql <br />rm -f NAME-DATENBANK.sql <br />

Die weitere Vorgehensweise ist identisch mit der oben beschriebenen. Die Datenbank wird als Inhalt der Mail (im Klartext) versendet, wenn wir das Backup dann einmal benötigen müssen wir wohl oder übel den Mailtext als Datei speichern und dann wie unten erläutert zurückspielen.


Voll der Billigheimer: Backup ohne Shell-Zugriff mit phpMyAdmin



So ein Cronjob ist ja schön und gut, aber viele benutzen ja 1,98 Euro-Accounts die nur ftp-Zugriff gestatten. Aber auch in dem Fall kann man regelmäßig sichern, es ist dann nur mit mehr Arbeit verbunden.

Zunächst einmal muß auf dem Server phpMyAdmin installiert sein. Das ist nicht weiter schwierig. Wir laden uns von der phpMyAdmin-Homepage die Datei hinter dem Link “Download phpMyAdmin-2.4.0-php.zip” (oder welche Version auch immer gerade aktuell ist) herunter und entpacken dieses Zipfile irgendwo auf unserem Rechner. Es entsteht dann ein Verzeichnis namens “phpMyAdmin-2.4.0” (oder so ähnlich), das können wir nun auf “phpMyAdmin” umbenennen. In diesem Verzeichnis steckt eine Datei “config.inc.php”, diese öffnen wir mit einem Texteditor und ändern drei Zeilen:

$cfg[`PmaAbsoluteUri`] = `http://deine.domain.wieauchimmer/phpMyAdmin/`;

Und weiter unten:

<br />// MySQL USERNAME <br />// This is the username you use to access your MySQL database. <br />// Note: This is usually NOT the same as your FTP username. <br /> $dbusername = "DB-BENUTZERNAME"; <br /> <br />// MySQL PASSWORD <br />// The password used to access your MySQL database. <br />// Note: This is usually NOT the same as your FTP password. <br /> $dbpassword = "DB-PASSWORT"; <br />

DB-BENUTZERNAME und DB-PASSWORT werden natürlich durch die entsprechenden Werte ersetzt. Das war es schon, nun werfen wir unser ftp-Programm an und laden den gesamten Verzeichnisbaum “phpMyAdmin” auf unseren Webspace hoch. Wenn das fertig ist öffnen wir den Browser unseres Vertrauens und tippen “http://deine.domain.wieauchimmer/phpMyAdmin/” (oder wie immer wir das Verzeichnis auch benannt haben). Links oben finden wir nun ein Auswahlfeld oder den Namen “der” Datenbank, je nach Preis des Webhosters. Ein Klick auf den Namen der Datenbank öffnet im rechten Bereich eine Ansicht die etwa so wie der folgende Screenshot aussehen sollte:

Screenshot


Wir klicken nun auf “Exportieren” (rote Ellipse auf dem Screenshot) und es öffnet sich eine neue Ansicht:

Screenshot


Die Felder klicken wir so an wie auf dem Screenshot zu sehen und klicken auf “OK”, ein Download-Fenster öffnet sich und wir können uns auf unserer Festplatte einen sicheren Ort suchen. Je nach Browser kann es sein dass ein Dateiname der Art “DATENBANK.sql.php” angeboten wird, das sollten wir dann nach dem Download in “DATENBANK.sql” umbenennen.

Tipp: Die Seite für den Daten-Download in phpMyAdmin kann man sich auch direkt “bookmarken”, dann geht es schneller, indem man den Link “Exportieren” mit der rechte Maustaste und “Öffnen in neuem Fenster” (oder so ähnlich) anklickt.

Man sollte das “phpMyAdmin”-Verzeichnis durch eine Zugriffsschutz per .htaccess sichern, wie das geht findet Ihr (hoffentlich) in der Doku Eures Providers.


Katastrophe: Alles weg, das Backup muß her!



Nun ist es also passiert, der Provider hat Eure Datenbank zerstört und Ihr wollt das Backup wieder auf dem Server einspielen. auch dafür gibt es wieder zwei Wege.

Auf der Shell

Zunächst spielt Ihr die Datei mit dem letzten Backup per ftp in Euer Home-Verzeichnis auf den Server. Sodann loggt Ihr Euch per ssh ein und wechselt in das Home-Verzeichnis. Handelt es sich um eine komprimierte Datei nach dem ersten Backup-Verfahren dann muß diese mit einem “gzip -d DATENBANKNAME.sql.gz” (wobei DATENBANKNAME durch Euren Datenbanknamen ersetzt werden muß) entpackt werden. Handelt es sich um eine nach dem zweiten oder dritten Verfahren erstellte Textdatei braucht Ihr nichts machen außer den Namen der Datei im Kopf zu behalten. ;-) Nun loggt Ihr Euch auf der Shell mit “mysql —user=DB-BENUTZERNAME —password=DB_PASSWORD” in mysql ein. Ihr landet auf der mysql-Kommandozeile, mit “use DATENBANKNAME;” landet Ihr in Eurer leeren Datenbank. Die leere Datenbank sollte vorhanden sein, ist diese “weg” und Ihr habt das Recht Datenbanken selbst anzulegen müsst Ihr die Datenbank mit “create database DATENBANKNAME;” erzeugen und dann mit “use DATENBANKNAME;” hineinwechseln. Jetzt tippt Ihr, immer noch auf der mysql-Kommandozeile, ein “. DATENBANK.sql” ein (oder wie immer Eure unkomprimierte Sicherungsdatei heisst). Mysql rödelt nun ein bißchen herum und wenn er fertig ist ist sie wieder da, die kostbare Datenbank. Das war`s, mit “quit” verlasst Ihr mysql und könnt wieder bloggen. :-)


Ohne Shell: phpMyAdmin

Ohne Shell müssen wir wieder phpMyAdmin zu Hilfe nehmen, also Browser öffnen und “http://deine.domain.wieauchimmer/phpMyAdmin/” eintippen. Auch hier gilt: Ist die Datenbank verschwunden muß sie erst auf der Startseite von phpMyAdmin leer angelegt werden (und nur dann):

Screenshot


Mit einem Klick auf die Datenbankauswahl oder den Namen der Datenbank (wenn es nur eine gibt) kommt Ihr in die folgende Ansicht:

Screenshot


Hier klickt Ihr nun auf “SQL”, es erscheint folgendes:

Screenshot


Ein Kick auf Durchsuchen öffnet ein Dateiauswahlfenster, hier wählt Ihr nun Eure (unkomprimierte) Sicherungsdatei aus und klickt auf “OK”, dann wird phpMyAdmin ein bißchen rödeln und die Datenbank wieder herstellen. Alles ist nun gut, es kann weiter gebloggt werden.


Schlußwort



Soweit das “Karfreitag-Special”, ich hoffe dass hilft jemandem. Wenn auch nur ein liebevoll geführtes Blog durch diese Anleitung vor dem “Datentod” gerettet werden kann dann hat sie ihren Sinn erfüllt. Und dran denken: Die hier beschriebenen Verfahren sichern die Datenbank, selbstverständlich solltet Ihr auch all` Eure Bilder, HTML- und PHP-Dokumente vom Webserver mit einem ftp-Programm nach jeder Änderung auf Eure Festplatte ziehen nur diese Dateien gemeinsam mit der Datenbank sichern Eurer Weblog. Nun kann der Provider machen was er will, Eure mühsame Arbeit ist gerettet. ;-)