losetup -P
automatización
losetup -P
es el mejor método que comienza en Ubuntu 16.04 como se menciona en https://askubuntu.com/a/496576/52975 , aquí hay funciones para automatizar si es más. Uso:
$ los my.img
/dev/loop0
/mnt/loop0p1
/mnt/loop0p2
$ ls /mnt/loop0p1
/whatever
/files
/youhave
/there
$ sudo losetup -l
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO
/dev/loop1 0 0 0 0 /full/path/to/my.img
$ # Cleanup.
$ losd 0
$ ls /mnt/loop0p1
$ ls /dev | grep loop0
loop0
Fuente:
los() (
img="$1"
dev="$(sudo losetup --show -f -P "$img")"
echo "$dev"
for part in "$dev"?*; do
if [ "$part" = "${dev}p*" ]; then
part="${dev}"
fi
dst="/mnt/$(basename "$part")"
echo "$dst"
sudo mkdir -p "$dst"
sudo mount "$part" "$dst"
done
)
losd() (
dev="/dev/loop$1"
for part in "$dev"?*; do
if [ "$part" = "${dev}p*" ]; then
part="${dev}"
fi
dst="/mnt/$(basename "$part")"
sudo umount "$dst"
done
sudo losetup -d "$dev"
)
módulo de bucle max_part config
Este es un método decente antes de 16.04.
loop
es un módulo del núcleo, integrado en el núcleo en Ubuntu 14.04.
Si lo configura correctamente, Linux divide automáticamente los dispositivos por usted.
cat /sys/module/loop/parameters/max_part
dice cuántas particiones loop
pueden generar los dispositivos.
Es 0
por defecto en Ubuntu 14.04, razón por la cual no ocurre la división automática.
Para cambiarlo, podemos agregar:
options loop max_part=31
a un archivo en /etc/modprobe
, o:
GRUB_CMDLINE_LINUX="loop.max_part=31"
a /etc/default/grub
y luego sudo update-grub
.
Cómo configurar un parámetro de módulo también se trata en: ¿Cómo agregar parámetros de módulo de kernel?
Después de reiniciar, cuando lo haces:
sudo losetup -f --show my.img
monta la imagen en un /dev/loopX
dispositivo y monta automáticamente las particiones en los /dev/loopXpY
dispositivos.
Este es el método más conveniente si está dispuesto a reiniciar.
Ver también