• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
il da usb con boot problema

RISOLTO - Problema con il boot da USB
#1
Salve a tutti,
sono un nuovo utente del forum e possiedo una RPI4 già da un po' che uso per un po' di tutto: rete wifi, nextcloud, pi-hole, torrent, etc..

Ieri ho spento la RPI normalmente via VNC e quando l'ho riaccesa poco dopo non è più partita. Premetto che la RPI faceva il boot da SD ma poi Raspbian era (ed è ancora) installato in un disco SSD. Al tempo in cui avevo  switchato l'OS da SD a SSD non era ancora possibile eseguire direttamente il boot da USB ma bisognava bootare da SD e poi avviare l'OS da SSD.

Probabile origine del mancato avvio la scheda SD corrotta che non avvia l'SSD (non riesco a montare la scheda SD neanche su un altro pc).
Allora ho provato ad aggiornare l'EEPROM tramite rpi-imager selezionando l'opzione di boot da USB e mi ha flashato la versione del 29/04/2021.
Ovviamente il boot da USB non ha funzionato in quanto (presumo) la partizione di /boot del disco SSD non era stata aggiornata (l'errore era "start4.elf is no compatible usb-msd boot requires newer software").
Allora ho provato a installare Raspbian su una nuova scheda SD ed ho copiato i file dalla partizione di /boot della nuova Raspbian alla partizione di /boot del disco SSD (pensando di "allineare" il /boot del disco alla nuova versione così che fosse avviabile dall'EEPROM, anche lei aggiornata).

Al momento la situazione è che sembra avviarsi qualcosa ma ho un sacco di servizi che falliscono ad avviarsi e l'OS viene caricato in "maintenance" mode, una shell linux molto limitata nei comandi.

Avete qualche idea su come risolvere?

Non vorrei dover reinstallare tutto da zero, ho quasi un paio d'anni di lavoro e configurazioni salvate nell'OS che sta sul disco SSD e l'OS c'è, dovrebbe essere "solo" da avviare ma non so come farlo esattamente...per un po' sono andato ad intuito ma ora sono fermo...

Consigli?

Grazie mille in anticipo.
Risposta
#2
Installando Il SO su una nuova SD, viene "scritto" un nuovo UUID o PARTUID che identifica il dispositivo di memorizzazione.
E' probabile, quindi, che avendo copiato i files dalla nuova SD al disco SSD si sia creato un disallineamento nell'identificazione delle partizioni.
Per quanto riguarda il recupero dei dati sul disco SSD, puoi utilizzare la nuova SD per avviare il SO, montare l'SSD come se fosse un normale disco esterno USB e copiare i files di interesse sulla SD o su un altro dispositivo esterno. Questo verificherà ovviamente l'integrità del fs sull'SSD.
Utilizzando il Pi4 (con la nuova SD) potrai verificare il contenuto dei files "cmdline.txt" e "fstab" ed eventualmente modificane il contenuto (parametro "root=PARTUUID=XXXXXXXX-02 e PARTUUID=XXXXXXXX-02" rispettivamente per cmdline.txt e fstab).
Per identificare i dischi puoi utilizzare il comando "blkid" nel terminale.
Risposta
#3
(01/11/2021, 07:32)ippogrifo Ha scritto: Installando Il SO su una nuova SD, viene "scritto" un nuovo UUID o PARTUID che identifica il dispositivo di memorizzazione.
E' probabile, quindi, che avendo copiato i files dalla nuova SD al disco SSD si sia creato un disallineamento nell'identificazione delle partizioni.
Per quanto riguarda il recupero dei dati sul disco SSD, puoi utilizzare la nuova SD per avviare il SO, montare l'SSD come se fosse un normale disco esterno USB e copiare i files di interesse sulla SD o su un altro dispositivo esterno. Questo verificherà ovviamente l'integrità del fs sull'SSD.
Utilizzando il Pi4 (con la nuova SD) potrai verificare il contenuto dei files "cmdline.txt" e "fstab" ed eventualmente modificane il contenuto (parametro "root=PARTUUID=XXXXXXXX-02 e PARTUUID=XXXXXXXX-02" rispettivamente per cmdline.txt e fstab).
Per identificare i dischi puoi utilizzare il comando "blkid" nel terminale.

Grazie per la preziosa risposta.
Direi che ci sono quasi, l'OS si avvia anche se con molti servizi in errore.

In realtà ieri mi ero scordato di specificare che avevo già modificato l'UUID nel file "cmdline.txt" (contenuto nella partizione /boot del disco SSD) inserendo l'UUID del rootfs.
Mi mancava di aggiornare il file "/etc/fstab" (sempre del disco SSD) inserendo l'UUID della partizione di /boot del disco SSD (era rimasto l'UUID della partizione /boot della scheda SD).

Quest'ultima modifica mi permette di avviare Raspbian in modalità grafica anche se rimangono in errore molti servizi.

Al boot compare il seguente errore:

"mmc1: Controller never released inhibit bit(s)"
Poi inizia l'elenco dei servizi che si avviano alcuni dei quali sono in stato failed.
Compare anche uno splash screen con il logo Raspian e la scritta "Raspbian Desktop" che non avevo mai notato prima (ma probabilmente perché ho quasi sempre avviato senza display utilizzando VNC/ssh per la gestione).

Vi allego una foto con:
- i servizi in errore
- l'output del comando blkid
- il contenuto del file /boot/cmdline.txt
- il contenuto del file /etc/fstab

Questi ultimi due file mi paiono coerenti con l'output di blkid, che (spero ultimo) passaggio mi manca?

Grazie infinite per il prezioso aiuto....ci sono quasi!!!


Allegati Anteprime
   
Risposta
#4
In fstab vi è un dispositivo non listato da blkid, montato (o che verrà montato) nella directory /mnt/io_120.
Gli errori sembrerebbero dovuti ad una corruzzione del fs sull' SSD.
Per riprova fai partire il boot da SD e la root ( / ) da SSD. Se si ripresentano gli errori puoi provare a riparare il fs dell' SSD con il comando fsck: https://linuxize.com/post/fsck-command-in-linux/.
Risposta
#5
(01/11/2021, 14:35)ippogrifo Ha scritto: In fstab vi è un dispositivo non listato da blkid, montato (o che verrà montato) nella directory /mnt/io_120.
Gli errori sembrerebbero dovuti ad una corruzzione del fs sull' SSD.
Per riprova fai partire il boot da SD e la root ( / ) da SSD. Se si ripresentano gli errori puoi provare a riparare il fs dell' SSD con il comando fsck: https://linuxize.com/post/fsck-command-in-linux/.

Come faccio a fare il boot da SD con la root su SSD se l'EEPROM è configurata per fare il boot da USB?
Se ho sia SD inserita che SSD collegato il boot avviene via USB....

(01/11/2021, 14:52)apassu Ha scritto:
(01/11/2021, 14:35)ippogrifo Ha scritto: In fstab vi è un dispositivo non listato da blkid, montato (o che verrà montato) nella directory /mnt/io_120.
Gli errori sembrerebbero dovuti ad una corruzzione del fs sull' SSD.
Per riprova fai partire il boot da SD e la root ( / ) da SSD. Se si ripresentano gli errori puoi provare a riparare il fs dell' SSD con il comando fsck: https://linuxize.com/post/fsck-command-in-linux/.

Come faccio a fare il boot da SD con la root su SSD se l'EEPROM è configurata per fare il boot da USB?
Se ho sia SD inserita che SSD collegato il boot avviene via USB....

Ok, mi rispondo da solo.
raspi-config -> advanced options -> boot order -> B1

Ora ho boot da SD e root su SSD ed ho gli stessi problemi di quando ho sia boot che rootfs su SSD.
fsck su SSD non mi torna nulla di anomalo, il file system sembra pulito....
Risposta
#6
Ora ho reimpostato sia boot che rootfs su disco SSD.
E' scomparso l'errore "mmc1: Controller never released inhibit bit(s)" però permangono i servizi in stato failed.

Il servizio systemd-modules-load non riesce a caricare il modulo i2c-dev, presente nel file /etc/modules, cosa può essere?

Anche nel rootfs su SD è presente questo modulo in /etc/modules ma quando avvio da SD non da problemi....
Risposta
#7
Allora probabile ci sia un disallineamento sul kernel e non riesce a caricare alcuni moduli e servizi a causa della differenza di versioni....

Da SD viene avviato il kernel 5.10.17-v7l (è ancora un'installazione pulita e non ho fatto nessun upgrade) e la dir /lib/modules contiene le sottodirectory 5.10.17*

Da SSD viene avviato lo stesso kernel 5.10.17-v7l ma se provo a caricare il modulo i2c-dev a mano con modprobe ricevo l'errore:

...could not open moddep file 'lib/modules/5.10.17-v7l+/modules.dep.bin"

In effetti la directory /lib/modules contiene le seguenti sottodirectory

5.10.63+
5.10.63-v7+
5.10.63-v7l+
5.10.63-v8+

e quindi ovviamente cerca di caricare moduli che non esistono....

Come posso risolvere secondo voi? Se avvio di nuovo da SD e faccio un upgrade completo mi ritrovo con un kernel 5.10.63? questo risolverebbe il disallineamento?
Risposta
#8
Provare con un full- upgrade da SSD potrebbe aggiornare il SO e qundi anche il kernel.
Risposta
#9
(02/11/2021, 17:23)ippogrifo Ha scritto: Provare con un full- upgrade da SSD potrebbe aggiornare il SO e qundi anche il kernel.

Ti ringrazio per la risposta.
Tutto si è sistemato con un full-upgrade della scheda SD e poi copiando i dati dalla partizione /boot della SD sulla partizione /boot del disco SSD.
Risposta
  


Vai al forum:


Navigazione: 5 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect