DjVu-Viewer Integration

Aus djvu-wiki
Zur Navigation springen Zur Suche springen

DjVu-Viewer Integration

Gitlab

Server-Topologie

wikiId URL Standort
djvu-wiki http://djvu-wiki.genealogy.net vm2180 (dieser Server)
genwiki-farm http://genwiki-farm.genealogy.net vm2180 (dieser Server)
genwiki39e http://genwiki39e.genealogy.net vm2180 (dieser Server)
genwiki39 https://genwiki39.genealogy.net separater öffentlicher Docker-Server
genwiki39d http://genwiki39d.bitplan.com fur.bitplan.com (nur Intranet)
djvu-viewer http://djvu.bitplan.com fur.bitplan.com (nur Intranet)
Produktion https://wiki.genealogy.net hetzner

Hintergrund

Speicherplatz-Beschränkungen

  • vm2180 hat ~2TB — ausreichend nur für Dateien mit Präfix A/B
  • 333 gebündelte A/B-Dateien haben Tar-Pakete in /genwiki/djvu_images/
  • Originale .djvu-Dateien liegen auf fur.bitplan.com:/hd/luxio/genwiki/images/
  • djvu-viewer (nur Intranet) verwendet derzeit Tar-Pakete; direkte .djvu-Lesefunktion geplant

Demo-Dateien

Logarithmische Seitengrößen, alle gebündelt, alle mit Dateinamen-Präfix A oder B, alle mit Tar-Paketen. Hinweis: AB1934-Oelde.djvu enthält zwar "Oelde" im Namen, fängt aber mit A an.

Datei Seiten Größe Hash-Pfad
AB1938_Kreis-Beckum_Inhaltsverz.djvu 3 50 KB c/c7
Auenheim-Frauweiler_Dokument-1693-03-09.djvu 10 3,9 MB b/b8
AB1934-Oelde.djvu 105 4,1 MB 5/54
Adressbuch_Husum_1900.djvu 313 7,7 MB d/d1
Aachen-Burtscheit-AB-1887.djvu 676 57 MB a/a0

Einrichtungsschritte

Die folgenden Schritte werden als wiederverwendbares Skript djvu-setup.sh umgesetzt, damit dasselbe Verfahren später auf alle A/B-Dateien oder bei ausreichend Speicherplatz auf weitere Präfixe angewendet werden kann.

Schritt 1 - Verzeichnisse auf vm2180 anlegen

sudo mkdir -p /var/www/mediawiki/sites/djvu-wiki.genealogy.net/images/{c/c7,b/b8,5/54,d/d1,a/a0}
sudo chown -R www-data:www-data /var/www/mediawiki/sites/djvu-wiki.genealogy.net/images/

Schritt 2 - Dateien von fur kopieren (auf fur.bitplan.com ausführen)

Originalzeitstempel werden mit -p erhalten:

BASE=/hd/luxio/genwiki/images
VM=wf@vm2180.hostsharing.net:/var/www/mediawiki/sites/djvu-wiki.genealogy.net/images
scp -p $BASE/c/c7/AB1938_Kreis-Beckum_Inhaltsverz.djvu         $VM/c/c7/
scp -p $BASE/b/b8/Auenheim-Frauweiler_Dokument-1693-03-09.djvu $VM/b/b8/
scp -p $BASE/5/54/AB1934-Oelde.djvu                            $VM/5/54/
scp -p $BASE/d/d1/Adressbuch_Husum_1900.djvu                   $VM/d/d1/
scp -p $BASE/a/a0/Aachen-Burtscheit-AB-1887.djvu               $VM/a/a0/

Schritt 3 - Hardlinks in genwiki39e erstellen (auf vm2180, kein zusätzlicher Speicher)

Hinweis: genwiki39e.genealogy.net ist der lokale Site-Konfigurationsverzeichnisname auf vm2180.

DJVU=/var/www/mediawiki/sites/djvu-wiki.genealogy.net/images
GENWIKI=/var/www/mediawiki/sites/genwiki39e.genealogy.net/images
for hpath in c/c7 b/b8 5/54 d/d1 a/a0; do
  sudo mkdir -p $GENWIKI/$hpath
done
sudo ln $DJVU/c/c7/AB1938_Kreis-Beckum_Inhaltsverz.djvu         $GENWIKI/c/c7/
sudo ln $DJVU/b/b8/Auenheim-Frauweiler_Dokument-1693-03-09.djvu $GENWIKI/b/b8/
sudo ln $DJVU/5/54/AB1934-Oelde.djvu                            $GENWIKI/5/54/
sudo ln $DJVU/d/d1/Adressbuch_Husum_1900.djvu                   $GENWIKI/d/d1/
sudo ln $DJVU/a/a0/Aachen-Burtscheit-AB-1887.djvu               $GENWIKI/a/a0/

Schritt 4 - Dateien in MediaWiki via importImages.php registrieren

WIKI_SITE=djvu-wiki.genealogy.net php /var/www/mediawiki/code/maintenance/importImages.php \
  --user=wf /var/www/mediawiki/sites/djvu-wiki.genealogy.net/images/

Schritt 5 - Datei:-Seiten von genwiki39 nach djvu-wiki via wikipush kopieren

djvu-setup.sh

Ein Skript unter /home/wf/djvu-wiki/djvu-setup.sh automatisiert die Schritte 1, 3 und 4.

Befehlsreihenfolge (muss in dieser Reihenfolge ausgeführt werden)

Vorschau welche Dateien verarbeitet werden

./djvu-setup.sh --list
Demo files selected from database:

File                                                       Pages         MB Range
----                                                       -----         -- -----
AB-Koeln-1929-1.djvu                                        1622      637.7 huge
AC-AB-1955-56.djvu                                           585      446.5 large
Almanach_1903_T2.djvu                                        144        1.6 medium
AB-LK-AC_1927_C_Alsdorf.djvu                                  34        1.7 small
Amtsblatt-RM1870_Register.djvu                                 9        2.9 tiny

2. scp-Befehle ausgeben um Dateien von fur zu kopieren (auf fur.bitplan.com ausführen

./djvu-setup.sh --scp
# Run on source machine (where /hd/luxio/genwiki/images exists):
VM=wf@vm2180.hostsharing.net:/var/www/mediawiki/sites/djvu-wiki.genealogy.net/images

scp -p /hd/luxio/genwiki/images/8/8d/AB-Koeln-1929-1.djvu $VM/8/8d/
scp -p /hd/luxio/genwiki/images/c/c0/AC-AB-1955-56.djvu $VM/c/c0/
scp -p /hd/luxio/genwiki/images/b/bd/Almanach_1903_T2.djvu $VM/b/bd/
scp -p /hd/luxio/genwiki/images/0/01/AB-LK-AC_1927_C_Alsdorf.djvu $VM/0/01/
scp -p /hd/luxio/genwiki/images/5/5a/Amtsblatt-RM1870_Register.djvu $VM/5/5a/

3. Nach scp: Verzeichnisse erstellen und Hardlinks in genwiki39e

sudo ./djvu-setup.sh --link

4. Dateien in MediaWiki registrieren

sudo ./djvu-setup.sh --import

Oder --all für Schritte 3+4:

sudo ./djvu-setup.sh --all  # --link + --import

Siehe auch