Zum Inhalt springen

Paket lässt sich nicht installieren: Download, Architektur, Abhängigkeiten, LuCI und postinst

  • Unterscheiden, ob das Paket im Feed fehlt oder vorhanden ist, aber nicht installiert werden kann;
  • Architektur-, ABI-, Abhängigkeits-, LuCI-Frontend- oder postinst-Fehler identifizieren;
  • Verstehen, warum das Hauptprogramm installiert wurde, LuCI aber kein Menü zeigt;
  • Wiederherstellen, ohne die Firmware neu zu flashen.
Router-ShellFirmware, Architektur, Paketmanager und Feeds erfassen
Terminal-Fenster
ubus call system board
cat /etc/openwrt_release
cat /etc/apk/arch 2>/dev/null
command -v apk
command -v opkg
cat /etc/apk/repositories.d/distfeeds.list 2>/dev/null

25.12 verwendet apk; 24.10 verwendet opkg. Benennen Sie .ipk nicht in .apk um und erzwingen Sie keine andere Architektur.

ErwartetSie wissen, ob apk oder opkg gilt, sowie Release/Target/Architektur.

Router-ShellBestätigen, dass das Paket im Feed existiert
Terminal-Fenster
apk update
apk search <package>
apk info -e <package>

Schlägt apk update fehl, prüfen Sie zuerst 404/Signatur/Uhrzeit/Zertifikate. Findet die Suche nichts, ist der Feed womöglich veraltet, der Name falsch oder das Paket nicht in diesem Release/dieser Architektur enthalten.

Erwartetapk search/update findet es, oder Sie wissen, dass es fehlt.

Router-ShellFormat/Prüfsumme vor der Installation prüfen
  • 25.12: .apk; 24.10: .ipk;
  • Bevorzugen Sie Feeds gegenüber „Repacks“ von Cloud-Laufwerken bzw. aus Foren;
  • Prüfen Sie bei lokalen Dateien SHA-256/Signatur;
  • Verwenden Sie --allow-untrusted nicht routinemäßig; es umgeht Vertrauensprüfungen und beweist keine Kompatibilität.

ErwartetDie Quelle ist vertrauenswürdig und Format/Architektur passen.

Router-ShellPaketarchitektur prüfen, nicht den Dateinamen
Terminal-Fenster
cat /etc/apk/arch
apk info -a <package> | grep -E "arch|depends|provides" | head
  • x86_64, aarch64_cortex-a53 usw. sind nicht austauschbar;
  • Kernelmodule (kmod) müssen zu Kernelversion/ABI passen;
  • reine Skriptpakete können any/noarch sein und beweisen keine Architekturablehnung.

In diesem Labor wurde ein aarch64-sqm-scripts heruntergeladen, das aber sqm-scripts-any ist (keine architekturspezifische Binärdatei), und ein lokales --allow-untrusted ersetzte es trotzdem. Das beweist nicht, dass die Architekturprüfung bestanden wurde. Ein echter Ablehnungstest braucht ein Paket mit ELF-Dateien; diese Seite markiert ihn nicht als verifiziert.

ErwartetDie Paketarchitektur entspricht /etc/apk/arch; kmods passen zusätzlich zum Kernel.

Router-ShellAbhängigkeitsbaum und Installationsausgabe lesen
Terminal-Fenster
apk add <package> 2>&1 | tail -20
apk info -R <package> 2>/dev/null | head -20
apk info -e <dependency>

Häufige Fälle:

  • Hauptprogramm installiert, luci-app-* fehlt;
  • kmod-* passt nicht zum Kernel;
  • Abhängigkeiten liegen in einem anderen Feed bzw. einer anderen Version;
  • offizielle, ImmortalWrt- und iStoreOS-Feeds sind gemischt.

ErwartetFehlende Abhängigkeiten haben konkrete Paketnamen.

Router-ShellHauptprogramm ≠ LuCI-Frontend
Terminal-Fenster
apk info -L <luci-app-name> | head -20
ls -l /usr/share/luci/menu.d/ 2>/dev/null | grep <name>

In diesem Labor:

  • nur sqm-scripts: installiert, aber kein LuCI-Menü;
  • luci-app-sqm hinzugefügt: /usr/share/luci/menu.d/luci-app-sqm.json und /www/luci-static/resources/view/network/sqm.js erschienen;
  • luci-app-sqm entfernt: Menüdatei verschwand; Neuinstallation stellte sie wieder her.

Erscheint das Menü weiterhin nicht: Browser-Cache leeren, ab- und wieder anmelden, luci-base/Sprachpaket/rpcd prüfen; flashen Sie nicht als Erstes neu.

ErwartetNach der Installation von luci-app erscheinen Menü- und statische Dateien.

Labor 017: sqm-scripts → luci-app-sqmcast herunterladen
Echte OpenWrt-25.12.6-VM-Sitzung: sqm-scripts installieren (kein LuCI-Menü), luci-app-sqm hinzufügen (Menüdatei erscheint), entfernen (Menü verschwindet), neu installieren (wiederhergestellt). Der Player ist eine Ergänzung; maßgeblich sind die Codeblöcke auf dieser Seite.
Router-ShellPaket installiert, Dienst/Konfiguration aber nicht
Terminal-Fenster
logread | tail -50
apk info -L <package> | head -20
ls /etc/uci-defaults/ 2>/dev/null | tail
  • Ein fehlgeschlagenes postinst setzt das Paket nicht zwingend zurück;
  • prüfen Sie /etc/uci-defaults, /etc/init.d/<service>, /etc/config/<service>;
  • installieren Sie nicht wiederholt neu, nur um postinst erneut auszuführen; lesen Sie zuerst Log und Skripte.

ErwartetSie wissen, ob postinst fehlgeschlagen ist und was es geändert hat.

Router-ShellDeinstallieren/Feeds wiederherstellen/neu starten statt neu flashen
Terminal-Fenster
apk del <package>
# if feeds were changed:
cp /etc/apk/repositories.d/distfeeds.list.bak.YYYY-MM-DD /etc/apk/repositories.d/distfeeds.list
apk update
reboot

Wenn das Paket die Verwaltung beeinträchtigt, stoppen Sie zuerst den Dienst bzw. stellen Sie Konfigurationsbackups wieder her; ein Neuflashen ist der letzte Ausweg.

ErwartetZurück im vorherigen Zustand oder zumindest in der Lage, weiter zu debuggen.

Symptom Wahrscheinlichere Ursache Zuerst prüfen
apk update 404 falsches Release/Target/Architektur/Mirror-Pfad Feed-Dateien + curl -I
Paket nicht gefunden falscher Name/Feed/falsche Version apk search
Heruntergeladen, lässt sich aber nicht installieren Architektur/Abhängigkeit/Signatur apk info -a, Installationsausgabe
Installiert, aber kein Menü nur Hauptprogramm, kein luci-app-* apk info -L
Menü vorhanden, öffnet sich aber nicht LuCI/Sprache/rpcd/Cache Browser-Konsole, logread
postinst-Fehler Skript/Berechtigungen/Abhängigkeit/Konfiguration logread, /etc/uci-defaults
Nach der Installation kein Internet Dienst hat DNS/Firewall/Schnittstelle geändert Dienst stoppen, Backups wiederherstellen
  • Umgebung: OpenWrt 25.12.6 x86-VM 200; x86_64; apk; TUNA-Mirror aus Geschwindigkeitsgründen (die Seite setzt ihn nicht voraus).
  • sqm-scripts 1.7.2-r1: installiert; kein LuCI-Menü/Controller.
  • luci-app-sqm: installiert; /usr/share/luci/menu.d/luci-app-sqm.json erschien; /www/luci-static/resources/view/network/sqm.js existiert.
  • apk del luci-app-sqm: Menüdatei verschwand; Neuinstallation stellte sie wieder her.
  • aarch64-sqm-scripts: Das Paket ist sqm-scripts-any (noarch); lokales --allow-untrusted akzeptierte es; kein Test der Architekturablehnung.
  • Nicht destruktiv reproduziert: postinst-Fehler, kmod-ABI-Abweichung, echte architekturspezifische Ablehnung.
  • Dies ist E2 teilweise: Installation/Abhängigkeiten/LuCI-Menü/Entfernen und Neuinstallation wurden getestet; Architekturablehnung und postinst-Fehler wurden nicht vollständig reproduziert.
  • Rezept: tests/recipes/plugin-install-25.12.md.
  • Machen Sie daraus nicht „jedes Paket lässt sich installieren“; prüfen Sie Release/Target/Architektur pro Paket.

Quellen

Router.Homes

Unabhängige OpenWrt-Notizen. Jede Seite nennt Firmware, Gerät, Paketmanager und den Rückweg.

Symbole: Solar by 480 Design, CC BY 4.0