7-Zip zum Entpacken nutzen

Go-Upper kann vorhandene RAR-Archive wahlweise mit WinRAR oder 7-Zip entpacken. Das gewählte Programm betrifft ausschließlich das Entpacken: Neue Kundenarchive werden weiterhin mit WinRAR als RAR-Dateien erzeugt.

7-Zip unterstützt RAR offiziell als reines Entpackformat. Die aktuellen Installer und Konsolenversionen für Windows, Linux und macOS findest du auf der offiziellen 7-Zip-Downloadseite.

1) Voraussetzungen

Installiere beide Programme:

  • 7-Zip zum Entpacken der vorhandenen RAR-Archive.
  • WinRAR beziehungsweise rar zum Erzeugen der neuen RAR-Archive.

Typische ausführbare Dateien:

System 7-Zip WinRAR/RAR
Windows C:\Program Files\7-Zip\7z.exe C:\Program Files\WinRAR\WinRAR.exe
Linux/macOS 7zz oder 7z rar

Prüfe auf Linux oder macOS, welcher 7-Zip-Befehl installiert ist:

7zz i

Falls 7zz nicht gefunden wird:

7z i

2) Entpacken und erneutes RAR-Packen aktivieren

In config/upper.config.yml müssen Entpacken und RAR-Erstellung aktiv bleiben:

general:
  extractRARs: true
  createRARs: true

extractRARs aktiviert das Entpacken vorhandener RAR-Archive. createRARs sorgt dafür, dass Upper den entpackten Inhalt anschließend wieder als Kunden-RAR packt.

3) Pfade konfigurieren

Trage beide Programme ein.

Windows:

path:
  sevenzip: 'C:\Program Files\7-Zip\7z.exe'
  winrar: 'C:\Program Files\WinRAR\WinRAR.exe'

Linux oder macOS:

path:
  sevenzip: '7zz'
  winrar: 'rar'

Wenn deine Installation den Befehl 7z statt 7zz bereitstellt, trage entsprechend sevenzip: '7z' ein.

4) 7-Zip als Entpacker auswählen

archive:
  mode: 'rar'
  extractor: '7zip'
  partsize: '200m'
  pw: ''
  sevenzip:
    options:
      extractRecursive: true
      extractOriginal: false
      silent: true
      customExtract: ''
  winrar:
    options:
      silent: true
      exclude:
        - '*.json'
      customCreate: ''

Die Optionen unter archive.sevenzip.options bedeuten:

Option Bedeutung
extractRecursive Entpackt zusätzlich RAR-Archive in Unterordnern.
extractOriginal false nutzt 7z e und legt Dateien flach ab; true nutzt 7z x und erhält die Ordnerstruktur.
silent Unterdrückt normale Ausgabe und Fortschrittsmeldungen; Fehler bleiben sichtbar.
customExtract Optionaler einzelner zusätzlicher 7-Zip-Schalter für erfahrene Benutzer.

archive.pw wird beim Entpacken als Archivpasswort verwendet und gilt anschließend ebenfalls für die neu erzeugten RAR-Archive. Bei Archiven ohne Passwort bleibt der Wert leer.

5) Ergebnis prüfen

Lege zunächst ein Testrelease mit RAR-Dateien in einem konfigurierten path.scan ab. Im Log sollte beim Entpacken eine Meldung mit [7-ZIP] erscheinen. Der anschließende WinRAR-Schritt muss neue .rar-Dateien für den Upload erzeugen.

Prüfe bei einem Fehler:

  1. Ist general.extractRARs: true gesetzt?
  2. Ist general.createRARs: true gesetzt?
  3. Lautet archive.extractor exakt 7zip?
  4. Ist path.sevenzip ausführbar?
  5. Ist path.winrar weiterhin gesetzt und ausführbar?
  6. Stimmt archive.pw mit dem Passwort des Quellarchivs überein?

Mit archive.skipOnError: true beendet ein fehlgeschlagenes Entpacken den Prozess nicht. Der Eintrag landet im Error-Log, wird bei notification.notifyOn.error: true gemeldet und übersprungen.

Wenn du wieder mit WinRAR entpacken möchtest, ändere nur:

archive:
  extractor: 'winrar'

7-Zip wird nie zum Packen verwendet. path.winrar und archive.winrar.options bleiben für die Erzeugung der Kunden-RARs maßgeblich.