1 votos

¿Por qué hay una partición de datos de usuario en mi /dev/block/mapper/ (lo cual parece indicar que los datos de usuario son una partición dinámica)?

https://source.android.com/docs/core/ota/dynamic_partitions/implement

Las particiones dinámicas admitidas son:
Sistema
Proveedor
Producto
Extensión de Sistema
ODM
Nota: Evite colocar userdata u otra partición de lectura-escritura permanente dentro de super.

Según la documentación de source.android.com, ¿userdata no se particiona dinámicamente?

versión: Android 10

s:/ $ ls -l /dev/block/mapper/
total 0
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 odm -> /dev/block/dm-3
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 odm-verity -> /dev/block/dm-7
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 product -> /dev/block/dm-1
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 product-verity -> /dev/block/dm-5
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 system -> /dev/block/dm-0
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 system-verity -> /dev/block/dm-4
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 userdata -> /dev/block/dm-8
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 vendor -> /dev/block/dm-2
lrwxrwxrwx 1 root root 15 1970-04-02 04:41 vendor-verity -> /dev/block/dm-6

s:/ $ df -h
Sistema de Archivos  Tamaño  Usado Disp. Uso% Montado en
/dev/block/dm-4  3.8G  3.8G     0 100% /
tmpfs            3.7G  1.1M  3.7G   1% /dev
tmpfs            3.7G     0  3.7G   0% /mnt
tmpfs            3.7G     0  3.7G   0% /apex
/dev/block/dm-5  450M  449M     0 100% /product
/dev/block/dm-6  2.3G  2.3G     0 100% /vendor
/dev/block/dm-7  118M  900K  115M   1% /odm
none             3.7G     0  3.7G   0% /sys/fs/cgroup
/dev/block/sda29 356M  3.3M  341M   1% /cache
/dev/block/sda13 4.9M  160K  4.8M   4% /dev/logfs
/dev/block/sda31 976M  862M   87M  91% /cust
/dev/block/dm-8  226G  100G  126G  45% /data
...

0voto

Suprateek Das Puntos 26

A grosso modo, la partición /dev/block/mapper/userdata es mapeada por la partición /dev/block/by name/userdata a través de un mecanismo de encriptación o desencriptación. Debería encriptar o desencriptar la partición de userdata original usando la clave en la partición de metadatos para obtener una partición como dm-x.
No he mirado muy de cerca los detalles.

Tenga en cuenta que hacemos una excepción para los dispositivos encriptados por metadatos, ya que dm-default-key es ya un envoltorio.

https://cs.android.com/android/platform/superproject/+/master:system/core/fs_mgr/fs_mgr.cpp

static bool create_crypto_blk_dev(const std::string& dm_name, uint64_t nr_sec,
                                  const std::string& target_type, const KeyBuffer& crypt_params,
                                  std::string* crypto_blkdev)
bool fscrypt_mount_metadata_encrypted(const std::string& blk_device, const std::string& mount_point,
                                  bool needs_encrypt) {

https://cs.android.com/android/platform/superproject/+/master:system/vold/MetadataCrypt.cpp

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X