Come fare il root di Android usando Linux.
Il quadro generale
Android consiste di tre parti rilevanti per il rooting
- il bootloader
- sistema di recupero
- sistema principale
di solito solo il sistema principale è in esecuzione, cioè il Kernel Linux, il launcher, l'app del telefono ecc. Se parliamo di rooting, significa che vogliamo aggiungere un'app aggiuntiva al sistema principale che può accedere a parti protette del sistema principale e che agisce anche come guardiano per altre app che vogliono ottenere l'accesso.
Il problema è che abbiamo bisogno di accedere alle parti protette del sistema per farlo, il che significa che non possiamo semplicemente installare quell'app (ad esempio un apk) dall'interno del sistema principale.
Questo significa che dobbiamo scendere di un livello. Qui è dove si trova il sistema di recupero. Di solito non lo si vede, in quanto è attivo solo quando il sistema principale non può funzionare - o perché un aggiornamento di sistema è installato o perché si fa un reset di fabbrica.
Come il sistema di recupero può fare un aggiornamento completo del sistema, significa che ha anche accesso alle parti protette del sistema principale - esattamente ciò di cui abbiamo bisogno. Sfortunatamente il sistema di recupero stock non permette l'installazione di applicazioni, quindi dobbiamo sostituirlo.
Ma prima di questo dobbiamo parlare del bootloader.
Il bootloader è un piccolo pezzo di software che decide se avviare il recupero o il sistema principale (o un altro sistema principale, come Ubuntu Phone). Ma nella configurazione predefinita avvia solo i sistemi che conosce e di cui si fida. In questa configurazione il bootloader è detto bloccato. Anche se impedisce al software maligno di cambiare il telefono e spiarci, impedisce anche di sostituire il sistema di recupero. Questo concetto sta arrivando anche sul PC btw dove si chiama secure-boot.
Ecco una panoramica grafica dei componenti di Android:
Quindi quello che dobbiamo fare per ottenere l'accesso come root è
- sbloccare il bootloader
- sostituire il sistema di recupero
- installare un'app superuser
Nota che sbloccare il bootloader permette anche agli attaccanti di aggirare qualsiasi caratteristica di sicurezza di Android. È possibile accedere direttamente a tutti i file del telefono dal bootloader.
Pertanto Android cancellerà tutti i dati utente quando il bootloader è sbloccato
Preparazioni
Prima di tutto è necessario installare il binario fastboot per essere in grado di eseguire la comunicazione di basso livello con il dispositivo
" apt-get install android-tools-fastboot " (Senza virgolette :p )
In seguito è necessario consentire agli utenti non root di eseguire i comandi su USB, quindi non è necessario eseguire fastboot come root. Per questo crea il file
/etc/udev/rules.d/51-android.rules
con il seguente contenuto
[SUBSYSTEM=="usb", ATTR{idVendor}=="", MODE="0666", GROUP="plugdev"]
Puoi trovare il valore di nella pagina linkata qui.
Infine devi riavviare in modalità fastboot. Di solito c'è una combinazione di tasti da premere all'avvio.
- Combinazioni di tasti per dispositivi Google Nexus
- Combinazioni di tasti per dispositivi Sony Xperia
Ricordatevi questa combinazione di tasti perché ne avrete bisogno altre volte.
I dispositivi Samsung tuttavia, come il Galaxy S3, non supportano la modalità fastboot - hanno invece una modalità download, che utilizza un protocollo proprietario Samsung. Per flasharli dovete usare lo strumento Heimdall.
Sbloccare il Bootloader
per i dispositivi google, come un Nexus 4 o Nexus 7 è solo
fastboot oem unlock
se avete un dispositivo Sony Xperia, come un Xperia Z, dovete inoltre richiedere una chiave di sblocco e poi fare
fastboot oem unlock 0x
dove è la chiave che avete ottenuto.
Sostituire il sistema di recupero
Ci sono due importanti sistemi di recupero alternativi con la possibilità di installare applicazioni
- Team Win Recovery Project
- Clock Work Mod
Clock Work Mod (CWM) è probabilmente il più conosciuto quindi useremo quello. Dal sito web linkato sopra scaricate l'immagine di recupero che si adatta al vostro telefono.
Qui avete la scelta tra il recupero ordinario che utilizza i pulsanti del volume del dispositivo per la navigazione e il recupero touch che supporta il touch screen.
fastboot flash recovery .img
dove è il nome del file che avete scaricato. Per esempio per un Nexus 5 e CWM 6.0.4.5 sarebbe
fastboot flash recovery recovery-clockwork-6.0.4.5-hammerhead.img
Installazione dell'app Superuser
Ancora una volta abbiamo diverse scelte qui
- SuperSU
- Superuser by ChainsDD
- Superuser by CWM
anche se SuperSU è la più importante, raccomanderei di prendere Superuser by CWM, in quanto è open source e anche senza problemi, dato che non esiste una versione "pro".
Per installare abbiamo bisogno di ottenere questo archivio zip e copiarlo sul dispositivo. Per installarlo, dobbiamo riavviare in modalità fastboot e poi selezionare "Recovery Mode" per arrivare al sistema di recupero. Una volta in modalità di recupero selezionate
installa zip -> scegliete zip da /sdcard
poi sfogliate e selezionate il "superuser.zip" che avete appena copiato.
Una volta installato selezionate
Go Back -> reboot system now
Una volta che il sistema è partito dovreste avere una App "Superuser" sul vostro dispositivo. Congratulazioni, hai finito.
Opzionale: flash stock recovery
Poiché la recovery è responsabile dell'installazione degli aggiornamenti di sistema, è una buona idea tornare alla versione stock dopo aver installato il root, così il sistema può auto-aggiornarsi di nuovo. Tuttavia un aggiornamento del sistema rimuoverà anche la vostra app superuser, quindi dovrete ripetere nuovamente la procedura di cui sopra.
Se avete un dispositivo Google Nexus, potete prendere le immagini di fabbrica qui. Lì troverete un'immagine del recupero stock e ripristinarlo da
fastboot flash recovery recovery.img
Quello per voi micromax considerando che non è un puro Android (Download : recovery.img )
Spero che questo funziona per voi 😀 😛
Ma io'd suggerisce che si installa una build ROM personalizzata da o da forking un cyanogen per le specifiche del dispositivo, sarebbe aiutare la comunità OpenSource troppo 🙂