Offline Wikipedia

  • Ich hatte schon recht lange das Ziel, eine Wikipedia-Version offline auf eine vorhandene alte 1-TB-Festplatte herunterzuladen. Das hat mich abseits von diesem Uralt-Laptop, auf dem ich euch schreibe (und ich hab nix anderes), ein neues Kabel (USB-Datenkabel, nicht normales USB-Ladekabel, Fehlersuche diesbezüglich dauerte ca. einen Tag, denn ich wusste nicht, dass es da einen Unterschied gibt!) sowie sehr viel Zeit und Geduld gekostet. Mit diesem Wiki-Taxi (seit Ewigkeiten nicht aktualisiert) hat es dann irgendwann nach igs. 3 Tagen endlich funktioniert, so dass ich nun auch eine Offline-Wikipedia mein eigen nenne. Ich bin verdammt stolz auf mich nach all den Knoten im Kopf! :)


    Ach ja, die externe Festplatte liegt nun - außer bei ab und an Aktualisierungen - in einer EMP-sicheren Tasche. Is klar, oder? :winking_face:

  • Traumgarten

    mini -> nur einen Teil der Texte

    nopic -> nur Text, keine Bilder

    novid/maxi -> mit Bild-Thumbnails

    Kiwix hat Apps für Android, iOS, Windows, macOS und Linux. Gibt auch eine Server-Software und Images für den Raspberry Pi, womit man zentral mit einem lokalen WLAN oder im LAN die Wikis über den Webbrowser verfügbar machen kann.

    Alles kostenlos, aber über eine Spende freuen sich die Jungs immer.

  • gul https://kiwix.org/de/ Eine moderne Lösung für dein offline Wikipedia. Gibt auch viele andere Wikis und Datensätze zum herunterladen -> https://library.kiwix.org/#lang=deu

    gleich ein Test für den neuen RasPi... teilweise noch am runterladen, die DSL Leitung glüht...

    kiwix.png

    sind dann etwas über 250GB - geballtes Wissen und Kultur (Gutenberg de und en komplett...). Erstmal externe Festplatte, geplant: diese Festplatte und die zugehörige SD Karte in den Safe. Vielleicht eine NVME SSD besorgen - wenn der neue Raspi schon diese Neuerung hat...

    Stackexchange und weitere IT Geschichten folgen später.

    Wahrscheinlich ein Abzug auf LTO Band und wenn ich Lust habe einmal auf BluRay. Ansonsten Sicherung auf zweite Platte, die kann dann gerne einen Aluhut im Tresor bekommen, auf Steinplatten fange ich nicht mehr an. ja, ein alter Raspi der dafür noch geeignet ist wandert mit dazu.

    Gerne würde ich Wikimedia komplett dazu nehmen - aber über 400TB... würden zwar in meinen Serverschrank passen - aber dann den Wert der Wohnung erheblich steigern - mit Spiegelung 50000 - ohne laufende Kosten :)

    Aber ohne Scherz, auf 500GB geht sehr viel drauf, wenn man will auf eine SD Karte, da ist leicht ein Accesspoint gebaut der einfach Wissen liefert, notfalls raspi zero (2) w, ab 5V Stromversorgung das Wissen der Welt für unter 60€ verfügbar.

  • Sooo teuer sind 400 TB auch wieder nicht. Mit 20TB Laufwerken braucht man mit unraid,2x Parity und ein paar spare Drives rund 8k EUR für die Laufwerke.

    Wenn man das noch gespiegelt im Safe haben möchte entsprechend das doppelte.

    Mit Hardware landet man da vielleicht bei 20k EUR und laufen muss das system in normalfall ja nur für updates.


    Kann man die Medien auch schon besser komprimieren lassen? JPEG ist das ja total platzfressend. Modernere Apple und Samsung geräte komprimeiren die Fotos ja im HEIF-Format

    aus DE gesendet....

  • Wie mach Ihr das mit dem auslesen? Welche Endgeräte benutzt Ihr dazu.


    Den Raspi kann man dann an andere Endgeräte anschließen. Bildschirm, Festplatte etc?


    Oder nehmt Ihr andere Ausgabegeräte wie ein Tablet?


    Ben kannst bitte du das auslagern?

  • buchemer Der Raspberry Pi hat ein Webinterface mit Kiwix serve, wo alle ZIM-Dateien über den Webbrowser abgerufen werden können. Wenn du das nicht willst, kannst du auch Kiwix Desktop auf einem normalen Laptop installieren. Dort ist auch eine Server-Funktion eingebaut damit andere Geräte über das Netzwerk auf die Wikis zugreifen können.

  • |

    buchemer Der Raspberry Pi hat ein Webinterface mit Kiwix serve, wo alle ZIM-Dateien über den Webbrowser abgerufen werden können. Wenn du das nicht willst, kannst du auch Kiwix Desktop auf einem normalen Laptop installieren. Dort ist auch eine Server-Funktion eingebaut damit andere Geräte über das Netzwerk auf die Wikis zugreifen können.

    Kann sein das ich da nochmal mit der ein oder anderen Frage auf dich zukommen werde

  • ?Wo?

    Gerne auf dem offline Datenpool. Ja, komplett wird schwierig, zumindest die die Medien der deutschen Wikipedia. Einen echten Plan habe ich da noch nicht. Vielleicht mit einem sehr kleinen Wiki oder einem Auszug starten, und daraus eine eigene Bibliothek für Kiwix erzeugen. vor allem ginge es mir um die Integration von commons, also neben den im Wiki genutzten Medien auch den Rest. Liegt aber auf einer anderen Domain, da wird man etwas basteln müssen - und natürlich die Frage, ob der Speicherplatz noch handhabbar ist.

  • gul https://kiwix.org/de/ Eine moderne Lösung für dein offline Wikipedia. Gibt auch viele andere Wikis und Datensätze zum herunterladen -> https://library.kiwix.org/#lang=deu

    Kiwix war eine meinr bevorzugten Lösungen, hat aber nicht funktioniert. Frag mich bitte nicht, warum nicht... Ich bin froh, dass ich das mit dem ewig veralteten Taxi üerhaupt hingekriegt habe. Hat ewig gedauert.... :rolleyes:

  • Die Offline-Version der deutschsprachigen Wikipedia ist nicht soo groß, ich hab die seit Jahren auf einer 128GB-µSD-Karte im Handy und nutze sie mit Kiwix. Auf der Diskstation zuhause habe ich die englische und die dt. Version liegen, EInzige Einschränkung der großen Offline-Versionen sind die Bilder, die nur als Thumbnail in Briefmarkenformat eingebunden sind. Aber deswegen Wikimedia runterladen, wäre mir zuviel des Guten. Abgesehen davon, ob das die Server der Wikipedia-Foundation überhaupt zulassen würden, mal eben 400TB zu ziehen. So groß ist der Mehrwert dieser Bildersammlung auch nicht. Das würde ich machen, wenn eine Umsiedlung auf einen anderen Planeten bevorstünde. Und selbst dann, wäre mir die Bildersammlung zu wenig strukturiert/klassifiziert/authentifiziert, um sie z.B. als historisches Archiv einstufen zu können. Da wären staatliche Bildarchive wertvoller.

  • hab mit gestern das wikipedia in der größten Variante runter geladen. Ging mit 20 MB/s auch recht flott.


    Ich werd ma bei gelegenheit ne alte 64gb sd karte raus suchen und da malden raspi server drauf machen.


    Dann hat man für den ernstfall einen server in petto.


    Ich habe mich gefraht, wie man das aktuell galten kann. Jedes mal 40 GB runter laden kamn ja auch nicht sinnvoll sein

    aus DE gesendet....

    Einmal editiert, zuletzt von Traumgarten ()

  • ich teste gerade mein Setup:

    - Raspi5 4GB, Ubuntu Server auf 64GB SD

    - zim Dateien auf 500GB Sata Platte (per USB3)

    - Anbindung per WLAN


    die Seitenaufrufe in der WIkipedia sind praktisch Verzögerungsfrei. Suchen dauert etwas, in der englischen Wikipedia etwa 3-4 Sekunden. Es werden auch Treffer im Text und nicht nur im Titel gefunden. Wird vermutlich keine "echte" Volltextsuche sein, aber die Indizes scheinen ausreichend umfangreich.

    Mit dem Setup - und wenn die Suchfunktion nicht überstrapaziert wird - denke ich gehen leicht 20-30 parallele Nutzer, eher mehr. Als Informationslieferant für die Nachbarschaft oder an einem Leuchtturm/ einer Anlaufstelle für die Bevölkerung wahrscheinlich ausreichend.

    Mal schauen, wie es auf kleineren Raspis ausschaut, ich werde berichten.

  • Ich habe mich gefraht, wie man das aktuell galten kann. Jedes mal 40 GB runter laden kamn ja auch nicht sinnvoll sein

    leider sieht das kiwix System da keine Updates vor. Ist eine Schwäche des Systems. Wahrscheinlich ist es schwierig sonst die Performance auf schwachen Systemen zu erreichen. Es ginge sicher mit mehreren Dateien, würde die Komplexität aber steigern.

  • Kannst du mal dein Setup genau beschreiben.


    Ich würde das auch mal gerne probieren.

    Hatte mit Raspi noch keine Berührung.


    Ich habe mir Gestern einen Teil aufs Tablet gezogen.


    Screenshot_20231227_230600_Kiwix.jpg



    Screenshot_20231227_230610_Kiwix.jpg

  • Ich versuchs mal.

    Material:

    • Raspberry Pi (4 oder 5), 4GB RAM reichen locker. Funktioniert grundsätzlich auch auf kleineren Modellen. Die 4er und 5er haben Reserven für weitere Anwendungen und mehrere Nutzer. Kommt drauf an, ob das nur für einen selbst oder für eine größere Gruppe sein soll. In jedem Fall sollte man eine Version mit WLAN und/oder Ethernet wählen
    • dazu ein passendes Gehäuse und ein Netzteil. Die offiziellen Teile sind erstmal ausreichend, wenn man viel Last erwartet, also meinetwegen gleichzeitig da was mit Video laufen lässt, ist ein Gehäuse mit aktivem Lüfter ratsam.
    • die Raspberrys werden ohne Kühlkörper geliefert und laufen auch ohne, Kühlkörper sind aber billigst zu haben, ich würde welche drauf machen
    • eine ausreichend große SD Karte. Da sollte man an der Qualität nicht sparen. SD Karten altern schnell bei einem typischen Lastprofil als Systemdatenträger. Gerade häufige Schreibzugriffe auf Logdateien gehören dazu. Es gibt einige Anleitungen das zu unterbinden. Für ein Testsystem jetzt weniger relevant, für den dauerhaften Betrieb sollte man entsprechende Empfehlungen umsetzen.
      Zur Größe: Ich würde 16GB für das System vorsehen und dann schauen, was man für die Kiwix Datenpakete braucht (~100GB englische Wikipedia mit Bildern, für die deutsche ~50GB. Also mindestens 64GB SD, oder das Datengrab auf eine externe Platte. Für den Test aber auch noch nicht relevant.

    zuerst muss man ein Betriebssystem installieren. Das erfolgt über einen anderen Computer, der braucht natürlich einen MicroSD Leser. Dort startet man den Raspi Imager.

    ri_start.png

    da wählt man dann das passende Gerät, das Betriebssystem und die MicroSD Karte aus, dann klickt man auf "Next"

    ri_basiseinstellungen.png

    schaut dann beispeilsweise so aus. Die Speicherkarte hat mir das System als "Generic Storage Device" angezeigt, dort auf die Größe achten und nochmal schauen, nicht dass man versehentlich auf einen falschen Datenträger schreibt, das kann fatal enden.

    ri_einstellungen_anpassen.png

    als nächstes wählt man "Einstellungen bearbeiten"

    ri_einstellungen_allgemein.png

    Hostname: wie das Gerät heißen soll (je nach Router ist es dann auch unter zum Beispiel wiki.local im lokalen Netz erreichbar)

    Benutzer und Passwort: muss gesetzt werden, die aktuellen Betriebssysteme für den Raspi haben keinen Standardnutzer mehr.

    Wifi einrichten: wenn man über WLAN arbeiten will, wenn die Ethernetschnittstelle genutzt werden soll, kann man das weglassen.

    Sprache: nicht notwendig, hilft aber ungemein :)

    ri_einstellungen_dienste.png

    SSH aktivieren und auf der Standardeinstellung lassen. Die Alternative über Public Key ist sicherer, aber für den Anfang lassen wir das, kann man auch nachträglich für Produktivsysteme einstellen.

    ri_einstellungen_optionen.png

    so soll es aussehen. Wenn man den Entwicklern Informationen über benutzte Pakete usw zukommen lassen will, kann man Telemetrie aktivieren, aber bleiben wir erstmal datensparsam.

    Klickt man dann auf "Speichern" kommt man zum vorherigen Dialog zurück

    ri_einstellungen_anpassen.png

    Dann klickt man auf JA

    ri_warnung.png

    nachmal prüfen, ob der Datenträger wirklich der richtige ist und dann mit JA weiter

    ri_schreiben.png

    das dauert jetzt einbisschen

    ...

    dann die MicroSD Karte in den Raspi stecken, Strom dran - und etwas warten. Je nach Version kann das etwas dauern, einfach 5 Minuten Zeit geben.


    Jetzt ist es Zeit, sich auf das Gerät zu verbinden. Das geschieht über das SSH Protokoll [oder über lokale Tastatur und Monitor]. Unter Linux dürfte ssh vorhanden sein

    ssh benutzer@wiki.local

    wenn das nicht funktioniert, im Router nachschauen, was für eine IP Adresse vergeben wurde, dann

    ssh benutzer@192.168.2.45 <- oder was halt als Adresse ermittelt wurde


    unter Windows eignet sich das Programm Putty

    li_start.png

    wenn alles klappt hat man eine Eingabeaufforderung/Shell auf dem Raspi und kann loslegen


    als erstes sollte das System auf den aktuellen Stand gebracht werden: im Folgenden FETT was dort eingetippt wird

    apt update die Informationen über verfügbare Pakete aktualisieren

    apt upgrade das eigentliche Update ausführen


    wenn das durchgelaufen ist

    apt-cache search kiwix

    liefert

    li_apt_cache.png

    kiwix-tools sehen schon mal interesssant aus, also

    apt install kiwix-tools

    li_apt_install.png

    mit y bestätigen, dann wird das Paket inklusive der Abhängigkeiten installiert.


    jetzt fehlen noch Daten. Ich hab mir jetzt für den Beitrag ein kleines Paket rausgesucht, einen Wikipediaauszug zum Klimawandel

    https://download.kiwix.org/zim/wikipedia/wikipedia_de_climate_change_maxi_2023-12.zim


    den lädt man runter

    wget https://download.kiwix.org/zim…e_change_maxi_2023-12.zim


    li_download.png


    jetzt kann man das Ganze mal testen. Über kiwix-serve wird ein einfacher Webserver gestartet. Diese laufen normalerweise auf Port 80, Port unter 1000 können aber ohne Bastelei nur von root, also dem Administrator gestartet werden. Da muss man einige Sicherheitsdinge abwägen, deshalb erstmal auf Port 8080, quasi dem ersten Ausweichport


    kiwix-serve --port 8080 wikipedia_de_climate_change_maxi_2023-12.zim


    Wenn das ohne Fehlermeldung abläuft, einen Browser starten, Adresse eingeben und sich hoffentlich freuen. Die Adresse habe ich im folgenden mit der IP Adresse angegeben (hab versehentlich den Hostnamen "wiki" gerade zweimal im Netz... mein Fehler), das :8080 hinten nicht vergessen


    ff_start.png

    schaut schon mal gut aus, dann einfach mal ein bisschen durchklicken

    ff_article.png


    schaut gut aus.


    Im Test für den Beitrag habe ich einen Raspi Zero W verwendet, mit das langsamste was derzeit erhältlich ist. Und es ist - zumindest mit dem kleinen Datenpaket ohne Verzögerung bedienbar - Suche wird recht lange dauern.


    ich hoffe das hat geholfen, die deutsche Wikipedia ohne Bilder lädt gerade runter, hab gerade nur eine freie 32GB SD gefunden, die ist da mit 18GB noch gut geeignet. Ich geb noch Bescheid wenn diese auf dem Zero auch gut bedienbar ist.


    Für den Produktiven Einsatz gibt es natürlich noch einige ToDos

    • an der Betriebssystemsicherheit schrauben
      • SSH Login über Public Key
      • eigener Benutzer für Kiwix
      • Firewall
    • Backup
    • den Server auf Port 80 bereitstellen (für den Komfort),da gibt es mehrere Lösungen
    • wenn es in einem Krisenszenario eigenständig laufen soll, den WLAN Client auf WLAN AccessPoint umkonfigurieren
    • dann Stromversorgung bauen und eventuell Outdoor Gehäuse


    ganz vergessen, eine grobe Preisangabe (für ein sinnvolles Minimalsetup)

    Raspi: 16€ (Zero W)

    Netzteil: 5€ (oder man eh was passendes rumliegen)

    Gehäuse: unter 5€

    MicroSD: je nach Anspruch, brauchbare 128GB Karten ab 20€

    insgesamt um die 50€

    mit Raspi5 und direkt angeschlossener NVME SSD schaut es anders aus, da wird man ab 150€ rechnen müssen - mit vielfacher Leistung

    Einmal editiert, zuletzt von huizhaecka ()

  • so, der Download ist durch.

    Jetzt haben wir zwei *.zim Dateien. Zuerst wird der Testserver von vorher beendet (Strg-C).

    Als erstes muss eine Bibliothek erstellt werden, das geht folgendermaßen:

    li_library.png

    mit

    kiwix-serve --port 8080 --library mykiwix.xml

    wird der Server dann statt mit einer einzelnen Datei mit einer Bibliothek gestartet. Im Browser sieht das dann so aus:

    ff_library.png


    ein erster Test hat ergeben: einfaches Browsing ist auch auf dem Raspi Zero W zumindest für einen Benutzer genauso schnell wie auf leistungsfähigeren Modellen, bei parallelen Zugriffen mag das abweichen, aber wenn man großzügig eine Sekunde für die Seitenbereitstellung rechnet und jeder Nutzer einmal pro Minute eine Seite aufruft, sind das auch 60 gleichzeitige Nutzer.

    Bei der Volltextsuche schaut es erwartungsgemäß anders aus, da muss man auf das Ergebnis schon so 20 Sekunden warten - die einfache Titelsuche ist aber recht schnell.


    Ich bin selbst überrascht wie gut das auf dem kleinen Teil läuft.