Al ingresar un chroot a veces es necesario montar / sys y / dev usando -rbind en lugar de -bind para asegurar que todo esté en su lugar cuando alguien va a buscar.
El problema viene al desmontar.
Un simple montaje siempre falla; con los niños montados también parece estar en uso:
$ umount /mnt/chroot/sys
umount: /mnt/chroot/sys: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
Otra posible solución es enumerar los montajes de proc y desmontar cada uno de ellos así:
$ grep /mnt/chroot/sys /proc/mounts | cut -f2 -d" " | sort -r | xargs umount
Sin embargo, esto también falla porque los montajes recursivos no están realmente registrados en el mtab:
/mnt/chroot/sys/kernel/security is not mounted (according to mtab)
Tal vez la solución es realizar un montaje perezoso, pero esto me parece bastante peligroso.
¿Hay una mejor manera de hacer esto que me haya perdido?
/mnt/chroot/sys/kernel/security
está montado en ese punto? ¿Cuál es la salida degrep /sys/kernel/security /proc/mounts
?umount
no necesita su argumento para aparecer en la lista/etc/mtab
. Si lo pasa-n
, no abrirá el archivo en absoluto.