Wie aktualisiere ich alle meine installierten Pakete in LEDE?

26

Ich frage mich nur, was das Äquivalent von ist

apt-get upgrade
apt upgrade
yum update

mit OpenWRT oder LEDE?

Evan Carroll
quelle

Antworten:

54

Es gibt keinen einzelnen Befehl oder ein Argument, aber Sie können es leicht tun. Um alle Pakete zu aktualisieren, empfiehlt LEDE ,

opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade 

Es gibt andere, weniger effiziente Möglichkeiten, wie Menschen AWK und dergleichen verwenden.

Eine wichtige Einschränkung ergibt sich häufig aus der umfangreichen Verwendung von LEDE / OpenWRTopkg

Da die LEDE-Firmware das Basissystem in einer komprimierten schreibgeschützten Partition speichert, werden alle Aktualisierungen von Basissystempaketen in die Lese- / Schreibpartition geschrieben und belegen daher mehr Speicherplatz als beim Überschreiben der älteren Version in der komprimierten Basis Systempartition. Es wird empfohlen, den verfügbaren Speicherplatz im internen Flash-Speicher und den Speicherplatzbedarf für Aktualisierungen von Basissystempaketen zu überprüfen.

Evan Carroll
quelle
1
Eine andere Möglichkeit ist die Verwendung einer Shell für die Schleife. zB> für eine in `opkg Liste aktualisierbare | cut -f 1 -d '' `; mache ein opkg Upgrade "$ a"; erledigt
Scott
5

Ich habe ein kleines Skript erstellt opkg-upgrade, das sich mit dem Upgrade auf eine bessere Weise befasst.

Es ist auf github verfügbar:
https://github.com/tavinus/opkg-upgrade

Das Upgrade wird so einfach wie:
opkg-upgrade

Curl / Wget Installationsanleitung hier!


Wie in der Datei readme.md erwähnt , kann es jedoch zu Problemen beim Aktualisieren kommen.

Mögliche Probleme:

  • Das Squashfs-Problem (ROM ist schreibgeschützt, sodass Upgrades zusätzlichen Speicherplatz auf Flash oder Extroot beanspruchen) .
  • Das Entwickler / Trunk (Beta) -Problem (die Beta-Versionen können bei Upgrades überarbeitet werden) .
  • Das Platzproblem (brauche genügend freien Platz für die Downloads und Installationen) .

Ich sollte auch erwähnen, dass ein Upgrade von CRON eine sehr schlechte Idee ist!
Ich würde sagen, dass nicht einmal bei einer regulären Linux-Distribution blinde Upgrades eine gute Idee sind.
Es gibt viele Dinge, die bei Upgrades schief gehen können, und da OpenWrt normalerweise auf Geräten ausgeführt wird, die blockiert werden können, ist es noch weniger sinnvoll, es unbeaufsichtigt zu machen.

Kurz gesagt, die einzigen Fälle, in denen ich jemals ein Upgrade durchführen würde, sind:

  • Bei Verwendung von Extroot auf einem riesigen USB-Stick
  • Wenn der interne Blitz 32 MB oder mehr groß ist
  • Wenn NICHT mit dev / trunk (beta)
  • Wenn Sie mit ext4 FS mit viel Speicherplatz arbeiten (x86 Metal, VM usw.)

Trotzdem würde ich nie von cron upgraden.
Ich würde auch 20 Mal überlegen, bevor ich den internen Flash-Speicher aktualisiere (auch große), da dies die Leistung schneller beeinträchtigen würde.

Mein Skript hat die Option, einen E-Mail-Bericht mit den verfügbaren Updates zu senden.
Daher würde ich empfehlen, das Berichterstellungstool zu cron hinzuzufügen, damit die Benutzer nach Erhalt der E-Mail ein manuelles Upgrade durchführen können. Dies macht die Dinge sicherer und bietet gleichzeitig die Möglichkeit, die Upgrades zu überarbeiten.

Prost!
Gus

Gus Neves
quelle