gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 21:22:16 26 4
gpt4 key购买 nike

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

umount: loop3/: must be superuser to umount

让我再分享一件事它在真机的/mnt/loop3下创建loop3。这对我来说是最出乎意料的事情,因为 promise 了纯虚拟环境。

为什么?有什么解决办法吗?

场景:

我创建了 docker ubuntu:13.04 来创建交叉编译环境。

  • Docker Linux 机器(ubuntu):

    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
  • Linux 机器(rch Linux):

    Linux localhost 3.10.45-1-lts #1 SMP Fri Jun 27 06:44:23 UTC 2014 x86_64 GNU/Linux

docker 信息

Client version: 1.0.1
Client API version: 1.12
Go version (client): go1.3
Git commit (client): 990021a
Server version: 1.0.1
Server API version: 1.12
Go version (server): go1.3
Git commit (server): 990021a

最佳答案

我找到了解决方案:

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

默认情况下,Docker 容器是“非特权”,例如,不能在 Docker 容器内运行 Docker 守护程序。这是因为默认情况下不允许容器访问任何设备,但 "privileged" 容器可以访问所有设备。

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

关于build - 无法在 Docker 中使用 "umount"卸载设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24614513/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com