Guida al ripristino della partizione /data corrotta
La guida è presa da xda e non testata da me, quindi non mi assumo nessuna responsabilità se succede qualcosa (anche se si tratta solo di andare a montare una partizione da ADB quindi nulla di preoccupante).
È stata scritta per chi non è in grado di montare la partizione /data o /sdcard da recovery dopo un flash andato male e quindi senza possibilità di flashare nuovamente la rom o ripristinare un nandroid. A volte un wipe /cache basta a risolvere il problema, ma se questo non è il vostro caso provate a seguire la guida
Gli errori che possono comparire in recovery sono: "E: Unable to mount /data, invalid argument" , "E: Error mounting /data", "E: Error mounting /sdcard".
La guida non funziona per tutti i casi ma prima di piallare tutto e ricorrere alla factory image un tentativo (ci vogliono pochi minuti) prima di perdere tutti i dati glielo darei!
Verrà utilizzata la recovery Philz perché contiene il terminale, anche con alcune TWRP dovrebbe funzionare però non è stato testato.
Prerequisiti:- Philz recovery per LGE Nexus 5 (QUI sotto la voce Philz Touch 6
)
- Avere ABD e Fastboot (Download)
- Driver per utilizzare ADB (presi da SDK o da un tool) (punto A di questa guida ad esempio)
- Driver per Fastboot (presi da SDK o da un tool) (sempre dalla guida sopra ma avendo il telefono in Fastboot mode)
***Nota: si può tranquillamente usare il toolkit di Wug che installa e controlla se tutti i driver sono ok (Toolkit) - Per semplicità installate Fastboot e ADB nella stessa cartella.
- Creare una cartella per poi trasferire i file dal Nexus al pc (se lo desiderate)
Terminologia:- Terminale = Prompt dei comandi (Windows), Bash (Linux), Terminale (MacOSX)
- Fastboot = Applicazione che si interfaccia con il Bootloader (flash/wipe partitions, etc)
- ADB = Android Debug Bridge (Interfaccia per interagire con il file system di Android)
- Binari = File contenenti codice eseguibile (Applicazioni Fastboot e ADB nel nostro caso)
- Bootloader = L'equivalente del Bios. (Accessibile con VOL DWN+PWR)
- Recovery = CWM/TWRP/Philz (Noi useremo la Philz come specificato nei prerequisiti)
Fasi:
1. Installare i driver e tutto quello elencato nei prerequisiti.
a. Usa il Toolkit o l'altra guida per installare correttamente i driver sul tuo SO.
b. Se non hai familiarità con questi processi prima leggi tutto bene e non iniziare a fare tentativi, potresti peggiorare solo le cose.
2. Spegni il telefono e collegalo al PC tramite USB.
3. Riavvia il telefono in modalità Bootloader.
4. Nel terminale naviga fino alla cartella in cui è presente Fastboot. (Se non sapete come muovervi nelle cartelle andate nella cartella in cui è presente Fastboot, SHIFT+Tasto destro mouse e selezionate "Apri finestra di comando qui")
a. Scrivi "fastboot devices" per verificare che il telefono venga rilevato.Se compare “ fastboot” allora puoi procedere con la guida.
Se non compare controlla che i driver siano installati e inizia da capo.
5. Flasha il Philz e avvia in recovery:
a. Estrai il file "recovery.img" dallo zip della Recovery Philz e mettilo nella directory dove si trovano i binari di Fastboot e ADB.
b. Scrivi nel terminale "fastboot flash recovery recovery.img" (senza virgolette). Questo comando installerà una nuova recovery.
c. Quando l'operazione di flash viene completata (di solito pochi secondi), usa i tasti VOL UP/ VOL DWN finchè nel bootloader troverai scritto “Recovery Mode”, una volta
trovata premi il tasto PWR per selezionarla. Il telefono si avvierà adesso nella recovery del Philz.
6. Usa ADB per avviare una shell direttamente dal Philz
a. Assicurati che il telefono venga rilevato scrivendo "adb devices". Se compare “ recovery” allora sei pronto a procedere.
In caso contrario controlla i driver ADB e riprova a lanciare il comando.
b. Scrivi: "adb shell" per avere accesso a tutte le cartelle di Android come root. (controlla che ci sia "~#" davanti ai comandi per essere sicuro di avere i privilegi di root)
7. Tentativo di riparazione della partizione /data. Questa partizione include /sdcard e dalvik. (/sdcard è collegata a /data/media) digitare sul Prompt "~#":
a. "e2fsck /dev/block/platform/msm_sdcc.1/by-name/userdata" (senza virgolette)
b. Dovresti così poter riparare la parizione danneggiata. Premi [Enter] per utilizzare la risposta di default (y) per si. Se non ti è possibile riparare la partizione allora questa guida non può risolvere il tuo problema.
c. Continua premendo [Enter] finché il processo non termina.
d. Procedete fino al passo successivo se fin qui è andato tutto bene.
8. Tentativo di montare manualmente la partizione /data.
a. Monteremo la partizione /data come Read-Only per ora. Scrivi: "mount /dev/block/platform/msm_sdcc.1/by-name/userdata /data"
b. Se viene montata con successo non riceverai nessun messaggio di errore e il prompt aprirà una nuovo stringa. Se ricevi un errore il processo fallisce.
c. Se non ricevi errori puoi navigare nelle partizioni /data e /sdcard. Questo può essere fatto scrivendo: "cd /data" per /data, e "cd /data/media/0" oppure "cd /sdcard" per la /sdcard (/sdcard è un collegamento che porta direttamente a /data/media/0)
9. BACKUP dell'intera cartella /sdcard nel pc!!! (Non necessaria, ma altamente consigliata)
a. Scrivi: "adb pull /data/media " (le non sono da mettere)
b. con si intende la cartella di destinazione creata nei prerequisiti.
c. Attendi che il processo venga completato.
Adesso sei pronto per flashare! Il consiglio è comunque dopo questo tipo di errori di ripartire dalla factory image per sicurezza!
I dati possono essere reinseriti attraverso il comando "adb push".
Per altre info sul ADB: QUI
Un grazie a @xda, @cadbomb, @morrigan91, @Hotto, @guich per le guide! E Androidiani che ci permette di avere un forum come si deve
Link ufficiale XDA: [HOWTO][GUIDE] Repairing corrupted /data partition - xda-developers