Al montar, ¿cuándo debo usar un dispositivo de bucle?

18

De acuerdo con la siguiente pregunta:
¿Qué es un "dispositivo de bucle" cuando se monta?
Un dispositivo de bucle es un archivo que actúa como un dispositivo basado en bloques. Si bien puedo entender eso conceptualmente, ¿en qué se diferencia esto de montar cualquier otro archivo? Por ejemplo, si tomo una imagen dd de un sistema de archivos ext2 y luego la monto, no tengo que usar la opción de bucle - mount -t ext2 file.dd /mnt/mount-pointtiene éxito.

¿Cuándo debo usar la opción de bucle y qué diferencia hay entre montar usando la opción de bucle y montar sin ella?

Suchipi
fuente

Respuestas:

8

Si no tiene que usar la opción de bucle para montar un archivo normal, es porque mountestá detectando esto y activándolo automáticamente. Solía ​​tener que especificarlo manualmente.

psusi
fuente
Todavía lo hago Nunca me di cuenta de que mount puede hacer eso implícitamente.
Bananguin
@ user1129682 Me pregunto si diferentes versiones del kernel o diferentes distribuciones tienen o no tienen esta característica.
Suchipi
22

Técnicamente, un dispositivo de bucle es un dispositivo de bloque que escribe en un archivo, en lugar de una pieza de hardware. Por lo tanto, siempre usa / necesita usar el dispositivo de retorno de bucle al montar un archivo.

Demasiado para una respuesta directa. Quizás esto sirva como explicación:

El kernel implementa varias capas de abstracción para que pueda tratar diferentes hardware de la misma manera. Imagínese si tuviera que reconstruir el controlador ext2 para cada marca de controlador que existe. Nadie quiere eso, pero queremos tratar cada disco duro de la misma manera. Por eso creamos capas de abstracción.

El dispositivo de bloque es una abstracción. El dispositivo de bloque tiene ciertos atributos y expone ciertas funciones que pueden ser utilizadas por otro software. No importa si tiene un HDD ATA o un HDD SCSI o una unidad de cinta, siempre usa exactamente las mismas estructuras y funciones para interactuar con él. Es entonces la tarea del núcleo y más explícita de esa capa de abstracción, hacer lo correcto cuando se accede al dispositivo de bloque. Lo correcto en el caso de la interfaz del dispositivo de bloque es pasar las llamadas y los datos hacia y desde el controlador del dispositivo correcto. Ese controlador de dispositivo puede ser, por ejemplo, el subsistema SCSI o el controlador del dispositivo de bucle.

El controlador del dispositivo de bucle transforma las operaciones en el dispositivo de bloque asociado en operaciones de archivo (sistema), así es como los datos / particiones terminan en un archivo.

Probablemente estoy terriblemente equivocado en la terminología utilizada y el nombre y el número de capas de abstracción involucradas. Solo quería esbozar el concepto básico para que quede claro que el dispositivo de bucle no es un archivo que hace algo, sino que es algo que usa archivos. El archivo no hace nada diferente de lo que solía hacer.

Bananguin
fuente