
preguntado enfallo del servidorpero no recibió suficiente atención, por lo que lo volví a publicar aquí, con la esperanza de que algunas personas sepan la respuesta.
Hay otropreguntaEstamos hablando de desmontar montajes rbind, pero la solución tiene efectos no deseados. Considere el siguiente diseño de directorio:
.
├── A_dir
│ └── mount_b
├── B_dir
│ └── mount_c
└── C_dir
Ahora me enlace C_dir
y B_dir/mount_c
me enlace B_dir
a A_dir/mount_b
:
[hidden]$ sudo mount --bind C_dir B_dir/mount_c
[hidden]$ sudo mount --rbind B_dir A_dir/mount_b
[hidden]$ mount | grep _dir | wc -l
3
Ahora umount A_dir/mount_b
fracasará, lo cual no es de extrañar. De acuerdo con las respuestas que aparecen en toda la web, umount A_dir/mount_b/mount_c
primero debemos hacerlo umount A_dir/mount_b
. Sin embargo, umount A_dir/mount_b/mount_c
también desmontará B_dir/mount_c
, lo cual no es deseado:
[hidden]$ sudo umount A_dir/mount_b/mount_c
[hidden]$ mount | grep _dir | wc -l
1
Ahora mi pregunta es, ¿cómo desmonto A_dir/mount_b
pero no me veo B_dir
afectado, es decir, todavía hay un B_dir/mount_c
vínculo C_dir
?
EDITAR: este problema no parece aparecer en Ubuntu. Más específicamente, funciona bien en mi Ubuntu 14.04 pero no funciona en Fedora 23 y CentOS 7. ¿Por qué existe la diferencia y cuál es la solución para Fedora y CentOS?
EDITAR: más información sobre el problema real que estoy tratando de resolver. Intenté crear una caja de arena y --rbind
la usé para montar /dev
y /proc
en la caja de arena. Al destruir la zona de pruebas, parece que no puedo destruirla limpiamente porque al desmontarla <sandbox-root>/dev/pts
en FC23 y CentOS7 se desmontará /dev/pts
, después de lo cual mis conexiones de shell y SSH se bloquean y tengo que reiniciar la máquina. Por eso pregunto si hay alguna manera de desmontar los montajes --rbind sin afectar los submontajes.
Respuesta1
Yo mismo encontré la solución. Simplemente necesito usarlo --make-rslave
para realizar cambios y A_dir/mount_b
no propagarlo de nuevo a B_dir
:
sudo mount --make-rslave A_dir/mount_b
sudo umount -R A_dir/mount_b
Vermontarsección de la página de manualLas operaciones del subárbol compartido..