Google Nexus: Guida al flash ed al Live Mode (Runs from RAM)
By salvosant86
http://ilbruttobug.wordpress.com/
Licenza e diritti riservati con Creative
Commons (CC BY-NC-ND 3.0). Per
informazioni Info e Contatti
Introduzione
Questa semplice guida serve a capire come poter eseguire il flash di un'immagine, e quindi
installarla nella memoria del dispositivo, oppure avviare l'immagine in modalità live, senza
installarla nel nostro dispositivo.
Per prima cosa bisogna installare alcuni tools, che sono presenti nel pacchetto Android-SDK
scaricabile gratuitamente dal sito internet https://developer.android.com/sdk/index.html.
In particlare bisogna avere i tools:
• “rules” - Esso contiene le regole UDEV per riconoscere il dispositivo (nella sezione
“Configuring USB Access” del seguente sito è descritto come creare e dove va inserito
questo file https://source.android.com/source/initializing.html)
• “adb” - Esso è l'“Android Debug Bridge”, ovvero il tool che consente di comunicare con il
dispositivo (vedere anche https://developer.android.com/tools/help/adb.html)
• “fastboot” - Esso è un protocollo di diagnostica usato principalmente per eseguire tramite
USB il flash di un firmware (ovvero l'installazione di un sistema operativo su un dispositivo
“Embedded” o “Mobile”), ma anche il boot in livemode di immagini di recovery o di sistemi
operativi live.
È consigliabile avere anche il tools “fsutils”, che serve a supportare i filesystem usati da Android
immagazzinati in un unico file “img” oppure “.bin”. Questi file system generalmente sono in
formato “ext4” e si trovano in partizioni separate per aumentare la sicurezza e diminuire la
frammentazione.
Una altro tool che è consigliato installare è “abootimg”, uno strumento che ha la funzione di
leggere, scrivere e aggiornare le immagini di avvio di Android ed è presente nei repositori ufficiali
di Ubuntu.
Invece gli altri tool citati sopra sono presenti nel repository Ubuntu Phablet Team, quindi, una volta
aggiunto questo repository nella propria sources.list, possono essere installati con il seguente
comando:
$ sudo apt-get install android-rules android-tools-adb android-tools-fastboot android-tools-fsutils
abootimg
Sblocco del bootloader
I dispositivi Google Nexus per ragioni di sicurezza hanno il bootloader bloccato per evitare appunto
di eseguire il flash o il boot in live mode, operazioni delicate che invalidano la garanzia e possono
causare il “brick” del dispositivo rendendolo inutilizzabile.
In alcuni modelli è possibile eseguire l'“unbrick” senza particolari strumenti, come nel caso del
Samsung Galaxy NEXUS GT-I9250, equipaggiato con un “Texas Instrument OMAP 4460
Dual-Core @ 1,2 Ghz”. La particolarità di questo processore e che supporta l'“USB-ON-THE-GO
(USB-OTG)”, quindi in caso di brick, basta rimuovere la batteria avviare da windows “OMAPflash
Tools” o da linux “omap4boot” (entrambi i tools sono facilmente reperibili su internet insieme alle
guide che ne spieghino il funzionamento). Ora basta collegare il dispositivo e installare un
bootloader nuovo e successivamente lanciare lo script “flash-all.bat” su Windows o “flash-all.sh”
su Linux e si riavrà il dispositivo funzionante. I due script si trovano nel file compresso contenente
l'immagine originale del sistema operativo Android di Google (Factory Image), scaricabile per
ciascun dispositivo Google NEXUS dal sito ufficiale:
“https://developers.google.com/android/nexus/images”.
Per altri modelli e necessario inviarli in garanzia o acquistare degli strumenti particolari, usati dai
centri assistenza, il cui prezzo varia dalle 100 € alle 500€.
Per sbloccare il bootloader bisogna entrare nel bootloader del dispositivo. Per fare ciò è necessario
premere e tenere premuto a dispositivo spento una combinazione di uno o più tasti e poi il tasto
accensione fino all'avvio del bootloader .
Una volta entrati nel bootloader si deve collegare lo smartphone con il cavo USB e per sbloccare il
bootloader bisogna lanciare il comando:
$ sudo fastboot oem unlock
Una volta sbloccato il bootloader, è possibile sia eseguire il flash di un firmware come ad esempio:
• Un upgrade o un downgrade di Android (Factory Images for Nexus Devices)
• Di un'immagine di un sistema operativo differente (Replicant)
• Di OS ibridi (Ubuntu Touch)
• Di una Mod (CyanogenMod, MIUI)
• Di Recovery non ufficiali (ClockworkMod Recovery, Team Win Recovery Project)
NOTA: Nel caso in cui si abbia modificato il proprio OS Android originale, ad esempio installando
i permessi di ROOT, l'aggiornamento via OTA non può essere eseguito, quindi e necessario
procedere all'upgrade via USB.
NOTA 2: Per poter installare una Mod, è necessario eseguire il flash di una Recovery non ufficiale,
in quanto vengono installate tramite la funzione “update from zip in sdcard” della recovery.
Alcune immagini possono essere eseguite in modalità live come ad esempio le immagini di
recovery non ufficiali, oppure l'immagine live di un sistema operativo, ovviamente che abbia un
kernel per l'architettura del dispositivo, che al momento è solo “ARM”.
Flash o boot in live mode (Runs from RAM)
La fase di flash potrebbe durare qualche minuto ed il cavo USB non deve essere rimosso per alcun
motivo. Inoltre bisogna evitare che il pc si riavvii o si spenga, se no potrebbe verificarsi il brick del
dispositivo.
Se si lancia un'immagine in live mode il cavo può essere staccato ed una volta spento il dispositivo
tutto ritorna come prima (come se si provasse un OS in live CD/DVD su un PC).
I comandi da lanciare sono i seguenti:
•
Per lanciare un'immagine in live mode va usato questo:
“$ sudo fastboot boot file_immagine.img o file_immagine.bin ”
•
Per seguire il flash di un'immagine va lanciato questo comando per ciascuna immagine:
“$ sudo fastboot flash file_immagine.img o file_immagine.bin ”
NOTA 3: È vivamente consigliato usare gli script oppure i tool che escono insieme alle immagini
degli OS, mai fare il flash manualmente di ogni singolo file manualmente. C'è un ordine da seguire
per i file da flashare (il bootloader è il primo che deve essere flashato) e se si inverte l'ordine
potrebbe verificarsi il brick del dispositivo.
Blocco bootloader
Una volta finito, è consigliabile bloccare il bootloader, quindi bisogna spegnere il dispositivo,
riavviarlo nel bootloader e dare il comando:
$ sudo fastboot oem lock
Conclusione
Quello descritto in questa guida è una procedura molto delicata, quindi prima di eseguire ciò che è
descritto. Bisogna porsi due domande: È necessario? Vale la pena rischiare? Se la risposta a tutte e
due è “SI!” allora bisogna documentarsi bene, andare sui vari siti citati, andare sui forum e
approfondire gli argomenti della guida. È necessario settare il PC con tutti gli strumenti necessari
anche ad effettuare l'umbrick (Solo processori con supporto USB- OTG, quali TI OMAP, Samsung
Exynos, Qualcomm Snapdragon S3 e S4 Pro) ed aspettare le condizioni climatiche idonee a non far
andar via la corrente o a causare alzamenti o abbassamenti di tensione.
Declinazione di eventuali responsabilità
Ne io (autore) ne coloro che pubblicheranno e/o ospiteranno questo documento su forum, blog ecc
non siamo responsabili di eventuali danni subiti dai dispositivi.