相关疑难解决方法(0)

卸载 rbind 挂载而不影响原始挂载

serverfault 上被问到但没有得到足够的关注,所以在这里重新发布,希望这里的一些人知道答案。

还有另一个问题在讨论卸载 rbind 挂载,但该解决方案有不良影响。考虑以下目录布局:

.
??? A_dir
?   ??? mount_b
??? B_dir
?   ??? mount_c
??? C_dir
Run Code Online (Sandbox Code Playgroud)

现在我绑定C_dirB_dir/mount_c和 rbindB_dirA_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
Run Code Online (Sandbox Code Playgroud)

现在umount A_dir/mount_b会失败,这并不奇怪。根据网络上随处可见的答案,我们需要umount A_dir/mount_b/mount_c先然后umount A_dir/mount_b。但是,umount A_dir/mount_b/mount_c也会 unmount B_dir/mount_c,这是不需要的:

[hidden]$ sudo umount A_dir/mount_b/mount_c
[hidden]$ mount | grep _dir | wc …
Run Code Online (Sandbox Code Playgroud)

linux mount unmounting linux-kernel bind-mount

12
推荐指数
1
解决办法
3977
查看次数

安装后如何卸载“dev”?

看来我dev安装后无法卸载。我正在继续Ubuntu 18.04.2 LTS运行4.15.0-1052-aws

mkdir -p ~/jail/dev
pushd ~/jail
sudo mount --rbind /dev dev/
sudo umount  dev/
umount: /home/ubuntu/Code/conversations/jail/dev: target is busy.
Run Code Online (Sandbox Code Playgroud)

有什么方法可以在不重新启动机器的情况下卸载它吗?

或者,有没有一种方法可以安装它以便更容易卸载?

更新:这是以下的输出lsof /home/ubuntu/Code/conversations/jail/dev

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
kdevtmpfs  55 root  cwd    DIR    0,6     2980    2 dev
kdevtmpfs  55 root  rtd    DIR    0,6     2980    2 dev
Run Code Online (Sandbox Code Playgroud)

mount unmounting

3
推荐指数
1
解决办法
4341
查看次数

标签 统计

mount ×2

unmounting ×2

bind-mount ×1

linux ×1

linux-kernel ×1