You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

systemd-nspawn报错:无法创建/init.scope控制组,权限被拒如何解决?

解决systemd-nspawn启动时的control group权限拒绝问题

以下是几种针对该错误的可行解决方法:

  • 检查cgroup配置与版本
    先确认系统使用的cgroup版本:

    mount | grep cgroup
    

    如果是cgroup v2,确保容器rootfs包含systemd支持,或者在启动参数中添加--property=Delegate=yes;如果是cgroup v1,检查cgroup挂载点的权限,确保运行systemd-nspawn的用户(一般是root)拥有读写权限。

  • 调整容器服务的systemd配置
    找到你的容器服务文件(比如/etc/systemd/system/your-container.service),在[Service]段添加或修改:

    Delegate=yes
    Slice=machine.slice
    

    之后重新加载systemd配置并重启服务:

    systemctl daemon-reload
    systemctl restart your-container.service
    
  • 手动指定cgroup路径或跳过创建
    启动容器时可以手动指定cgroup路径:

    systemd-nspawn --cgroup-path=/user.slice/user-1000.slice/session-XXXX.scope -D /path/to/rootfs
    

    测试场景下也可以用--no-new-cgroup参数跳过新cgroup的创建(不推荐生产环境使用):

    systemd-nspawn --no-new-cgroup -D /path/to/rootfs
    
  • 排查安全模块限制
    如果系统开启了SELinux,临时关闭测试:

    setenforce 0
    

    若问题解决,需要添加对应的SELinux规则来允许systemd-nspawn操作cgroup;如果是AppArmor,执行aa-status查看是否有相关限制,必要时调整AppArmor配置。

错误原因说明

这个错误是因为systemd-nspawn尝试创建新的/init.scope控制组时没有权限,虽然容器能启动,但内部systemd无法正确完成cgroup管理初始化,导致服务状态报错。

内容的提问来源于stack exchange,提问作者Aditya Deshpande

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 07:12:06