Zitat Zitat von arn354 Beitrag anzeigen

ACHTUNG - Anwendung auf eigene Gefahr!

1.) Erstellt ein Backup.
2.) fix_online-update.sh auf die Box kopieren und zumindest mit Rechten 0744 versehen.
3.) fix_online-update.sh ausführen mit (vorher in das Verzeichnis wechseln, wo das Skript liegt...)
./fix_online-update.sh
4.) warten
5.) warten
6.) Skript fertig
7.) reboot

Auf manchen Boxen wird das nicht laufen - z.B. VU. sobald ein Paket dabei ist, was einen automatischen Restart der Box auslöst.

Code:
#!/bin/sh
opkg list-installed |cut -d " " -f1 > /tmp/fix_online-update_packages.txt
rm -f /var/lib/opkg/status
rm -r -f /var/lib/opkg/info/*
opkg update
while read line; do opkg install $line --force-reinstall >> /tmp/fix_online-update.log;done < /tmp/fix_online-update_packages.txt
Was macht das Skript?
Es ermittelt alle installierten Pakete und speichert diese in /tmp/fix_online-update_packages.txt.
Dann löscht es den opkg/status und opkg/info. Damit weiß die Box quasi nicht mehr welche Version installiert ist und welche Version auf dem Feed ist.
Dann werden die Paketlisten wieder vom Feed aktualisiert.
Nach Aktualisierung der Paketlisten werden ALLE ermittelten Pakete NEU vom Feed installiert - in der richtigen Versionsnummer - das dauert... In /tmp/fix_online-update.log wird ein Log erstellt.
Wenn das Script fertig ist, blinkt der cursor wieder am Eingabe-Prompt.

Sollte es dann wieder neue Updates geben, dann sollten die Infos wieder zueinander passen.


ACHTUNG - Anwendung auf eigene Gefahr!
Dear members:

Sorry for writing in English. Just to confirm that script is great, worked OK and solved the issue. After that, box updating regularly.

Regards.