Es un poco indirecto, pero es posible montar una partición con una imagen de disco usando el parámetro "offset" de mount
o .losetup
Estoy buscando poder usar fusibles para hacer lo mismo en el espacio de usuario.
Caso de uso
Mi caso de uso es crear imágenes de disco en un servidor de compilación automática donde no se permite que el trabajo de compilación tenga permisos de root y el servidor no debería necesitar una configuración personalizada para trabajos de compilación específicos.
Respuesta1
Es posible hacerlo con fusibles, pero probablemente sería más limpio con herramientas personalizadas.
Solución
Con las herramientas apt-get-able es posible realizar el siguiente error:
mkdir mnt
xmount --in dd --out vdi disk.img mnt
mkdir mnt2
vdfuse -f mnt/disk.vdi
mkdir mnt3
fuseext2 -o "rw" mnt2/Partition1 mnt3
Explicación
La idea básica es que se puede utilizar fuse para separar una imagen de disco completa en archivos que apunten a sus particiones. vdfuse hace esto, pero es una herramienta de VirtualBox y requiere un archivo VDI o VMDK para funcionar. xmount usa fuse para hacer que una imagen de disco sin formato aparezca como un archivo VDI.
Finalmente, una vez que el archivo de partición esté disponible a través de vdfuse, se puede montar mediante una herramienta ext2/3/4 fuseext2.
Es feo pero funciona completamente en el espacio de usuario.
Actualizar
vdfuse debería poder montar una imagen sin formato sin la ayuda de xmount, pero hay un error que ignora la opción RAW.
Localicé y solucioné el error con un parche aquí:
https://bugs.launchpad.net/ubuntu/+source/virtualbox-ose/+bug/1019075
Respuesta2
Haymontarutilidad que es un contenedor del programa de montaje estándar que permite a los usuarios normales montar dispositivos extraíbles sin una entrada /etc/fstab coincidente.
Lo único que necesita para permitir que el usuario lo use es agregarlo al plugdev
grupo.
Respuesta3
losetup
la imagenkpartx -av
el dispositivo loopback resultante- Utilice las particiones resultantes
/dev/mapper/...
como lo haría con un disco físico
Puede realizar todas estas tareas utilizando un mapa de montaje automático ejecutable.
A chdir
podría desencadenar todas las acciones anteriores. O utilice sudo para un script de configuración/eliminación. O...
Respuesta4
libguestfs ahora tiene un comando guestmount
que activa una máquina virtual para permitirle montar particiones arbitrarias en el espacio del usuario.