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

树莓派4安装k3s失败:已配置cgroup参数仍报错求助

树莓派4安装k3s报错(找不到memory cgroup)的排查方案

核心问题分析

报错里的Failed to find memory cgroup是关键,说明你添加的cgroup参数未真正生效,以下是最常见的原因及解决方法:

1. cmdline.txt参数未放在同一行

树莓派的cmdline.txt要求所有启动参数必须在同一行,不能换行拆分。如果你把cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory拆成多行,系统会忽略后续参数。

  • 检查方式:执行cat /boot/cmdline.txt(Ubuntu用户请用cat /boot/firmware/cmdline.txt),确认所有参数(包括你添加的cgroup内容)在同一行。
  • 修复:将所有内容合并为单一整行,保存后执行sync再重启设备。

2. 修改了错误的cmdline.txt路径

不同系统的boot分区路径存在差异,改错文件等于无效操作:

  • Raspberry Pi OS(原Raspbian):正确路径为/boot/cmdline.txt
  • Ubuntu Server 20.04+/Debian 11+(ARM64):正确路径为/boot/firmware/cmdline.txt
  • 修复:找到对应系统的正确路径,修改参数后重启。

3. 系统默认使用cgroup v2,k3s需v1支持

新的树莓派系统(如Raspberry Pi OS Bullseye及之后版本、Ubuntu 22.04+)默认启用cgroup v2,但k3s对v2的支持不完善,必须切换回v1:

  • 检查当前版本:执行mount | grep cgroup,若输出包含cgroup2,说明使用的是v2。
  • 修复:在cmdline.txt的同一行追加参数systemd.unified_cgroup_hierarchy=0,保存后执行sync再重启。重启后再次执行mount | grep cgroup,应能看到多个单独的cgroup挂载点(如cpuset、memory)。

4. 修改内容未真正写入磁盘

若boot分区为只读挂载,或未执行同步命令,修改的内容会在重启后丢失:

  • 修复:修改cmdline.txt后,立即执行sync命令强制写入磁盘,再用reboot重启设备,重启后检查cmdline.txt内容是否保留。

最后一步:查看详细日志定位剩余问题

若上述方法均无效,执行以下命令查看具体错误细节:

systemctl status k3s.service
journalctl -xeu k3s.service

日志会给出更精准的失败原因,比如内存不足、权限异常等。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 07:40:39