Mein Telefon unterstützt keine austauschbare SD-Karte.
Wenn ich die Titanium Backup -App auf meinem gerooteten Oneplus One (CM12) öffne, sehe ich (unten) in der Übersicht einige Spezifikationen, einschließlich System-ROM- Nutzung und Internal+Media , die sagen 58.9GB (10.7 GB free)
.
Im ES File Explorer sehe ich ähnlichen freien Speicherplatz.
In DiskInfo sehe ich unter Data :
Used: 45.8 GB
,Free: 10 GB
,Mount point: /data
,Filesystem: ext4
,Partition name: userdata
,Partition nickname: Data
, unter anderemDiskusage ging weiter und zeigte unter Storage card :
Media: 42966 MiB
Apps: 3001 MiB
Free space: 10262 MiB
Einstellungen -> Speicher sagt, dass der Gesamtspeicherplatz ist 54.92GB
und Verfügbar ist 10.02GB
.
Alle oben genannten Informationen lassen mich zu dem Schluss kommen, dass meine Apps und App-Daten sowie andere persönliche Dateien alle in einer einzigen Partition namens Data at gespeichert sind /data
.
Aber mount
sagt das:
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,nodiratime,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,noatime,nodiratime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
Ich habe diesen emulated
Begriff auch unter gesehen /storage
und er scheint verwandt zu sein.
Frage : Ich habe alle genannten Informationen erwähnt, weil ich nicht verstehe, /data
warum Recovery meine Medien (persönlichen Dateien) nicht standardmäßig löscht, wenn ich sie nicht standardmäßig lösche, es sei denn, ich entscheide mich ausdrücklich dafür /data/media
. Im Falle eines Fastboots kann ich alle Apps und Medien mit löschen fastboot erase userdata
, aber warum behandelt Recovery und Android es unterschiedlich?
Mehr noch, wie löscht Recovery es dann überhaupt?
Auch, was /dev/fuse
in mount
der Ausgabe war und wenn sie alle eine einzelne Partition sind, warum kann ich dann nicht über das hinausgehen, was als Home-Verzeichnis oder interne SD-Karte oder angezeigt wird 0
.
Nun, dieses SD-Karten-Ding ist für das OPO ziemlich schwierig. Für mich scheint es, als hätte das Gerät überhaupt keine SD-Karte (nicht einmal eine interne). Was bedeuten würde, dass der freie Speicherplatz, den Sie sehen, tatsächlich eine emulierte interne SD-Karte ist, die aus dem Flash-Speicher Ihres Geräts stammt.
Zur Emulation einer SD-Karte wird ein FUSE-Daemon verwendet, bei dem auch Ihr /dev/fuse-Gerät ins Spiel kommt. Dies ist wahrscheinlich die Rohdarstellung Ihres Flash-Speichers, der über Ihren Kernel zugänglich gemacht wurde. Die wird dann nach /mnt/shell/emulated gemountet.
Zusätzliche Informationen zu FUSE: http://en.wikipedia.org/wiki/Filesystem_in_Userspace#Virtual_file_system .
Um meine Annahmen über den emulierten internen Speicher zu untermauern, siehe die Speicherkonfigurationsdatei für das OPO: https://github.com/evolve-bacon/android_device_oneplus_bacon/blob/lollipop-5.1/overlay/frameworks/base/core/res/res/ xml/storage_list.xml
Nun zu Ihrer Frage, warum Ihr /data/media-Verzeichnis beim Zurücksetzen auf die Werkseinstellungen nicht gelöscht wird:
Dies ist nur eine nette Funktion, wenn keine physische externe SD-Karte (oder sogar interne) vorhanden ist. Damit Sie Ihre wichtigen Benutzerdaten wie Downloads von Bildern etc. nicht mit einem Datenlöschen verlieren.
Cyanogenmod hat hier eine externe SD-Karte auf Ihrer emulierten internen SD-Karte deklariert, die sich in /data/media befindet.
Zum vollständigen Verständnis siehe: https://github.com/TheOldUnas/Bacon-Lollipop-Boot/blob/master/boot/ramdisk/init.bacon.rc
Insbesondere die Deklaration von: export EXTERNAL_STORAGE /storage/emulated/legacy
und der FUSE-Daemon für /data/media:service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated
Vergleichen Sie zum endgültigen Verständnis auf Ihrem Gerät die Ausgabe zwischen ls -l /data/media/0
und ls -l /storage/emulated/legacy
und finally ls -l /sdcard
. Es ist egal, ob es sich um Ihre aus der Emulation stammende, emulierte externe SD-Karte handelt :D
Für Ihren Vergleich zwischen Fastboot-Löschung und Datenlöschung durch Android / Wiederherstellung. Fastboot ist Teil des Bootloaders und weiß nichts von diesem ganzen Emulations-Chaos, sodass Daten vollständig gelöscht werden.
Antwort auf Ihre Frage "Mehr noch, wie löscht Recovery es dann überhaupt?" /data/media ist nur ein Link. Das Löschen von /data dient dazu, wenn Sie ein neues ROM usw. installieren, und wenn Sie auch /data/media löschen würden, gibt es möglicherweise Rom-Installations-Zip-s, also liegt es entweder am Link oder an der Sicherheit
Benutzer109933
userdata
und vielleicht löscht Fastboot Erase deshalb alle diese Daten. Ist es nicht?geteilt durch Null
geteilt durch Null
Benutzer109933
geteilt durch Null
geteilt durch Null