[MOD] Technicolor Custom GUI di Ansuel

  • 3516 Risposte
  • 1609779 Visite

0 Utenti e 3 Visitatori stanno visualizzando questo topic.

Offline FrancYescO

  • VIP
  • *****
  • 3382
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1725 il: 08 Dicembre 2020, 13:37 »
@larsen64it o @lorenzocanalelc riuscite a dirmi l'output di cat /proc/1/cmdline sullo Xtream? poi se l'output è init dobbiamo andare oltre e capire come prendere lo stesso output quando è in preinit insieme magari a un lsof /dev/watchdog magari mettergli un redirect ad un file da creare in /tmp stesso nello script dove fa il check...

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1726 il: 08 Dicembre 2020, 13:50 »
Sì scusate, volevo dire che il problema lo vede chi fa un aggiornamento firmware dopo un aggiornamento mod da versione con modoverlay funzionante

Offline lorenzocanalelc

  • Esperto
  • ****
  • 678
  • Sesso: Maschio
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1727 il: 08 Dicembre 2020, 13:50 »
Codice: [Seleziona]
root@OpenWrt:~# cat /proc/1/cmdline
initroot@OpenWrt:~#
Sembra essere quello anche se non capisco perché me lo fa vedere così (Infatti la prima volta pensavo non mi avesse dato output)

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1728 il: 08 Dicembre 2020, 13:56 »
servono entrambi:
Codice: [Seleziona]
cat /proc/1/cmdline
lsof /dev/watchdog

sia in funzionamento normale che in preinit

In teoria mi aspetto una roba simile ma vi conviene verificare:

 - firmware senza procd:

Preinit:
Codice: [Seleziona]
# cat /proc/1/cmdline
init
# lsof /dev/watchdog
# # vuoto, oppure bla bla bla ... init

Fuori preinit:
Codice: [Seleziona]
# cat /proc/1/cmdline
init
# lsof /dev/watchdog
bla bla bla ... watchdog-tch
#

 - firmware con procd:

Preinit:
Codice: [Seleziona]
# cat /proc/1/cmdline
init
# lsof /dev/watchdog
# # vuoto, oppure bla bla bla ... init

Fuori preinit:
Codice: [Seleziona]
# cat /proc/1/cmdline
procd
# lsof /dev/watchdog
bla bla bla ... procd
#
« Ultima modifica: 08 Dicembre 2020, 14:05 da LuKePicci »

Offline FrancYescO

  • VIP
  • *****
  • 3382
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1729 il: 08 Dicembre 2020, 14:42 »
stavamo pensando, $(pgrep init | wc -l) == "1" ...sempre che possiamo usare pgrep
sui vecchi senza procd init da avviato è presente due volte, mentre su quelli con procd, init non esiste da avviato, 1 dovrebbe dirci siamo in preinit

Offline antonio-68

  • Membro Giovane
  • **
  • 57
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1730 il: 08 Dicembre 2020, 14:43 »
Buongiorno a tutti, qualcuno mi sa indicare come far comparire il nome host nella scheda "Dispositivi" della GUI Ansuel? Al momento io riesco a visualizzare i nomi host solo per alcuni dei dispositivi connessi, mentre per altri appare una cosa del tipo

Unknown-<mac-address>          <ip-address>        <mac-address>

Ho provato a riservare degli indirizzi IP per questi host, ma mi sembra che ci sia una persistenza dei nomi precedentemente registrati che impedisce ai nuovi nomi riservati di essere visualizzati

Grazie per darmi lumi :-)

Offline larsen64it

  • VIP
  • *****
  • 2697
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1731 il: 08 Dicembre 2020, 14:45 »
xtream con la .25 eliminando la  modifica
Codice: [Seleziona]
root@OpenWrt:~# cat /proc/1/cmdline
initroot@OpenWrt:~# lsof /dev/watchdog
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
watchdog- 1993 root    1w   CHR 10,130      0t0  418 /dev/watchdog
root@OpenWrt:~# init
init: must be run as PID 1
root@OpenWrt:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
rootfs                   47488     11416     36072  24% /
/dev/root                22528     22528         0 100% /rom
/dev/mtdblock2           31872      1136     30736   4% /overlay
overlayfs:/overlay/bank_2
                         31872      1136     30736   4% /saferoot
/dev/mtdblock3           47488     11416     36072  24% /modoverlay
overlayfs:/modoverlay/bank_mod
                         47488     11416     36072  24% /
root@OpenWrt:~#

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1732 il: 08 Dicembre 2020, 14:45 »
1 dovrebbe dirci siamo in preinit

Accertati che in preinit esista una volta sola.

@larsen64it rifai lo stesso test in preinit Basta che aggiungi a /overlay/bank_2/usr/sbin/mount_modoverlay un blocco tipo:
Codice: [Seleziona]
{
echo lsof /dev/watchdog:
lsof /dev/watchdog
echo cat /proc/1/cmdline
cat /proc/1/cmdline
echo pgrep init : wc -l
echo $(pgrep init | wc -l)
} >> /tmp/test_preinit
« Ultima modifica: 08 Dicembre 2020, 14:54 da LuKePicci »

Offline lorenzocanalelc

  • Esperto
  • ****
  • 678
  • Sesso: Maschio
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1733 il: 08 Dicembre 2020, 15:08 »
Prima di leggere il tuo commento @LuKePicci avevo fatto un test e modificando Mount_modoverlay così:
Codice: [Seleziona]
if [[ "$bootedbank" != "$activebank" && "$bootedbank" == "bank_2" && $(pgrep init | wc -l) == "1" ]]; then
    [ -d /tmp/modoverlay ] || mount_root
fi
Il modoverlay è stato montato. Unica cosa la prima volta avevo modificato solamente il file /saferoot/usr/sbin/mount_modoverlay e al riavvio mi sono ritrovato senza modoverlay e con il mount_overlay della 9.6.25
Codice: [Seleziona]
(if [[ "$bootedbank" != "$activebank" && "$bootedbank" == "bank_2" && ! -d /proc/1 ]]; then
     [ -d /tmp/modoverlay ] || mount_root      [ -d /tmp/modoverlay ] || mount_root
 fi)
EDIT:
Comunque con il file così:
Codice: [Seleziona]
root@OpenWrt:/overlay/bank_2/usr/sbin# cat mount_modoverlay
#!/bin/sh

[ -f "/rom/$(command -v $0)" ] && /rom/$(command -v $0) $@
hooked_ret=$?

mount_root() {
        if [ -x /sbin/mount_root-mod ]; then
                /sbin/mount_root-mod
        else
                echo "****************************************************"
                echo "* NO mount_root-mod program found                  *"
                echo "* can not mount the modroot filesystem             *"
                echo "****************************************************"
        fi
}

bootedbank=$(cat /proc/banktable/booted)
activebank=$(cat /proc/banktable/active)

#only if OBP is applied try to mount
#mount will fail if coming from a failboot from bank1 (=mtd3 have a valid firmware)
#also check that we are in preinit to avoid "hot" mount
{
echo lsof /dev/watchdog:
lsof /dev/watchdog
echo cat /proc/1/cmdline
cat /proc/1/cmdline
echo pgrep init : wc -l
echo $(pgrep init | wc -l)
} >> /tmp/test_preinit

if [[ "$bootedbank" != "$activebank" && "$bootedbank" == "bank_2" && $(pgrep init | wc -l) == "1" ]]; then
    [ -d /tmp/modoverlay ] || mount_root
fi

return $hooked_ret
Ho ottenuto questo file:
[ You must login or register to view this spoiler! ]
« Ultima modifica: 08 Dicembre 2020, 15:18 da lorenzocanalelc »

Offline larsen64it

  • VIP
  • *****
  • 2697
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1734 il: 08 Dicembre 2020, 15:19 »
sempre con la .25 senza modifica finale
Codice: [Seleziona]
root@OpenWrt:/tmp# cat test_preinit
lsof /dev/watchdog:
cat /proc/1/cmdline
/bin/sh/etc/preinitpgrep init : wc -l
0

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1735 il: 08 Dicembre 2020, 15:47 »
Direi che usare l'output di cmdline su questi vecchi firmware senza procd è ok, rifate il test su un device con procd

Offline FrancYescO

  • VIP
  • *****
  • 3382
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1736 il: 08 Dicembre 2020, 16:02 »
ok da altre prove pare che && ! -d /var/run possa fare al caso nostro, ed è molto più snello come check senza tanti fronzoli
per il preserve pensavamo di fare una cosa del genere /init.d/do_migrate_overlay preserve_files da ficcare nel rootdevice (che tanto lo richiamiamo ad ogni avvio)

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1737 il: 08 Dicembre 2020, 16:14 »
Ma il preserve io lo vedo già chiamato ad ogni riavvio

Offline FrancYescO

  • VIP
  • *****
  • 3382
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1738 il: 08 Dicembre 2020, 16:23 »
in effetti si, avevo dimenticato che l'enable lo fa sempre dopo il mount, allora c'è qualche altra cosa che impedisce questa copia...

il cmp puzza. https://github.com/Ansuel/tch-nginx-gui/blob/master/decompressed/base/etc/init.d/do_migrate_overlay#L120
o forse no, fatto sta che anche sul mio 4130 mi son trovato il do_migrate disattivo al boot... possibile il problema sia che facciamo l'enable prima del pivot?
« Ultima modifica: 08 Dicembre 2020, 16:49 da FrancYescO »

Offline LuKePicci

  • Global Moderator
  • VIP
  • *****
  • 2789
Re:[MOD] Technicolor Custom GUI di Ansuel
« Risposta #1739 il: 08 Dicembre 2020, 17:02 »
Se monta modoverlay, fa l'enable di do_migrate_overlay, poi migra, e poi al reboot non rimonta modoverlay è normale che tu non lo veda abilitato.