无法在Docker中使用"umount"卸载设备

Aru*_*pta 9 build docker

我不知道为什么但是,umount在docker中不起作用.

loop3

让我分享一件事就是它创造/mnt/loop3ubuntu:13.04的真机.对我来说这是最意想不到的事情,因为承诺纯虚拟环境.

为什么?有解决方案吗

场景 - :我创建了docker ubuntu:13.04来创建交叉编译环境.

Docker Linux机器:(ubuntu)

umount: loop3/: must be superuser to umount
Run Code Online (Sandbox Code Playgroud)

Linux机器:( Arch Linux)

Linux 626089eadfeb 3.10.45-1-lts #1 SMP Fri Jun 27 06:44:23 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

Docker信息

Linux localhost 3.10.45-1-lts #1 SMP Fri Jun 27 06:44:23 UTC 2014 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

Aru*_*pta 12

我找到了解决方案:

在默认的docker run中,它不像我们期望的那样是真正的操作系统.它没有访问设备的权限.因此我们必须--privileged在运行docker时使用.

默认情况下,Docker容器是"unprivileged",例如,在Docker容器内运行Docker守护程序.这是因为默认情况下,不允许容器访问任何设备,但允许"privileged"容器访问所有设备.

当操作员执行时docker run --privileged,Docker将允许访问主机上的所有设备,并在AppArmor中设置一些配置,以允许容器几乎与主机上运行容器外部的进程一样访问主机.