Estoy ejecutando Docker para Windows (el efecto similar que se describe a continuación se puede observar en MacOSX) Tengo un Docker Container en el que un programa intenta acceder a una imagen de squashfs. Para acceder a squashfs, el núcleo debe cumplir con el soporte de loopdevice de forma estática o cargar el módulo del núcleo correspondiente. Cuando intento montar la imagen o configurar el dispositivo de bucle, el kernel que se comparte entre los contenedores acoplables no puede encontrar el módulo del dispositivo de bucle. Posiblemente podría usar la herramienta unsquashfs, pero la imagen squashfs se usa por una razón: squashfs tiene una propiedad muy decente: permite una cantidad ilimitada de archivos e inodos; si intento desempaquetar la imagen, rápidamente alcanzo el límite de inodos de las imágenes. ¿El kernel de Moby Linux que se envía con Docker es un kernel compilado estáticamente? ¿Qué volumen montar para tener acceso a sus /lib/modules? lsmod ejecutado en un contenedor privilegiado enumera módulos no cargados. Intentar un modprobe loop produce el siguiente mensaje de error:
root@6e1b23cc65e5:/# modprobe loop modprobe: ERROR: ../libkmod/libkmod.c:556 kmod_search_moddep() could not open moddep file '/lib/modules/4.9.8-moby/modules.dep.bin'