首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LXD/LXC gid映射

LXD/LXC gid映射
EN

Stack Overflow用户
提问于 2017-02-01 07:43:39
回答 2查看 1.1K关注 0票数 3

我在磁盘上有一个目录,它属于gid为1001share。我希望将该目录作为设备添加到其中一个lxc容器上,并让该组继续运行。

我尝试过使用raw.idmap 'gid 1001 1001',但如果添加此命令,lxc容器将无法启动。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2017-12-06 08:51:57

要使映射工作,需要三个部分。

  1. raw.idmap set (您已经完成了此操作)
  2. 容器有一个现有的gid要映射到
  3. 阴影文件允许id映射

您正在尝试将主机GID1001 (share)映射到容器gid。在本例中,您也选择了container-gid为1001。

你已经完成了上面的第一步,你已经设置了映射。

完成#2只需要在容器内创建一个gid为1001的组。理论上,这实际上可以是新组的任何gid,您只需修改raw.idmap命令,将目标gid设置为与容器中定义的gid匹配即可。

对于上面的#3,您需要检查/etc/subgid,以确保允许您将主机-GID1001映射到容器-GID1001。

当您查看/etc/subgid时,您应该会看到一些类似以下内容的行,尽管每行上的第一个数字可能不同:

代码语言:javascript
复制
lxd:100000:65536
root:100000:65536

这是缺省配置,并说明lxd可以使用范围从100000开始的gid,这会产生相对于主机gid隐藏偏移量为100000 (或行中的第一个数字)的容器。如果您从容器内的挂载目录中创建一个文件,则从主机可见的gid将是该偏移量+容器gid。

要允许lxd使用gid 1001,从而允许它将主机gid 1001映射到容器gid 1001 (或任何容器gid),您需要向/etc/subgid文件添加权限。您可以通过在文件末尾添加如下所示的行来完成此操作:

代码语言:javascript
复制
lxd:1001:1
root:1001:1

如果您希望主机在您使用raw.idmap选项时允许lxd映射许多不同的gids,则可以将它们指定为“

代码语言:javascript
复制
lxd:start-id-to-expose:count-of-ids-to-expose
root:start-id-to-expose:count-of-ids-to-expose

其中在文件中的附加行上列出了不连续的范围。

每次需要添加新行时,都要确保同时添加lxd和root行,因为lxd文档说,对于大多数用途,它们必须保持同步。

票数 3
EN

Stack Overflow用户

发布于 2017-08-17 16:11:01

这一行的意思是将id为1001的主机用户映射到id为1001的容器用户,这意味着您应该确保容器中有一个id为1001的用户,或者将其映射到不同的用户(容器的第一个用户的id通常为1000)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41969567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档