Picasa 3 mit externer Datenbank nutzen und sichern von Peter Denker

 

Zwei Anforderungen - eine Lösung

Abb. 1 Banner des Programms Picasa 3

Wenn Sie

  • von mehreren Windows-Rechnern auf die gleiche Fotosammlung auf einem externen Laufwerk (oder einem im Heimnetzwerk freigegebenen NAS-Laufwerk) mit derselben Picasa-Datenbank (aber nicht gleichzeitig) zugreifen möchten

oder

  • die im Lauf der Zeit angewachsene Picasa-Datenbank bei Systemwechsel oder Neuinstallation retten möchten, ohne das anfällige und aufwändige Picasa-Backup-Prozedere zu durchleiden,

dann hilft dazu eine im ‹1› Picasa-Produktforum vorfindliche Anregung des Autors Wassenhofen. Die in dem Forum zu seinem Beitrag vorfindlichen Erläuterungen sind jedoch so spärlich und gestreut, dass im Folgenden für die Verwendung unter Windows 7 / 8 eine ausführlichere Schritt-für-Schritt-Anleitung dazu gegeben wird.

Grundlagen

Picasa 3 erstellt zur Fotosammlung auf dem PC eine Datenbank, in der die Speicherorte, Gesichtserkennungsergebnisse, vergebene Tags und Miniaturbilder mit den Fotodateien verknüpft sind. Diese Datenbank wird in zwei Ordnern namens "Picasa2" und "Picasa2Albums" gespeichert.
Unter Windows 7 / 8 legt eine lokale Installation von Picasa (im Ordner "C:\Program Files (x86)\Google\Picasa3") diese beiden Datenbank-Ordner automatisch als Unterordner in "C:\Users\'<'Benutzername'>'\AppData\Local\Google" an. Auf diesen Ordner hat nur der angegebene Benutzer Zugriff. Die Datenbank-Ordner lassen sich jedoch auf ein externes Laufwerk (z.B. auch in einem NAS) übertragen, so dass sie sowohl einen Systemwechsel (z.B. bei Neuaufsetzen des Rechners) überstehen als auch von jedem PC mit entsprechend installiertem Picasa-Programm für Anzeige und Bearbeitung verfügbar ist.

Vorbereitungen

Zuerst sorgt man dafür, dass das externe Laufwerk auf allen beteiligten PCs unter dem gleichen Laufwerksbuchstaben ansprechbar ist, beispielsweise als Speicher für ‚Medien' naheliegend mit dem Buchstaben "M:". Auf diesem Laufwerk, auf dem womöglich auch schon alle Fotos gespeichert sind, legt man dann im Root-Verzeichnis einen leeren Ordner (im Beispiel also "M:\Picasa-DB") an. Die Anlage des Verzeichnisses "M:\Picasa-DB\AppData\Local\Google" mit den beiden Datenbank-Unterordnern besorgt die nachfolgend beschriebene Batch-Datei bei ihrem ersten Aufruf (vgl. weiter unten). Danach muss man die Ordnerinhalte der beiden Datenbankordner aus dem lokalen Ordner "C:\Users\\AppData\Local\Google" in den externen Ordner "M:\Picasa-DB\AppData\Local\Google" kopieren. Bei jedem folgenden Aufruf der Batchdatei startet dann Picasa 3 unter Verwendung der auf "M:\Picasa-DB" hinterlegten Datenbank. Dabei sorgt die Batchdatei auch dafür, dass (z.B. auf einem NAS-Laufwerk) nur jeweils ein Nutzer auf einem PC Zugriff bekommt.

Die Batch-Datei

Das englische Wort ‚batch' bedeutet ‚Stapel'. Jede Batch-Datei enthält einen Stapel von Befehlen, die vom jeweiligen Betriebssystem interpretiert und nacheinander ausgeführt werden. Die Befehle sind in einem Texteditor zeilenweise einzugeben. Abschließend wird die Datei mit einem sprechenden Namen und einer charakteristischen Endung (in Windows ".bat" oder ".cmd") gespeichert., z.B. als "StartPicasa.bat". Als Zielordnet für diese Batch-Datei kommt der Desktop jedes beteiligten PCs in Betracht oder - praktischer - das Stammverzeichnis des Laufwerks, auf dem die Fotos und das externe Datenbankprofil gespeichert werden. Der Aufruf der Batch-Datei erfolgt durch Doppelklick auf ihr Icon (bzw. auf den Dateinamen "StartPicasa.bat") . Danach öffnet sich ein Befehlskonsolenfenster auf dem Bildschirm, in dem die vorgesehenen Mitteilungen angezeigt werden. Dieses Konsolenfenster schließt nach Beendigung von Picasa automatisch. Es soll nicht vorher geschlossen werden.

Für den angegebenen Zweck hat die Batch-Datei folgenden Inhalt:

Z Befehl
1 @echo off
2 set EXTERNPROFILEPATH=M:\Picasa-DB
3 set PICASAEXECPATH=C:\Program Files (x86)\Google\Picasa3\
4 set TEMPPATH="%EXTERNPROFILEPATH%\AppData\Local"
5 if not exist %TEMPPATH% mkdir %TEMPPATH%
6 if not exist %TEMPPATH% goto NoValidPath
7 :: Uebergabevariable fuer den Aufruf von Picasa mit dem externen Profil
8 set USERPROFILE=%EXTERNPROFILEPATH%
9 :: Pruefung, ob Picasa schon anderswo aufgerufen ist - sonst Sperre einrichten
10 set LOCKFILE="%EXTERNPROFILEPATH%\PicasaRunning.txt"
11 if exist %LOCKFILE% goto PicasaRunningAlready
12 echo Picasa ist schon gestartet von %USERNAME% am %date% um %time% auf Computer %COMPUTERNAME% > %LOCKFILE%
13 :: Pruefung, ob Installationspfad fuer Picasa zutrifft - ggf. starten, sonst nicht
14 set TEMPPATH="%PICASAEXECPATH%"
15 if not exist %TEMPPATH% goto NoValidPath
16 :: Start Picasa...
17 echo PICASA wird jetzt im Profil von %EXTERNPROFILEPATH% ausgefuehrt.
18 echo ACHTUNG:
19 echo Dieses Fenster muss aktiv bleiben, solange mit PICASA gearbeitet wird;
20 echo sobald PICASA beendet wird, schliesst es von selbst.
21 cd %PICASAEXECPATH%
22 "%PICASAEXECPATH%/Picasa3.exe"
23 :: Sperrdatei wird beseitigt ...
24 del %LOCKFILE%
25 goto eof
26 :: Picasa ist anderweitig aufgerufen ...
27 :PicasaRunningAlready
28 echo Eine anderes Instanz von PICASA ist schon gestartet:
29 echo %USERNAME% nutzt sie seit %date% um %time% auf %COMPUTERNAME%.
30 pause
31 goto eof
32 :: Fehlermeldung, wenn der Pfad nicht existiert oder nicht erzeugt werden konnte
33 :NoValidPath
34 echo FEHLER!
35 echo Der Pfad %TEMPPATH% ist nicht vorhanden oder konnte nicht erstellt werden.
36 pause
37 goto eof

Diese Batchdatei wird in folgender Tabelle zeilenweise kommentiert:

Z Kommentar
1 Schaltet (sonst störende) Anzeige der Befehle im Befehlskonsolenfenster ab
2 Hinterlegt den Speicherortnamen der externen Datenbank in einer Variablen
3 Hinterlegt den Ordnerpfad, von dem aus "Picasa3.exe" gestartet wird, in einer Variablen
4 Hinterlegt den Ordnerpfad für die Zieldatenbank in einer Variablen
5 Falls der Zieldatenbankordner nicht existiert, wird er angelegt
6 Falls der Zieldatenbankordner dann doch nicht existiert, liegt ein Fehler vor (Sprung nach Zeile 33)
7 Notiz ("::" enspricht "REM")
8 Der Umgebungsvariablen USERPROFILE wird der Pfad mit dem externen Profil übergeben
9 Notiz
10 Name und Pfad für die Sperrdatei werden deklariert
11 Falls die Sperrdatei existiert, ist Picasa schon anderweitig aktiv (Sprung nach Zeile 27)
12 Andernfalls wird das Sperrfile mit dem angegebenen Inhalt erzeugt.
Achtung: Der gesamte Inhalt muss in eine Zeile geschrieben werden.
Das ">" - Zeichen veranlasst eine Umleitung der Ausgabe vom Bildschirm auf die dahinter angegebene Datei.
13 Notiz
14 Der Variablen TEMPPATH wird ein neuer Wert zugewiesen, um dieselbe Fehlermeldung wie zu Zeile 11 auch bei Nichtvorhandensein des Programmpfads verwenden zu können.
15 Wenn der Installationspfad für Picasa nicht existiert, liegt ein Fehler vor (Sprung nach Zeile 33)
16 Notiz
17-20 Anzeige im Befehlskonsolenfenster
21 Der Programmpfad von picasa3.exe wird zum aktiven Ordner bestimmt
22 Picasa3 wird aufgerufen
23 Notiz
24 Die Sperrdatei wird gelöscht
25 Ende der Batchbearbeitung
26 Notiz
27 Sprungmarke (von Zeile 11)
28-29 Anzeige im Befehlskonsolenfenster
30 Aufforderung, nach Kenntnisnahme eine Taste zu betätigen
31 Ende der Batchbearbeitung
32 Notiz
33 Sprungmarke (von Zeile 6 oder 15)
34-35 Anzeige im Befehlskonsolenfenster
36 Aufforderung, nach Kenntnisnahme eine Taste zu betätigen
37 Ende der Batchbearbeitung

Bei der Eingabe bzw. Kopie dieser Batchdatei in einen Texteditor ist unbedingt darauf zu achten, dass

  • innerhalt einer Zeile kein Zeilenumbruch vorkommt, und dass
  • an keinem Zeilenende Leerzeichen stehen.

Eine kopierfähige Textversion der o.a. Batch-Datei ist im Anhang beigefügt.

Anpassung an eine frühere Windows-Version

Ersetzt man in der o.a. Batch-Datei die Zeile 4 durch

    set TEMPPATH="%PICASAPROFILEPATH%\Lokale Einstellungen\Anwendungsdaten",

so eignet sich die sonst gleiche Batch-Datei auch für Windows xp. Man sollte zudem kontrollieren, ob die Datei Picasa3.exe sich im angegebenen Installationsordner befindet und nötigenfalls auch Zeile 3 entsprechend anpassen.

Eine Batchdatei - unterschiedliche Wirkungen

Mit dem ersten Aufruf der Batch-Datei erscheint Picasa genauso wie nach seiner ersten Installation:

Nach dem vorübergehend sichtbaren Banner (Abb. 1) öffnen sich über der Programm-Oberfläche nacheinander die beiden Fenster zur Festlegung des Bereichs, aus dem Picasa Fotos einlesen soll (Abb. 2), und welche Arten von Bilddateien mit dem Picasa-Viewer verknüpft werden sollen (Konfiguration des Photo Viewer).

Abb. 2 Suchorte für Bilder festlegen

Um die Wartezeit zu verkürzen, empfiehlt sich die zuoberst angebotene Option "Nur Eigene Dokumente … durchsuchen" durch Anklicken des Buttons auszuwählen. Bei der Frage nach den darzustellenden Bilddateitypen ist die Antwort beliebig; es liegt nahe, sie möglichst in Übereinstimmung mit der Setzung bei der Erstinstallation auszuwählen.

Danach legt Picasa die für die Datenbank automatisch erforderlichen Unterordner in der Profilumgebung "M:\Picasa-DB" an. Nun kann Picasa sogleich wieder geschlossen werden; das Konsolenfenster schließt sich danach automatisch.

Nachdem die beiden Picasa2-Ordner wie unter Vorbereitungen beschrieben in die Profilumgebung kopiert worden sind, führt der Aufruf derselben Batch-Datei nun wunschgemäß zum Aufruf von Picasa mit den dorthin kopierten Datenbanken. Dabei ist zu beachten, dass je nach Größe der Datenbanken die Zeit für das Laden und für das Schließen derselben einige Zeit beanspruchen kann, in der das Programm-Banner (Abb. 1) stehen bleibt bzw. sich das Programmfenster am Ende nicht sofort schließt.

Nutzungshinweise

Die Anlage des externen Profils hat keine Auswirkungen auf die lokale Installation von Picasa. Deswegen bleibt der Aufruf von Picasa3 weiterhin auch direkt (ohne Batchdatei) möglich. Die dabei vorgenommenen Veränderungen an der lokalen Datenbank bleiben jedoch ohne Auswirkung auf die externe Datenbank - und umgekehrt ebenso. Es empfiehlt sich deshalb, Picasa dann nur noch über die Batchdatei aufzurufen und das Programm-Icon von Picasa vom Desktop zu löschen, um Versehen aus Gewohnheit vorzubeugen.

Sollte - statt zuerst PICASA zu beenden - das Fenster die Batch-Datei vorzeitig beendet werden, wird die Sperrdatei nicht automatisch gelöscht. Dadurch verhindert der letzte Nutzer den erneuten Aufruf von PICASA mit dem externen Profil. In einem solchen Fall muss die Sperrdatei "M:\Picasa-DB\PicasaRunning.txt" manuell gelöscht werden, wenn sichergestellt ist, dass Picasa beim andern Benutzer tatsächlich nicht mehr aktiv ist.

Der Autor Wassenhofen berichtet von Fällen, in denen Fotos, deren Dateien auf einem NAS-Laufwerk lagen, bei Bearbeitung mit Picasa dauerhaft unbrauchbar geworden sind. Um dies zu vermeiden, ist anzuraten, alle Fotos und - wie in diesem Artikel beschrieben - die Datenbank auf eine mobile Festplatte hinlänglicher Kapazität zu übertragen und dieser Festplatte auf allen Rechnern den gleichen Laufwerksbuchstaben zuzuordnen, so dass Picasa darauf ohne Netzwerkverbindung zugreifen kann. Wenn außerdem ein NAS-Server vorhanden ist, wäre ratsam, von Zeit zu Zeit eine Kopie dieser Festplatte auf dem NAS-Laufwerk zu sichern. Aber dann sollte nur mit der auf der mobilen Festplatte befindlichen Datenbank gearbeitet werden, die natürlich nicht denselben Laufwerksbuchstaben haben kann wie das NAS-Laufwerk.

Rücksicherung

Wenn die externe Datenbank in ein lokal neu installiertes Picasa übertragen werden soll, starten Sie Picasa auf dem PC nach der Neuinstallation zunächst ohne Fotos und Daten wie oben unter "Eine Batchdatei - unterschiedliche Wirkungen" dargestellt, wobei im Ordner "C:\Users\\AppData\Local\Google" die Unterordner "Picasa2" und "Picasa2Albums" angelegt werden. Danach können die beiden Ordner mit diesen Namen von "M:\Picasa-DB\Appdata\Local\Google" in den genannten lokalen Ordner auf "C:" kopiert werden. Damit steht auch lokal die gleich Datenbankumgebung wieder zur Verfügung.

Festlegung der aktuellen Datenbank

Bei Nutzung von Picasa mit der lokalen Datenbank sollte sich der Anwender auf Suche, Auswahl und Anzeigebeschränken sollte, um diese Datenbank nicht zu verändern. Wenn eine externe Datenbank existiert, dann sollte er Import oder Bearbeitung mit der externen Datenbankumgebung durchführen, die ihm eine ortsunabhängige Bearbeitungsmöglichkeit gibt. Natürlich bleibt es dem Inhaber der Fotos unbenommen, sich dagegen zu entscheiden und die lokale Datenbank aktuell zu halten. Dann allerdings sollte er die externe Nutzung tunlichst auf Suche, Auswahl und Anzeige beschränken. Ihm selbst und den Mitbenutzern sollte klar sein, ob die Nutzung von Picasa den Inhalt der lokalen oder der externen Datenbank verändert oder nicht.

Anhang

Nachfolgend der Inhalt der Beispiel-Batchdatei als kopierbarer Text:

@echo off
set EXTERNPROFILEPATH=M:\Picasa-DB
set PICASAEXECPATH=C:\Program Files (x86)\Google\Picasa3\
set TEMPPATH="%EXTERNPROFILEPATH%\AppData\Local"
if not exist %TEMPPATH% mkdir %TEMPPATH%
if not exist %TEMPPATH% goto NoValidPath
:: Uebergabevariable fuer den Aufruf von Picasa mit dem externen Profil
set USERPROFILE=%EXTERNPROFILEPATH%

:: Pruefung, ob Picasa schon anderswo aufgerufen ist - sonst Sperre einrichten
set LOCKFILE="%EXTERNPROFILEPATH%\PicasaRunning.txt"
if exist %LOCKFILE% goto PicasaRunningAlready
echo Picasa ist schon gestartet von %USERNAME% am %date% um %time% auf Computer %COMPUTERNAME% > %LOCKFILE%

:: Pruefung, ob Installationspfad fuer Picasa zutrifft - ggf. starten, sonst nicht
set TEMPPATH="%PICASAEXECPATH%"
if not exist %TEMPPATH% goto NoValidPath

:: Start Picasa...
echo PICASA wird jetzt im Profil von %EXTERNPROFILEPATH% ausgefuehrt.
echo ACHTUNG:
echo Dieses Fenster muss aktiv bleiben, solange mit PICASA gearbeitet wird;
echo sobald PICASA beendet wird, schliesst es von selbst.
cd %PICASAEXECPATH%
"%PICASAEXECPATH%/Picasa3.exe"

:: Sperrdatei wird beseitigt ...
del %LOCKFILE%
goto eof

:: Picasa ist anderweitig aufgerufen ...
:PicasaRunningAlready
echo Eine anderes Instanz von PICASA ist schon gestartet:
echo %USERNAME% nutzt sie seit %date% um %time% auf %COMPUTERNAME%.
pause
goto eof

:: Fehlermeldung, wenn der Pfad nicht existiert oder nicht erzeugt werden konnte
:NoValidPath
echo FEHLER!
echo Der Pfad %TEMPPATH% ist nicht vorhanden oder konnte nicht erstellt werden.
pause
goto eof

 

LINKS:

‹1› Wassenhofen, Lösung: Picasa mit mehreren Rechnern über NAS und zentraler DB: http://productforums.google.com/forum/?hl=de#!category-topic/picasa-de/picasa-software/Y34Elj3pG5M
- zurück zu ‹1› -


© Copyright 2011 by PUBLICATIONES - details : www.publicationes.de/copyright.html -