Démarrez dans votre système de récupération personnalisé, montez le datos soit par la ligne de commande, soit par l'interface graphique, et choisissez l'une des méthodes suivantes :
( <strong>Note </strong>que TWRP a déjà l'option d'effacer /data sans toucher /data/media. Il utilise les commandes rm -rf <sup><sup>1 </sup></sup>.)
Go Immune
-
Faire /data/media
immuable 2 c'est-à-dire à l'abri de toute modification. Vous pouvez le faire en exécutant :
adb shell chattr +i /data/media
Vous pouvez également utiliser -R
pour l'immunité récursive, bien que cela n'ait pas été nécessaire dans mon cas de test.
Vous pouvez voir l'attribut immunitaire ( i
) dans la sortie de
adb shell lsattr /data/
-
Il est temps de devenir fou furieux
adb shell rm -rf /data/*
Tous les fichiers et leurs répertoires de stockage dans /data/
doivent maintenant être purgés, sauf ceux qui sont à l'intérieur médias pour lequel vous obtiendriez l'erreur (non critique) Permission denied
pour chaque fichier dans ce répertoire.
-
Révoquez maintenant l'immunité en utilisant
adb shell chattr -i /data/media
Utilice -R
si vous l'avez utilisé précédemment.
If-Else
Choisissez manuellement chaque répertoire sous /data
et utiliser rm -rf
sur elle. Cela pourrait être fastidieux, donc vous pouvez envisager Le shell-fu d'Izzy
adb shell for dir in /data/*; do if [[ "$dir" = "/data/media" ]]; then continue; else rm -rf "$dir"; fi; done;
Remplacer rm -rf
con echo
pour un essai à blanc.
La commande récupère chaque chemin de fichier 3 sous /data
puis vérifie si le chemin d'accès au fichier est pour médias dossier : si oui, alors passer ; sinon détruire le dossier.
1 : <a href="https://twrp.me/faq/datamedia.html" rel="nofollow noreferrer" title="When you choose a factory reset, instead of formatting, we use rm -rf commands to remove all the folders except for the media folder so that we can remove all of your apps and settings while leaving your “sdcard” intact.">TWRP FAQ : Qu'est-ce qu'un périphérique de données/média ?</a><br>2 : <a href="https://en.wikipedia.org/wiki/Chattr" rel="nofollow noreferrer" title="chattr is the command in the Linux operating system that allows a user to set certain attributes of a file residing on a Linux file system.">Wikipedia : chattr</a><br>3 : <a href="http://www.tldp.org/LDP/intro-linux/html/sect_03_01.html" rel="nofollow noreferrer" title="Directories: files that are lists of other files.">Aperçu général du système de fichiers de Linux : Types de fichiers</a>