2012-09-11 35 views
5

La lectura desde/dev/block/mmcblk0 devolvió datos antiguos al leer los datos de/dev/block/mmcblk0p1. Mi pregunta es si Linux mantiene una copia de seguridad si los datos se escriben en/dev/block/mmcblk0? Esto se debe a que pude leer el contenido antiguo de la tarjeta SD leyendo ese nodo.Diferencia entre la lectura de/dev/block/mmcblk0 y/dev/block/mmcblk0p1

+5

¿Está seguro de que está devolviendo "datos antiguos", como en los datos antes de escribir en él? A mí me parece que esos dos dispositivos de bloques son todo el disco y la primera partición. IO en mmcblk0p1 es como leer/escribir en mmcblk0 con un desplazamiento. – cdleonard

+3

cdleonard es correcto. mmcblk0 es el disco completo (comenzando desde el sector de arranque y que contiene la tabla de particiones) y mmcblk0p1 es la primera partición. No hay forma de que mmcblk0 contenga datos "antiguos". – Gnurou

Respuesta

9

El subsistema mmc en el kernel de Linux registra los nodos del dispositivo con el formato mmcblkXpY.

  • Cada dispositivo MMC registrada en el canto del núcleo de Linux que recibe propio número de dispositivo MMC X.
  • Cada partición en un dispositivo en particular lo recibe propio número Y

archivo de E/S normal se puede realizar después del montaje un nodo de dispositivo de puntero a una partición.

También tenga en cuenta que a menos que exista una tabla de particiones válida en el dispositivo /dev/mmcblkX, no habrá nodos posteriores /dev/mmcblkXpY en el sistema.

Cuestiones relacionadas