为什么 lxc 容器不执行 /etc/sysctl.d 上的配置文件?

为什么 lxc 容器不执行 /etc/sysctl.d 上的配置文件?

我的主机是具有特权容器的 Ubuntu 16.04.1 LTS。

我想禁用容器的 ipv6,因此我创建了一个配置文件/etc/sysctl.d/60-disable-ipv6.conf,我已经尝试过lxc-startlxc-stop -r我的容器,容器的 ipv6 直到运行才被禁用sudo sysctl -p /etc/sysctl.d/60-disable-ipv6.conf,它有效,ipv6 地址被禁用。

为何集装箱无法装载/etc/sysctl.d/*.conf

答案1

感谢 Phillip 的指示,我发现systemd-sysctl.service容器中没有启动并出现以下消息:ConditionPathIsReadWrite=/proc/sys/ was not met

我已经尝试过lxc.mount.auto=proclxc.mount.auto=proc:rw在 lxc 配置中使用它,但它对我来说不起作用。

最后我发现有一个问题systemdhttps://github.com/systemd/systemd/issues/4370,也许如果我可以安装systemd v232它就可以解决。(修改systemd-sysctl.serviceConditionPathIsReadWrite可以/proc/sys/net解决它。)

我添加了sudo sysctl --system启动脚本,它起作用了。

相关内容