Paket-Feeds und China-Mirror: apk und opkg getrennt halten
Zuerst: Der Unterschied zwischen apk und opkg ergibt sich aus dem Firmware-Release, nicht aus der Frage „welcher Mirror ist schneller“. 25.12 verwendet apk; 24.10 verwendet opkg. Paketformat, Feed-Pfade und Verifikation unterscheiden sich und sind nicht austauschbar.
Ergebnis
Abschnitt betitelt „Ergebnis“- Sie wissen, ob die Firmware
apkoderopkgverwendet und wo die Feed-Dateien liegen. - Sie stimmen Release, Target, Architektur und den kmods-Kernel-Hash ab.
- Sie wissen, welchen Teil der URL ein China-Mirror ersetzt und welche Pfade exakt bleiben müssen.
- Sie verstehen, warum „nach dem Mirror-Wechsel Pakete nicht mehr installiert werden“, und wie Sie das beheben.
- Sie wissen, warum
apk upgrade/opkg upgradekein Firmware-Upgrade ist.
Paketmanager und Feeds ermitteln
Abschnitt betitelt „Paketmanager und Feeds ermitteln“ubus call system boardcat /etc/openwrt_releaseuname -mcat /etc/apk/arch 2>/dev/nullopkg print-architecture 2>/dev/nullWichtige Felder: release.version, release.target, DISTRIB_ARCH, release.revision. Sie müssen zum Mirror-Pfad passen.
ErwartetSie können die vollständige Kombination aus Release/Target/Architektur angeben.
OpenWrt 25.12 (apk):
cat /etc/apk/repositories.d/distfeeds.listOpenWrt 24.10 (opkg):
cat /etc/opkg/distfeeds.confcat /etc/opkg/customfeeds.confSichern Sie vor dem Bearbeiten:
cp /etc/apk/repositories.d/distfeeds.list /etc/apk/repositories.d/distfeeds.list.bak.$(date +%F) 2>/dev/null || truecp /etc/opkg/distfeeds.conf /etc/opkg/distfeeds.conf.bak.$(date +%F) 2>/dev/null || trueErwartetSie wissen, wohin jeder Feed zeigt und ob er apk oder opkg ist.
Das apk-Layout in 25.12
Abschnitt betitelt „Das apk-Layout in 25.12“OpenWrt 25.12 verwendet apk; Indizes sind .adb, Pakete sind .apk. Typische Feeds:
targets/<target>/packages/packages.adb: Target-spezifische Pakete;packages/<arch>/base/packages.adb: Basis;packages/<arch>/luci/packages.adb: LuCI;packages/<arch>/packages/packages.adb: allgemeine Pakete;packages/<arch>/routing|telephony|video/packages.adb: Kategorie-Feeds;targets/<target>/kmods/<kernel-hash>/packages.adb: Kernelmodule; der Hash muss zum laufenden Kernel passen.
Befehle:
apk updateapk search <name>apk add <name>apk info -e <name>Verwenden Sie nicht opkg und benennen Sie keine .ipk von 24.10 in .apk um.
Das opkg-Layout in 24.10
Abschnitt betitelt „Das opkg-Layout in 24.10“OpenWrt 24.10 verwendet opkg; Indizes sind Packages.gz, Pakete sind .ipk:
opkg updateopkg list | grep <name>opkg install <name>opkg list-installed | grep <name>Verwenden Sie nicht apk und übergeben Sie opkg keine .apk von 25.12.
Auf einen China-Mirror umschreiben
Abschnitt betitelt „Auf einen China-Mirror umschreiben“Für den TUNA-Mirror lautet die Wurzel:
https://mirrors.tuna.tsinghua.edu.cn/openwrt/Ersetzen Sie nur https://downloads.openwrt.org durch diese Wurzel und behalten Sie den gesamten Pfad:
https://downloads.openwrt.org/releases/25.12.6/targets/x86/64/packages/packages.adb→ https://mirrors.tuna.tsinghua.edu.cn/openwrt/releases/25.12.6/targets/x86/64/packages/packages.adbHören Sie nicht bei .../openwrt/ auf und lassen Sie releases/25.12.6/targets/x86/64/... nicht weg; ein unvollständiger Pfad liefert 404.
curl -I https://mirrors.tuna.tsinghua.edu.cn/openwrt/releases/25.12.6/targets/x86/64/packages/packages.adbErsetzen Sie die URL durch Ihr Release/Target; prüfen Sie bei kmods auch den Kernel-Hash. Fehlt dem Mirror der Pfad, erzwingen Sie ihn nicht.
Erwartetcurl liefert 200 und der Pfad passt zum aktuellen Release/Target.
apk update# oropkg updatePrüfen Sie mit apk search/opkg list, dass der Feed lesbar ist, und installieren Sie dann nur, was Sie brauchen. Behandeln Sie apk upgrade/opkg upgrade nicht als Firmware-Upgrade; verwenden Sie für Firmware sysupgrade/ASU/owut.
Erwartetapk/opkg update gelingt, ohne Pakete massenhaft zu upgraden.
Häufige Fehler
Abschnitt betitelt „Häufige Fehler“- Falsches Release (25.12.6 vs. 24.10.8);
- Falsches Target (
x86/64, kein Verzeichnisx86_64); - Falsche Architektur (
x86_64,aarch64); - Der Mirror hat diesen Pfad noch nicht synchronisiert;
- Die Verzeichnisse
packagesundtargetswurden verwechselt.
Signatur-/Verifikationsfehler
Abschnitt betitelt „Signatur-/Verifikationsfehler“- Beschädigter Index oder ein anderes Release;
- Falsche Systemzeit/Zertifikate;
- Ein anderer Feed wurde beigemischt;
- Verlassen Sie sich nicht auf
--allow-untrusted; beheben Sie stattdessen Feed/Verifikation.
Abhängigkeits-/ABI-Konflikt
Abschnitt betitelt „Abhängigkeits-/ABI-Konflikt“- Der kmods-Kernel-Hash passt nicht;
- Das Paket wurde für ein anderes Target/eine andere Architektur gebaut;
- Offizielle und ImmortalWrt-/iStoreOS-Feeds wurden gemischt;
- Sie brauchen dieselbe Quelle, dasselbe Release und dieselbe Architektur oder einen Neubau.
Befehl nicht gefunden
Abschnitt betitelt „Befehl nicht gefunden“- 25.12 hat kein
opkg; 24.10 hat keinapk; - Installieren Sie keinen Paketmanager, nur um einen Befehl auszuführen; ermitteln Sie zuerst Firmware/Quelle.
Paket installiert, aber LuCI zeigt es nicht an
Abschnitt betitelt „Paket installiert, aber LuCI zeigt es nicht an“- Es wurde nur das Kernpaket installiert; das Paket
luci-app-*fehlt; - Sprachpaket fehlt;
- Browser-Cache/Neuladen;
- Die Paketversion passt nicht zu LuCI.
Wiederherstellung
Abschnitt betitelt „Wiederherstellung“# apkcp /etc/apk/repositories.d/distfeeds.list.bak.YYYY-MM-DD /etc/apk/repositories.d/distfeeds.listapk update
# opkgcp /etc/opkg/distfeeds.conf.bak.YYYY-MM-DD /etc/opkg/distfeeds.confopkg updateFunktionieren Updates nach einem Mirror-Wechsel nicht mehr, stellen Sie zuerst den offiziellen Feed wieder her, prüfen Sie DNS/Zeit/Zertifikate und versuchen Sie dann den Mirror erneut. Springen Sie nicht zwischen vielen Mirrors.
E2-Laborlauf (2026-10-20)
Abschnitt betitelt „E2-Laborlauf (2026-10-20)“- Umgebung: OpenWrt 25.12.6 x86 VM 200;
apk; offizieller Feed und TUNA-Mirror. - Offizielles
apk update:OK: 11220 distinct packages available;apk search -x sqm-scriptsfandsqm-scripts-1.7.2-r1. - Wechsel zu TUNA:
apk updateebenfalls 11220;apk add sqm-scriptsinstallierte1.7.2-r1. - Offiziellen Feed wiederhergestellt:
apk updatefunktionierte; der endgültige Feed zeigt wieder aufdownloads.openwrt.org. - Nicht getestet: 24.10
opkg, Signaturfehler, gemischte Feeds/ABI-Konflikt, beschädigter Mirror-Index. - Rezept:
tests/recipes/package-sources.md.
E2-Status und Quellen
Abschnitt betitelt „E2-Status und Quellen“- Dies ist E2 partiell: Der 25.12-
apk-Pfad mit offiziellem Feed/TUNA/Installation/Wiederherstellung wurde getestet;opkgund die Zweige mit fehlerhaften Feeds bleiben Dokumentation. - Mirror-Pfade ändern sich mit Releases; führen Sie vor der Veröffentlichung
update/searchfür das Ziel-Release/-Target/-Arch erneut aus. - Mischen Sie keine offiziellen, ImmortalWrt- oder iStoreOS-Feeds; ABI, Kernel und Signaturen können alle nicht passen.
Quellen
Unabhängige OpenWrt-Notizen. Jede Seite nennt Firmware, Gerät, Paketmanager und den Rückweg.
Symbole: Solar by 480 Design, CC BY 4.0