Uno dei problemi dei dispositivi mobili può essere la limitazione di memoria.. anche avendo diversi giga, come nel mio caso: 32GB. Ovviamente non voglio dire che 32GB di memoria interna sono pochi, anzi, ma che questa spesso può essere suddivisa in modo tale da porre appunto dei limiti. Il mio terminale, Xiaomi Mi2, è (o meglio, era) partizionato in modo tale che in 4GB di spazio dovessero andarci sia il sistema che le applicazioni, e 25GB per file multimediali, eccetera. Per chi installa poche applicazioni, diciamo che 4GB sono anche troppi, ma chi ha decine e decine di applicazioni e magari giochi, che possono occupare tanto spazio (fino a qualche GB), è costretto sempre a cancellare le vecchie app per dare spazio alle nuove. Una soluzione abbastanza scomoda. Ma a questa esiste un’ottima alternativa, per la quale è necessario prestare molta attenzione, altrimenti potreste non accedere più al vostro caro dispositivo!

Come da titolo, infatti, oggi voglio spiegarvi nel minimo dettaglio come fare a partizionare questo terminale, grazie a una guida trovata sul forum xiaomi.eu e che linko, come al solito, a fine articolo. Io ho già effettuato questa operazione, e ho portato la partizione del sistema da 4 a 7GB, e ho ridotto quella per i file da 25 a 22GB. Ovviamente potrete ripartizionare a vostro piacimento.

 

Requisiti

La guida è basata su Windows, ma potete effettuarla anche da Linux se avete dimestichezza con ADB e il terminale

  • molta attenzione
  • comprendere bene la guida
  • molta pazienza
  • ADB (metto in considerazione che sia già installato sul vostro PC, altrimenti potete trovarlo con l’SDK Android o anche versioni Lite in giro per la rete)
  • una conoscenza minima di ADB
  • driver ADB recovery | Download (questi saranno necessari per riconoscere il dispositivo mentre è in recovery)
  • ClockworkMod installata Guida installazione
  • Backup del sistema (o di entrambi in caso di TDB) | Guida Nandroid backup
  • TrueDualBoot disattivato
  • Partition tools | Download (con registrazione al forum – primo post, secondo allegato)
  • Responsabilità!! La guida è spiegata nel minimo dettaglio, ma un qualsiasi errore potrebbe danneggiare permanentemente il vostro terminale. Non mi assumo nessuna responsabilità.

 

Preparazione

Scaricate Partition Tools, quindi estraete il contenuto e copiatelo sul vostro telefono e tramite un buon file manager spostatelo in /system/bin grazie ai permessi di root, i quali sono necessari per poter proseguire con questa guida. Adesso effettuate un bel Nandoid backup, quindi spostatelo sul PC altrimenti lo perderete. Copiate anche tutti i vostri file multimediali e tutto ciò che non volete perdere sul PC. A questo punto disabilitate TDB nel caso sia abilitato, altrimenti potreste riscontrare un errore. Installate i driver per riconoscere il dispositivo in recovery, linkati sopra.

 

Preparare il dispositivo e ADB

  • Assicuratevi di aver fatto quanto scritto sopra, quindi accedete alla recovery e tramite il menu mount and storage montate /system e smontante /cache, rispettivamente con le opzioni mount /systemunmount /cache
  • Collegate il dispositivo in recovery al PC, quindi (se è la prima volta) attendete l’installazione dei driver.
    NOTA: in gestione dispositivi, il nome del dispositivo potrebbe essere Galaxy Nexus piuttosto che Xiaomi Mi2, ma potete procedere lo stesso
  • Avviate il prompt dei comandi di Windows e spostatevi dove avete installato ADB. Esempio: la cartella di ADB, sul mio PC si trova in C:\adb, quindi per posizionarmi in questa cartella, eseguo il comando
    cd C:\adb
  • Per iniziare a usare ADB, digitiamo ora
    adb -d shell
  • Testiamo che sia tutto ok per procedere, quindi digitiamo
    id

    per verificare che il root sia attivo, e

    mount

    per  verificare che /system sia montato e /cache smontato. Ciò che vedrete dovrebbe essere circa uguale alla seguente immagine
    partizionare-xiaomi-mi2-adb-mountNOTA: la penultima stringa, “/dev/userdata_moved on /data_root type ext4 >rw,nodev,noatime,nodiratime>” non deve essere presente! Questa infatti viene visualizzata solo nel caso in cui il TDB sia ancora abilitato, e come ho detto dovete disabilitarlo per poter procedere.

 

Procedimento

Se tutto è come nei punti precedenti, possiamo proseguire con la vera e propria procedura per partizionare il nostro terminale.

  • Prima di tutto, stampiamo a schermo una tabella con le informazioni riguardanti tutte le partizioni presenti. Digitiamo quindi
    parted /dev/block/mmcblk0
    unit MB
    print

    dove il primo comando accederà alle partizioni, il secondo setterà come unità di misura i megabyte e il terzo stamperà la tabella con le informazioni preziose per poter proseguire.

  • La tabella ottenuta sarà simile a questa
    partizionare-xiaomi-mi2-adb-tabellae le partizioni che ci interessano sono la numero 2627. Inoltre in alto vediamo le etichette che ci indicano con precisione in quale punto iniziano e in quale punto finiscono, la dimensione, il tipo di file system e il nome. Salviamo quindi la tabella ottenuta con uno screen (consigliato) o copiando tutto il testo e facciamo particolare attenzione all’inizio della 26 e alla fine della 27. L’inizio della 26 è uguale per tutti, la fine della 27 varia a seconda della memoria del dispositivo. Quindi termina a 31269 nei 32GB e a 15578 nei 16GB.
  • Rimuoviamo le 2 partizioni
    rm 26
    rm 27
  • Ricreiamo adesso le partizioni con le dimensioni che ci interessano. Quindi facciamo in modo che questa (che sarà la 26) inizi nello stesso identico punto in cui iniziava la 26, e scegliamo il punto in cui deve terminare a seconda della nuova dimensione. Esempio: se volessimo aumentare la partizione di 2GB, dobbiamo aggiungere 2000 al numero che identificava la fine nella tabella (5570), il quale diventerebbe 7570.
    mkpartfs primary ext2 1812 7570

    allo stesso modo facciamo per l’altra partizione (la sostituta della 27), dove adesso l’inizio sarà determinato dalla fine della partizione appena creata (7570 se dovessimo seguire l’esempio), mentre la fine dovrà essere identica a quella ottenuta nella tabella (31269 nel mio caso)

    mkpartfs primary ext2 7570 31269
  • Adesso dobbiamo ridare lo stesso nome, ovvero userdata e storage rispettivamente per la 26 e la 27, e poi uscire da “parted”, quindi
    name 26 userdata
    name 27 storage
    quit
  • Le partizioni create, hanno un file system ext2, quindi dobbiamo convertirle in ext4
    tune2fs -j /dev/block/mmcblk0p26
    e2fsck -fDp /dev/block/mmcblk0p26
    tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p26
    e2fsck -fDp /dev/block/mmcblk0p26

    e

    tune2fs -j /dev/block/mmcblk0p27
    e2fsck -fDp /dev/block/mmcblk0p27
    tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p27
    e2fsck -fDp /dev/block/mmcblk0p27
  • Controlliamo se effettivamente le modifiche sono state apportate, quindi stampiamo nuovamente la tabella
    parted /dev/block/mmcblk0
    unit MB
    print

    e tutto dovrebbe essere come la precedente, a parte le ultime 2 partizioni, le quali dovranno avere fine diversa per la 26, inizio diverso per la 27 (ma ovviamente identico alla fine della 26) e le dimensioni desiderate. E’ importante che queste siano ext4, quindi facciamo attenzione a questo, poiché a me è venuta fuori una ext3 sulla 27, ma ho risolto rieseguendo i comandi appropriati.
    Ecco la tabella che ho ottenuto dopo aver ripartizionato il mio Xiaomi
    partizionare-xiaomi-mi2-adb-tabella-finaleCome potete notare, ho aumentato la partizione dati fino a 7GB. Questo dipende dall’uso che fate del terminale, nella guida originale infatti i 3GB erano anche tanti e sono stati ridotti, quindi sta a voi decidere come gestire lo spazio a disposizione.

  • Per terminare la sessione di adb digitiamo
    quit
    exit
  • Quindi dal menu advanced della CWM cancelliamo la dalvik cache e riavviamo il telefono. Si avvierà la nostra ROM come se fosse la prima volta che accendiamo il telefono, quindi ci metterà più tempo del solito
  • All’avvio colleghiamo il telefono al PC, spostiamo il backup effettuato in precedenza nella cartella corretta (clockworkmod) e ripristiniamolo dalla recovery. Riavviamo ancora e il nostro telefono sarà esattamente come prima ma con più spazio a disposizione nella partizione che ci interessa 😉

 

 Risultato finale!xiaomi-mi2-partizionato-memoria

Vi ricordo di leggere attentamente e di procedere solo se siete sicuri di quello che state facendo. Spero sia abbastanza chiara, per ogni eventuale dubbio non esitate a chiedere, servendovi dei commenti.

UPDATE
Problema: La memoria SD non viene montata o non è possibile scriverci.
Soluzione: flashare una qualsiasi versione della MIUI.
Come?:, dalla recovery montare /storage/sdcard0; tramite adb eseguire il comando adb push update.zip /storage/sdcard0/ dove update.zip è il nome della ROM. Effettuare la normale procedura: wipe data, cache; installa zip, from SDcard e selezionare il pacchetto

UPDATE 2
Problema: La memoria SD non viene montata o non è possibile scriverci.
Soluzione: da ADB digitare i seguenti comandi

su
chown media_rw:media_rw /mnt/media_rw/sdcard0
chmod 755 /mnt/media_rw/sdcard0

Grazie a Matteo

Fonte