Estoy creando un USB en vivo y no entiendo con precisión: ¿qué sucede cuando copio un archivo (o incluso un sistema de archivos) directamente a un nodo del dispositivo (a diferencia de un sistema de archivos)?
Estoy creando un USB en vivo y no entiendo con precisión: ¿qué sucede cuando copio un archivo (o incluso un sistema de archivos) directamente a un nodo del dispositivo (a diferencia de un sistema de archivos)?
Respuestas:
El shell abrirá el dispositivo /dev/sdX
. Toda la salida del cat
comando, que termina siendo el contenido de debian.iso
, se escribe directamente en ese dispositivo.
El resultado final es que debian.iso
se escribe byte por byte al comienzo del disco subyacente /dev/sdX
.
En efecto, el nodo del dispositivo hace que parezca que los contenidos de bajo nivel de su medio de almacenamiento se comportan como un solo archivo. Estás escribiendo en este "archivo" y, por lo tanto, escribiendo en el medio de almacenamiento. Esta filosofía se conoce como "todo es un archivo" y se considera una de las características definitorias de un sistema Unix.
dd
le da más control sobre los tamaños de bloque, el valor predeterminado depende de la implementación (por ejemplo, 1 o 512 bytes). Con dd
usted puede elegir un mejor tamaño para su dispositivo de bloque, como 4096 bytes.
dd
influye en el rendimiento, pero no en qué datos se leen y escriben. No hay relación entre el dd
tamaño del bloque y el tamaño del bloque del CD o el tamaño del bloque del sistema de archivos. Unos pocos megabytes generalmente le brindarán el mejor rendimiento, aunque cat
pueden ser más rápidos que dd
.
dd if=debian.iso of=/dev/sdX
?