[Howto] WSUS Offline Server

  • [Hardware:] TS-220

    [Firmware:] 4.2.0

    [Getestet:] ja

    [Sonstige Modifikationen:] nein


    Nach stundenlanger Recherche habe ich nichts gefunden, dass jemand das wsusoffline-Script auf einem QNAP zum Laufen gebracht hat. Meine Anleitung ist ein Sammelsurium aus einigen Webseiten sowie den Dingen, die ich selbst rausgefunden habe. Voraussetzung ist ein installiertes und lauffähiges Entware inkl. C-Compiler und den Libs. Woher ihr das bekommt bzw. wie das installiert wird, bitte selbst googlen. Ich musste allerdings noch einige Pakete nachinstallieren, weil sie fehlten bzw. um die Symlinks auf Busybox durch die richtigen Tools zu ersetzen (siehe unten)


    • Download und Entpacken des Scripts in ein Verzeichnis Eurer Wahl
    • Sambafreigaben, Rechte und grundlegende Installation wie in dieser Anleitung beschrieben
    • Nachinstallation der folgenden Pakete mittels /opt/bin/opkg install (vorher /opt/bin/opkg update). Die Busybox war nötig, um die aktuelle Version zu erhalten. Meine Version enthielt noch eine uralte Version von readlink.
      • bash
      • md5deep
      • libxslt
      • libxml2
      • dos2unix
      • busybox
      • ncurses-bin
      • coreutils
      • cureutils-fold
      • coreutils-touch
      • coreutils-join
      • coreutils-sort
      • coreutils-tee
      • coreutils-tail
      • less
      • xmlstarlet
      • tar
      • wget
      • unzip
    • Download der Sourcen von cabextract in ein Verzeichnis Eurer Wahl und entpacken mittels tar -xvf
      • Wechsel in das Verzeichnis cabextract-1.9.1
      • ./configure
      • make
      • make install
      • cp cabextract /opt/bin/
    • folgende Änderungen im Quellcode vornehmen
      • wsusoffline/sh/download-updates.bash
        • in der ersten Zeile auf die Bash von entware verweisen: #!/opt/bin/bash
        • da readlink nicht als Binary für Entware verfügbar ist, muss eine aktuelle Busybox vorhanden sein (siehe oben). Den Aufruf in setup_working_directory() im case "Linux" entsprechend anpassen: canonical_name="$(/opt/bin/busybox readlink -f "$0")"
      • wsusoffline/sh/common-tasks/40-configure-downloaders.bash
        • die Zertifikatsüberprüfung wegen alter Rootzertifikate auf dem QNAP bei wget ausschalten: Parameter --no-check-certificates bei wget_common_options, wget_connection_test_a und wget_connection_test_b aufnehmen
    • Ich möchte auch anraten, das /tmp-Filesystem zu vergrößern oder gleich auf die Harddisk auszulagern. Eine Beschreibung dazu findet man unter anderem hier.

    Hier Extern verlinkten Code entfernt! die Ausgabe, wie es bei erfolgreichem Lauf aussehen sollte