Vorarbeiten für die Migration

Je sauberer die GFAhnen-Datenbank ist, desto besser kann die Konvertierung erfolgen. Da ein Konverter ausschließlich bestehende Daten übernimmt, werden konsequenterweise auch fehlerhafte Daten mit übernommen. Bereinigen Sie daher Ihren Datenbestand im Vorfeld und führen Sie die entsprechenden Plausibilitätsprüfungen durch.

Der Konverter erkennt automatisch auch ältere GFAhnen-Datenbanken, bei denen Datenfelder fehlen, die erst in späteren GFAhnen-Versionen hinzugekommen sind. Wurden durch Nutzende in GFAhnen manuell Feldverlängerungen vorgenommen, können diese Daten ebenfalls problemlos übernommen werden.

GFFamily verwendet stets eine erweiterte und einheitliche Datenbankstruktur – unabhängig davon, wie die ursprüngliche GFAhnen-Datei aufgebaut war – und sorgt so für eine konsistente Integration älterer Datenbestände.

Folgende Punkte müssen vorab sichergestellt werden, um eine reibungslose Migration zu gewährleisten:

  • Bei Quellendateien darf es keine gleichnamigen Quellen in verschiedenen Formaten geben (z. B. kein Q_DOC.txt und Q_DOC.rtf)

  • RTF-Quellendateien werden nicht unterstützt. Diese Dateien müssen entweder in ein PDF umgewandelt und als Quelle eingebunden werden, oder alternativ in eine TXT-Quellendatei konvertiert werden. Letztere wird unterstützt und direkt in das neue Quellensystem übernommen.

  • Linux: Die Schreibweise der Dateinamen ist relevant. Es erfolgt eine automatische Umbenennung in *.DB (siehe unten)

Übernahme der Nachlade-Tabellen

Befinden sich die Nachlade-Tabellen nicht – wie in der Regel üblich – im Datenbankverzeichnis, müssen diese vor der Migration dorthin kopiert werden. Dies betrifft folgende Tabellen:

  • FName

  • VName

  • Orte

  • Berufe

  • Todesursachen

  • Phrasen

Warnung

Werden die Tabellen bei der Migration nicht gefunden, erfolgt eine Fehlermeldung und die Migration wird abgebrochen.

Umbenennung der Datenbankdateien (nur Linux)

Linux arbeitet case-sensitiv, d. h. die Schreibweise der Dateinamen ist relevant. Aus diesem Grund müssen die Datenbankdateien korrekt benannt sein – die Dateiendungen in Großbuchstaben. Für Windows ist dies nicht relevant.

Bemerkung

Mit Version 1.2 kann der DBKonverter die Konvertierung direkt selbst durchführen. Diese Funktion lässt sich unter Linux als Option aktivieren, wodurch der manuelle Konvertierungsschritt entfällt.

Zur Durchführung dieser Umbenennung steht ein Shell-Skript bereit, das direkt im Verzeichnis der GFAhnen-Datenbank ausgeführt werden muss. Die Vorgehensweise unterscheidet sich je nach Distribution, weshalb sie hier nur grob beschrieben wird. Die Vorgehensweise über eine Konsole funktioniert hingegen auf allen Systemen gleich.

  • Öffnen Sie einen Texteditor Ihrer Wahl und fügen Sie den Quellcode des unten aufgeführten Skripts ein.

  • Speichern Sie dieses Skript im Verzeichnis der GFAhnen-Datenbank und merken Sie sich den Dateinamen, in unserem Beispiel rename_gfa_db.sh.

  • Starten Sie den Datei-Manager Ihres Window-Managers und navigieren Sie in das Verzeichnis, in dem sich die GFAhnen-Datenbank befindet.

  • Suchen Sie die oben gespeicherte Datei und erteilen Sie ihr die Berechtigung zum Ausführen. In der Regel geschieht dies durch einen Rechtsklick auf die Datei, die Auswahl des Punktes „Eigenschaften“ im erscheinenden Menü und anschließend das Setzen der Option „Als Programm ausführen“ oder dergleichen.

  • Starten Sie anschließend das Skript. Viele Window-Manager bieten bei einem Rechtsklick die Option an, das Skript in einer Konsole zu starten, wodurch eine Ausgabe sichtbar wird.

  • Die Dateien sollten nun alle mit Endungen in Großbuchstaben umbenannt sein.

Bemerkung

Einige Editoren kopieren das Skript aus dem Browser fehlerhaft. In diesem Fall erhalten Sie Fehlermeldungen in Form von unbekannten Befehlen wie \r. Hierbei werden die Zeilenumbruchzeichen falsch übernommen. Verwenden Sie in diesem Fall bitte einen anderen Editor oder versuchen Sie es gegebenenfalls mit einem anderen Browser. Bekannt ist dieses Problem, wenn das Skript unter Windows erzeugt wurde und dann nach Linux kopiert wurde.

  • Navigieren Sie in einer Konsole in das Verzeichnis, in dem sich die GFAhnen-Datenbank befindet, z. B. cd ~/Dokumente/GFAhnen/.

  • Erstellen Sie mit dem Editor Ihrer Wahl eine Datei und fügen Sie den Inhalt des unten aufgeführten Skripts ein, z. B. nano rename_gfa_db.sh. Speichern Sie anschließend die Datei (bei nano mit Strg+x und anschließender Bestätigung mit Enter).

  • Erteilen Sie der Datei die Berechtigung zum Ausführen, z. B. mit chmod +x rename_gfa_db.sh.

  • Führen Sie die Datei aus, z. B. mit ./rename_gfa_db.sh.

  • Die Endungen der Datenbankdateien sollten nun alle in Großbuchstaben sein.

#!/bin/bash

# Alle Dateien im aktuellen Verzeichnis durchlaufen
for file in *; do
    # Überprüfen, ob es sich um eine Datei handelt
    if [ -f "$file" ]; then
        # Dateiname und -endung trennen
        filename=$(basename -- "$file")
        extension="${filename##*.}"
        name="${filename%.*}"

        # Überprüfen, ob die Datei eine Endung hat
        if [ "$name" != "$filename" ]; then
            # Endung in Großbuchstaben ändern
            new_extension="${extension^^}"
            new_filename="${name}.${new_extension}"

            # Datei umbenennen
            mv -- "$file" "$new_filename"
            echo "Umbenannt: $file -> $new_filename"
        fi
    fi
done