Comando Linux losetup
Guía completa de comandos Linux
El comando Linux losetup se utiliza para configurar dispositivos de bucle.
Los dispositivos de bucle pueden virtualizar archivos como dispositivos de bloque, simulando así todo el sistema de archivos, permitiendo a los usuarios tratarlos como unidades de disco duro, unidades de CD-ROM o disqueteras, y montarlos como directorios para su uso.
Sintaxis
losetup [-d][-e <加密方式>][-o <平移数目>][循环设备代号][文件]
Parámetros:
- -d Desmontar el dispositivo.
- -e<modo de cifrado> Activar el cifrado.
- -o<número de desplazamiento> Establecer el número de desplazamiento de datos.
Ejemplos
(1) Crear un archivo de imagen de disco vacío, aquí se crea un disquete de 1.44M.
$ dd if=/dev/zero of=floppy.img bs=512 count=2880
(2) Usar losetup para virtualizar el archivo de imagen de disco como un dispositivo de bloque.
$ losetup /dev/loop1 floppy.img
(3) Montar el dispositivo de bloque.
$ mount /dev/loop0 /tmp
Después de los tres pasos anteriores, podemos acceder al archivo de imagen de disco floppy.img a través del directorio /tmp, como si accediéramos a un dispositivo de bloque real.
(4) Desmontar el dispositivo loop.
$ umount /tmp $ losetup -d /dev/loop1
Un ejemplo de prueba completo.
1. Primero, crear un archivo vacío de 1G:
# dd if=/dev/zero of=loopfile.img bs=1G count=1 1+0 records in 1+0 records out 1073741824 bytes (1.1 GB) copied, 69.3471 s, 15.5 MB/s
2. Formatear el archivo como ext4:
# mkfs.ext4 loopfile.img 。。。。
3. Usar el comando file para ver el tipo de archivo después del formateo:
# file loopfile.img loopfile.img: Linux rev 1.0 ext4 filesystem data, UUID=a9dfb4a0-6653-4407-ae05-7044d92c1159 (extents) (large files) (huge files)
4. Preparar para montar el archivo anterior:
# mkdir /mnt/loopback # mount -o loop loopfile.img /mnt/loopback
La opción -o loop del comando mount puede montar cualquier sistema de archivos loopback.
El comando mount anterior es realmente equivalente a los dos comandos siguientes:
# losetup /dev/loop0 loopfile.img # mount /dev/loop0 /mnt/loopback
Por lo tanto, en realidad, mount -o loop ya ha montado internamente el archivo en /dev/loop0 de forma predeterminada.
Sin embargo, el primer método (mount -o loop) no es aplicable en todos los escenarios. Por ejemplo, si queremos crear un archivo de disco duro, luego particionarlo y montar una de sus subparticiones, entonces no podemos usar el método -o loop. Por lo tanto, debemos hacer lo siguiente:
# losetup /dev/loop1 loopfile.img # fdisk /dev/loop1
6. Desmontar el punto de montaje:
# umount /mnt/loopbackOtras extensiones