Mai
12
2009
0

GSAK-Datenbank auf dem Netzlaufwerk

Viele Menschen ärgert es ja, dass die GSAK-Datenbank nicht auf einem echten SQL-Server läuft. GSAK nutzt SQlite, ein SQL-Layer, welches Datenbankoperationen einer Anwendung direkt auf eine Datei abbildet.

Der Nachteil: SQlite arbeitet nicht als SQL-Server im Netzwerk. Somit ist es nicht möglich, von mehreren Rechner aus auf die Datenbank zuzugreifen.
Etwas Abhilfe schafft da die Installation von GSAK auf ein Netzlauferk. Dies hat Vor- aber auch Nachteile:

Vorteile:

  • Zugriff von mehreren Rechner im Netzwerk (aber nicht gleichzeitig!)
  • Einheitliche Konfiguration auf allen Rechnern, inkl. Makros

Nachteile:

  • Konfigurationsaufwand
  • Keine “persönliche” Einstellungen mehr für mehrere Nutzer
  • Ggf. langsam, da die Netzwerkzugriffe GSAK ausbremsen

Weiterhin kann man auch nur die Datenbank auf ein Netzlaufwerk legen. Hierbei behält dann jeder Benutzer seine eigene GSAK-Konfiguration – was ich persönlich als Nachteil empfinde, da man Makros dann z.B. Makros auf mehreren Rechner installieren muss.

Für alle die, die’s gerne probieren möchten, hier ein paar Tips:

1. Vorbereitung

Zuerst sollte man einen Rechner auswählen, der als GSAK-Server fungiert. Dieser sollte immer zur Verfügung stehen, wenn GSAK benötigt wird – ein kleiner Homeserver oder ein NAS an einer Fritzbox tun’s sicher auch. Ich verwende einen Linux Server für die zentrale Dateiablage.

Auf der Serverfestplatte muss nun ein Verzeichnis eingerichtet und freigegeben werden. In unserem Beispiel lautet der Rechnername des Servers einfach SERVER und die Freigabe GSAK.

2a. Vollständige Installation auf dem Netzlaufwerk

Die folgende Prozedur muss an jedem Client durchgeführt werden. Alle Clients verwenden dann dieselbe GSAK-Installation mit denselben Makros und einstellungen. Will man GSAK auch direkt auf dem Server nutzen, so sollte hier die Installation ebenfalls nach denselben Spielregeln erfolgen.

Zuerst sollte man ein Netzlaufwerk erstellen. Dazu im Windows Arbeitsplatz oder Explorer (oder “Computer” unter Vista) auf “Extras/Netzlaufwerk verbinden” klicken. Unter Vista klickt man auf die doppelpfeile >> in der Toolbar des Explorers und wählt “Netzlaufwerk zuordnen”.

Nun wählt man einen Laufwerksbuchstaben für das GSAK-Netzlaufwerk. Der Buchstabe sollte ruhig weit am Ende des Alphabets stehen, denn er muss auf allen Rechnern gleich lauten. Wenn man hier dummerweise “E” wählt und dieser Buchstabe auf einem anderen Rechner von einem CD-Rom belegt ist, bekommt man Probleme. Für unser beispiel wählen wir “Y:”

Nun geht es daran GSAK zu installieren, und zwar auf jedem(!) Client – aber die Installation findet jedesmal auf dem Netzlaufwerk statt, nicht etwa auf C:\Programme. Diese Dummy-Installation ist leider für die Clients notwendig, da GSAK offenbar einige Informationen lokal ablegt. Wir installieren GSAK in den Unterordner “Installation”.

Also als Installationspfad “Y:\Installation” angeben. Evtl. macht Windows hier Probleme und erlaubt die Installation auf dem Netzlaufwerk nicht. Kein Problem, in diesem fällt gibt man einfach den kompletten Freigabenamen an: \\SERVER\GSAK\Installation

2b. Alternativ: Die echte installation, aber die Datenbank auf dem Netzlaufwerk

Wer keine zentrale Installation möchte, kann natürlich auch GSAK ganz “normal” auf jedem Rechner nach C:\Programme\.. installieren. Das hat aber – wie ich finde – einen Nachteil: Alle Einstellungen und Makros müssen auf jedem Rechner nachgepflegt werden. Ist Geschmackssache…

3. Datenbank

Nun sollte man auf Y: einen Ordner “Datenbank” anlegen. Nach dem ersten Start von GSAK kann man nun im Optionsmenü den Pfad für die Datenbank einstellen.  Dieser muss dann entsprechend Y:\Datenbank lauten. Wenn man Installationsvariante 1a gewählt hat, gilt diese Einstellung sofort für alle Clients.

4. Das Problem mit dem Laptop und der Datenbank für unterwegs

Wenn der Laptop der Installationsort für GSAK und die Datenbank ist, so hat man eigentlich keine Probleme. Aber wer hat schon den Laptop ständig als Server laufen? Natürlich möchte man unterwegs auch GSAK zur Verfügung haben, aber das liegt ja auf dem Server… Abhilfe schafft ein kleiner Trick: Wenn man zu Hause im Netzwerk arbeitet, verwendet man den Laptop wie gewohnt. Sobald man die Datenbank ausser Haus nutzt, kopiert man sich das komplette Laufwerk Y in einen Ordner der lokalen Platte – z.B. c:\gsak-kopie . Das geht recht elegant und fix mit herkömmlichen Sync-Tools wie z.B. dem kostenlosen AllwaySync, dem Microsoft Sync-Toy oder einfach dem Windows-Aktenkoffer, welcher aber nicht uneingeschränkt empfehlenswert ist.

Wenn man die Tools ordentlich konfiguriert, übertragen Sie die Daten auch schön brav wieder zurück, wenn man zu Hause ist.

Bleibt das Problem mit dem Installationsordner. Der befindet sich ja nun nicht mehr auf Y: – aber dem kann man mit Bordmitteln schnell zu Leibe rücken: In der Kommandozeile (Startmenü / Ausführen / cmd ) einfach mal folgenden Befehl eingeben:

subst Y: "C:\gsak-kopie"

Dieser Befehl funktioniert natürlich nur, wenn das Netzlaufwerk Y nicht mehr verbunden ist und der Laufwerksbuchstabe frei gegeben wurde. Er erstellt ein “virtuelles” Laufwerk y, welches einfach die Daten von “C:\lokale GSAK Kopie” spiegelt. So gaukelt man GSAK vor, es befindet sich in der gewohnten Umgebung – samt Datenbank.

Das Laufwerk lässt sich natürlich auch in der Kommandozeile wieder aushängen. Der Befehl dazu lautet

subst Y: /U

5. Feintuning

Ein paar Dinge lassen sich noch etwas besser gestalten. Da man bei 1a ggf. nicht das korrekte Installationslaufwerk angeben konnte, befindet sich im Startmenü und/oder auf dem Desktop nun ein Symbol um GSAK zu starten, welches noch auf \\SERVER\GSAK\Installation\GSAK.exe verweist. Man ist gut beraten, diesen Link zu ändern, indem man das Symbol mit der rechten Maustaste anklickt und “Eigenschaften” wählt. Als “Ziel” gibt man nun den korrekten Pfad an: Y:\Installation\GSAK.exe

Dies sollte man übrigens für jeden Rechner durchführen, nicht nur für Laptops, da z.B. das Senden von GPX-Daten an Garmin-Geräte sonst probleme machen kann: Bei mir blieb die Übertragung zum dem eTrex Venture HC einfach mittendrin stehen, wenn dieser Pfad nicht korrekt auf das Netzlaufwerk verwies, sondern auf den Freigabenamen.

Weiterhin kann man an Laptops das Prozedere mit dem subst-Befehl deutlich vereinfachen. Einfach auf dem Desktop zwei neue Textdateien anlegen, diese nennt man z.B. “GSAK-Netzwerk.cmd” und “GSAK-lokal.cmd” (die Endung cmd ist wichtig). Nun diese beiden Dateien editieren und folgende Inhalte einfügen:

GSAK-Netzwerk.cmd:

REM Subst-Laufwerk (wieder) freigeben:
subst y: /D

REM Netzlaufwerk einhaengen:
net use y: \\SERVER\GSAK

REM GSAK starten
start Y:\Installation\gsak.exe

GSAK-lokal.cmd

REM Netzlaufwerk entfernen
net use y: /DELETE

REM lokales Laufwerk einhaengen
subst y: c:\gsak-kopie

REM GSAK starten
start Y:\Installation\gsak.exe

Starten (Doppelklick) auf eine der Dateien sorgt nun dafür, dass das Netzlaufwerk bzw. das Subst-Laufwerk entsprechend konfiguriert wird und GSAK anschließend startet.

Keine Kommentare | Kommentar schreiben
Geschrieben von in: Verschiedenes |

Keine Kommentare »

RSS-Feed fü Kommentare. TrackBack URL


Schreib einen Kommentar

Powered by WordPress | Theme: Aeros 2.0 by TheBuckmaker.com