26

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

EDIT: na jest coś takiego jak "własne polecenia". Tam to można umieścić i będzie gotowiec.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

27

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Będziemy testować.

GL.iNet GL-MT6000 + 2x AP_Xiaomi AX3000T

28

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Cezary, a czy backuppkgslist.sh dałoby się wywoływać przez sysupgrade przed wywołaniem procedury robienia backupu? Czy to zbyt dużo babraniny?

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

29

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Chyba średnio jest jak to zrobić bez modyfikacji samych skryptów w /lib/upgrade.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

30 (edytowany przez Cezary 2023-08-24 06:36:43)

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Cezary napisał/a:

EDIT: na jest coś takiego jak "własne polecenia". Tam to można umieścić i będzie gotowiec.

Niestety ma to pewne wady - np. u mnie przy dużej liczbie pakietów z różnymi dodatkami do luci wyświetlał "Nie można wykonać komendy!" mimo że w tle nadal to robił.

Na razie zostaje tak jak jest, później będziemy myśleć czy coś z tym zrobić.

Tak to wygląda z luci (System/Własne komendy):

https://i.postimg.cc/cHCNz9dh/Zrzut-ekranu-z-2023-08-24-07-25-52.png

https://i.postimg.cc/YSbHbKBj/Zrzut-ekranu-z-2023-08-24-07-26-04.png

https://i.postimg.cc/26tfNQ6D/Zrzut-ekranu-z-2023-08-24-07-26-41.png

A tak z konsoli:

root@OpenWrt:~# restorepkgslist.sh 
root@OpenWrt:~# restorepkgslist.sh verbose
Brak listy pakietów do zainstalowania
root@OpenWrt:~# backuppkgslist.sh verbose

Wykonano archiwum listy pakietów
root@OpenWrt:~# restorepkgslist.sh verbose
Downloading https://downloads.openwrt.org/releases/23.05-SNAPSHOT/packages/x86_64/base/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_base
Downloading https://downloads.openwrt.org/releases/23.05-SNAPSHOT/packages/x86_64/base/Packages.sig
Signature check passed.
...

Package easyconfig (20230421) installed in root is up to date.

Zainstalowano pakiety użytkownika

Zmieniłem też sposób wykrywania pakietów - pierwotnie zrobiłem bazując na statusie pakietu ("user installed"), ale to nie jest dobra metoda bo np. dla obrazów x86 łapie też inne pakiety. Więc tym razem skrypty bazują na czasie instalacji - przyjmuję że czas instalacji base-files to podstawa instalacji obrazu i innych pakietow, a wszystko z późniejszą data instalacji to pakiety zainstalowane przez użytkownika.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

31

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Jak dla mnie zdecydowanie krok do przodu. Ułatwi to aktualizację.

GL.iNet GL-MT6000 + 2x AP_Xiaomi AX3000T

32 (edytowany przez Cezary 2024-11-17 20:52:50)

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Rozwiązanie w takiej postaci wejdzie do obrazów wraz z najbliższą kompilacją (w ten weekend, jak nic się nie wysypie).
Jeżeli ktoś używa innych obrazów to oczywiście też może tego użyć bo nie jest to powiązane jakoś specjalnie z eko.one.pl, źródła i makefile do pakietu dostępne są w moim gicie: https://github.com/obsy/packages/tree/m … store-opkg

W szczególności jeżeli ktoś już chce przetestować to rozwiązanie to trzeba robić:
1. Pobrać sobie skrypt do routera (trzeba mieć obsługę https) i wykonać to:

$ wget https://raw.githubusercontent.com/obsy/packages/master/backupandrestore-opkg/files/usr/bin/backuppkgslist.sh -O /usr/bin/backuppkgslist.sh
$ /usr/bin/backuppkgslist.sh

2. Jak już zrobię nowe obrazy to należy zaktualizować system z zachowaniem konfiguracji (ręcznie, przez sysupgrade lub z luci przez Attendedsysupgrade ) (tylko z głową - żeby komuś nie przyszło na myśl aktualizowanie z zachowaniem konfiguracji z jakiejś starej wersji, bo właśnie przed chwilę tak napisałem żeby zrobić... dotyczy to bieżącego wydania)
3. w obrazie będą już skrypty, więc później po podłączeniu do internetu należy wykonać

$ restorepkgslist.sh

I powinno zainstalować to co było na liście pakietów użytkownika. Jeżeli ktoś używał innych pakietów (nie z repo openwrt) to oczywiście należy pamiętać o wcześniejszym dodaniu wszystkich innych repozytoriów (jeżeli nie zachowały się w backupie), bo skrypt sam z siebie nie ściągnie samodzielnie pakietów których nie ma w zdefiniowanych repozytoriach.

Po wykonaniu skryptu można też po prostu zrobić backup przez sysupgrade czy z luci (w nim powinna być już lista pakietów instalowanych przez użytkownika), zrobić aktualizację bez zachowania konfiguracji, przywrócić samą listę pakietów i uruchomić skrypt do ich instalacji.  Lista pakietów z których korzystają skrypty znajduje się w pliku /etc/backup/list-user-installed-packages.txt

Jeżeli ktoś nie korzysta z moich obrazów tylko z openwrt i ma pakiety tylko z openwrt a nie innych źródeł to w/w skrypty nie mają większego sensu - wystarczy użyć attendedsysupgrade żeby automatycznie złożył się obraz z pakietów które są aktualnie zainstalowane i zaktualizował na routerze.

PS. Jeżeli ktoś nie wie to sysupgrade ma też opcję -k która zachowuje listę wszystkich pakietów w obrazie (też w katalogu /etc/backup).

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

33 (edytowany przez ambrozy5 2023-08-25 10:30:36)

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Cezary napisał/a:

Mogę tak zrobić żeby po pierwszym podłączeniu do internetu sam instalował pakiety. Ale kompletnie nie uważam tego za dobry i odpowiedzialny pomysł żeby taki automat działał. Niech użytkownik sam decyduje i ma świadomość co robi.

W np pfsense przy aktualizacji osa aktualizują się wszystkie paczki, dwa kliknięcia - nie moglo by być tak w openwrt?

Dom : router https://i.imgur.com/IuB6Zwy.png | TP-LINK T1700G-28TQ |Zyxel XGS-1210-12 | 6x Ruckus r310 unleashed  + Ruckus icx7150-c12p | Truenas scale 124TB 25Gb| Xpenology 12TB | apc smart ups 750 lcd smile 100Mb/s - 25Gb/s
Podróżne : GL.Inet MT3000  +1TB hdd
Działka : rb260gs 1j wdm 1Gb+ ruckus r310 + nb m5 + kilka kamer ip  + panel 285Wp + lifepo4 12v 60Ah .

34

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

ambrozy5 napisał/a:
Cezary napisał/a:

Mogę tak zrobić żeby po pierwszym podłączeniu do internetu sam instalował pakiety. Ale kompletnie nie uważam tego za dobry i odpowiedzialny pomysł żeby taki automat działał. Niech użytkownik sam decyduje i ma świadomość co robi.

W np pfsense przy aktualizacji osa aktualizują się wszystkie paczki, dwa kliknięcia - nie moglo by być tak w openwrt?

Przecież tak będzie - click i instalują ci sie paczki które masz na liście w backupie. Ale nie uważam że powinien to robić automat.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

35

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Też jestem tego zdania, że taki automat może czasami stwarzać problemy. Lepiej sprawdzić dwa razy i kliknąć niż kliknąć i naprawiać przez godzinę wink

WinISO.pl - Archiwum polskich wersji systemów Windows, Windows Serwer i Office

36

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Królik napisał/a:

Cezary, a czy backuppkgslist.sh dałoby się wywoływać przez sysupgrade przed wywołaniem procedury robienia backupu? Czy to zbyt dużo babraniny?

Takie obejście

mv /sbin/sysupgrade /sbin/sysupgrade.real
echo '#!/bin/sh' > /sbin/sysupgrade
echo 'backuppkgslist.sh' >> /sbin/sysupgrade
echo '/sbin/sysupgrade.real $*' >> /sbin/sysupgrade
chmod 755 /sbin/sysupgrade

Trochę głupie, ale...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

37

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

SKoro działa to nie jest to do końca takie głupie wink

WinISO.pl - Archiwum polskich wersji systemów Windows, Windows Serwer i Office

38

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Dzisiaj pierwsza próba restorepkgslist.sh przy okazji odświeżenia 23.05.
I tak:
-prawidłowo działa z konsoli, fajne jest to że nie wysypuje się na pakietach których już w repo nie ma
-ale z luci robi cuda.... generalnie kończy się niepowodzeniem, w dodatku nasza lista nadpisywana jest nową, pełną pakietów które nie wiadomo skąd się wzięły
-niezbyt podoba mi się pomysł automatycznego modyfikowania listy po wykonaniu restorepkgslist, no bo właśnie tracimy listę w przypadku niepowodzenia
-nie radzi sobie z pakietami, które wymagają usunięcia wersji lżejszej, tu przykład wpad-basic-mbedtls->hostapd-mbedtls

Jeszcze na koniec taki problem: jest sobie router z konfiguracją z pppoe ipv6 +ds-lite (ds-lite wymaga doinstalowania). Dopóki nie ma w systemie ds-lite, to wyjście jest tylko przez ipv6 (hmmm, mam nadzieję, że chociaż ipv6 działa bez zmiany configa). Ds-lite wymaga zależności resolveip, kmod-iptunnel6, kmod-ip6-tunnel. Ds-lite oraz resolveip ściągane są z downloads.openwrt.org, ale te kmod zależne od wersji kernela już z dl.eko.one.pl. A serwer Cezarego nie jest dostępny po ipv6 :-)
Pozdr

39

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Luci ma timeouty na to. Jak się nie skończy wykonywać w określonym czasie to jest błąd, mimo że się robi to dalej.

Jeżeli robi się lista wszystkiego to znaczy że coś jest nie tak z odczytywaniem danych o pakietach, zresztą z konsoli wykonuje się to samo. Doprowadź jeszcze raz do takiej sytuacji i pokaż tą listę oraz plik /usr/lib/opkg/status

I ostatnie - tak, to tylko instaluje pakiety, ale nie podejmuje żadnej interakcji w sprawdzaniu konfliktów i rozwiązywaniu problemów z zależnościami. Robi zwykłe opkg install i  nic więcej.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

40

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

>Doprowadź jeszcze raz do takiej sytuacji i pokaż tą listę oraz plik /usr/lib/opkg/status
Nie udało się doprowadzić do tej sytuacji, zrobiłem dwie próby r23399->r23399, r23310->r23399
W obu przypadkach w Luci wyświetliło się "Failed to execute command!".
Przy próbie sprawdzania w konsoli co się zainstalowało, a co nie, przez jakiś czas była blokada opkg, np
# opkg install libpam
Collected errors:
* opkg_conf_load: Could not lock /var/lock/opkg.lock: Resource temporarily unavailable.
Chyba o tym pisałeś, że pomimo komunikatu failed, proces leci dalej.
W przeciwieństwie do Twoich obrazków, brak jednak widocznego verbose w Luci, jest tylko końcowe failed.
W sumie zainstalowały się wszystkie pakiety z listy.

Patrząc na plik /usr/lib/opkg/status i że brany jest pod uwagę Installed-time, to chyba coś się musiało porąbać z czasem systemowym jak był restart po upgrade (była generowana prawdopodobnie lista ze wszystkimi pozycjami "user installed"?)

Jedna rzecz do poprawki zauważona przy r23399->r23399:
podwójny wpis obu komend w /etc/config/luci (pewnie zawsze dopisujesz, niezależnie od tego czy już te komendy są)

Pozdr.

41

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Tak, dopisuję zawsze. To mogę poprawić.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

42

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Literówkę masz w menu "Własne komendy"

Instalacja pakietów użytkownka

GL.iNet GL-MT6000 + 2x AP_Xiaomi AX3000T

43

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

artur_n napisał/a:

Literówkę masz w menu "Własne komendy"

Instalacja pakietów użytkownka

Dzięki, poprawię. Tymczasem możesz zrobić edycję pozycji i to zmienić.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

44

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Czytam i nie mam pewności, stad moje pytanie.
Czy Cloudbackup lub inne narzędzie można użyć w takiej sytuacji.
1. Mam Twoje stare openwrt 21.02 chciałbym zrobić backup listy pakietów zainstalowanych w systemie przez użytkownika.
2. Następnie chciałbym tradycyjnie zainstalować Twoje nowe openwrt 23.05 i przywrócić w/w backup.

Co się przywróci?. Rozumiem, że zainstalują się wszystkie dodatkowe programy które są na liście pakietów backup. Ale czy zainstalują się z domyślną konfiguracją czy może już tą zmodyfikowaną przeze mnie w openwrt 21.02?

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

45

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Jeżeli jest już w systemie plik który w pakiecie ma oznaczy jako konfig to go nie nadpisze i zostanie ten stary. Jeżeli nie było konfiga w systemie to będzie ten z pakietu.

Ale - nie możesz na ślepo używać konfigów z 21.xx na 23.xx, bo nie masz pewności czy pakiet nie został na tyle zaktualizowany żeby zmienił się także jego konfig. Zrobienie z tego takiej automatyki to tylko proszenie się o kłopoty.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

46

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Dzisiaj przetestowałem skrypty na żywym organizmie w bardzo restrykcyjnym środowisku: u teścia w domu. Upgrade z 21 do 23 poszedł dzięki temu gładziutko. Dzięki Cezary.

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

47 (edytowany przez ZbiG 2023-11-24 01:07:08)

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Co może być nie tak?

root@Router1:~# opkg update
...
root@Router1:~# auc
auc/0.3.2-1
Server:    https://sysupgrade.openwrt.org
Running:   23.05.2 r23630-842932a63d on ipq807x/generic (xiaomi,ax9000)
Invalid argument (22)
root@Router1:~#

Do tej pory w ten sposób aktualizowałem routery. Zapewne po ostatniej aktualizacji tak się porobiło. Na obu routerach mam taki sam błąd. Idzie to jakoś poprawić przed kolejną aktualizacją?

Xiaomi Mi Router AX9000 ver. EU + OpenWrt 25.12.0
NETGEAR Nighthawk X4S R7800 + OpenWRT 25.12.0
Netgear Nighthawk R7000 & 6400 v2 + FreshTomato
TP-Link TL-WR842ndv1 + DD-WRT

48

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Zrób aktualizację ręcznie. auc tak zwraca jak jest problem z dostepem do danych lub json który jest zwracany ma coś nie tak w sobie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

49

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

Cezary napisał/a:

Zrób aktualizację ręcznie. auc tak zwraca jak jest problem z dostepem do danych lub json który jest zwracany ma coś nie tak w sobie.

Samo się naprawiło, bez dotykania. Pewnie był jakiś problem po stronie serwera.

Xiaomi Mi Router AX9000 ver. EU + OpenWrt 25.12.0
NETGEAR Nighthawk X4S R7800 + OpenWRT 25.12.0
Netgear Nighthawk R7000 & 6400 v2 + FreshTomato
TP-Link TL-WR842ndv1 + DD-WRT

50

Odp: Attendedsysupgrade / Nadzorowany Sysupgrade

ZbiG napisał/a:
Cezary napisał/a:

Zrób aktualizację ręcznie. auc tak zwraca jak jest problem z dostepem do danych lub json który jest zwracany ma coś nie tak w sobie.

Samo się naprawiło, bez dotykania. Pewnie był jakiś problem po stronie serwera.

Tak, leżał przez jakiś czas i nie zwracał jsonów.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.