Есть еще одно вопрос обсуждают размонтирование креплений rbind, но это решение имеет нежелательный эффект. Рассмотрим следующий макет каталога:
.
├── A_dir
│ └── mount_b
├── B_dir
│ └── mount_c
└── C_dir
Теперь связываю C_dir
к B_dir/mount_c
и rbind B_dir
к 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
Сейчас umount A_dir/mount_b
выйдет из строя, что неудивительно. Согласно ответам в Интернете, нам нужно umount A_dir/mount_b/mount_c
будет первый umount A_dir/mount_b
. Тем не мение, umount A_dir/mount_b/mount_c
также будет демонтировать B_dir/mount_c
, что нежелательно:
[hidden]$ sudo umount A_dir/mount_b/mount_c
[hidden]$ mount | grep _dir | wc -l
1
Теперь мой вопрос, как мне размонтировать A_dir/mount_b
но уходя B_dir
нетронутый, т.е. еще есть привязка B_dir/mount_c
к C_dir
?
Спасибо.
Нашел. https://unix.stackexchange.com/a/276700/29483
Пытаться --make-rprivate
:
mount --make-rprivate A_dir
umount -R A_dir
Примечание: разработчики systemd, которые установили описанное вами поведение как новое поведение по умолчанию, рекомендуют изначально не делать монтирование rbind приватным. Впрочем, это нормально сделать непосредственно перед размонтированием.
Это потому, что когда вы клонируете все средства передвижения, вы можете, например, затем нужно извлечь компакт-диск. Если он был смонтирован во время клонирования, включение распространения означает, что вам нужно запустить umount только в одном месте (например, за пределами монтирования rbind, как обычно), и тогда вы сможете его извлечь.