新闻¶
LXCFS 6.0.2 LTS 已发布¶
2024 年 9 月 17 日
介绍¶
LXCFS 团队很高兴地宣布发布 LXCFS 6.0.2!
这是 LXCFS 6.0 的第二个错误修复版本,它将支持到 2029 年 6 月。
变更¶
此版本的一些亮点包括
- 修复在 musl 系统上构建 LXCFS(缺少包含文件)
完整的提交列表如下所示
详细的变更日志
- 添加缺少的 linux/limits.h 包含文件
支持和升级¶
LXCFS 6.0 分支将支持到 2029 年 6 月。
只有错误修复和安全问题会被包含在稳定的错误修复版本中,因此始终安全且建议您保持更新并运行最新的错误修复版本。
下载¶
- 主发行版压缩包:lxcfs-6.0.2.tar.gz
- GPG 签名:lxcfs-6.0.2.tar.gz.asc
LXCFS 6.0.1 LTS 已发布¶
2024 年 6 月 26 日
介绍¶
LXCFS 团队很高兴地宣布发布 LXCFS 6.0.1!
这是 LXCFS 6.0 的第一个错误修复版本,它将支持到 2029 年 6 月。
变更¶
此版本的一些亮点包括
- 支持运行多个 LXCFS 实例(
--runtime-dir
) - 检测阻止读取进程个性的 Yama 策略的系统
完整的提交列表如下所示
详细的变更日志
- github:添加 lxcfs 实时升级兼容性测试
- proc:在尝试获取个性之前检查系统安全策略
- lxcfs/bindings:重构 RUNTIME_PATH,以便它可以在启动时被覆盖
- lxcfs/bindings:添加一个用于覆盖运行时目录的标志
- github:将 coverity 测试更新为使用 Ubuntu 22.04
- README.md:添加有关如何收集核心转储的信息
- github:添加 ISSUE_TEMPLATE.md
- 测试:针对多个运行时路径进行更新
支持和升级¶
LXCFS 6.0 分支将支持到 2029 年 6 月。
只有错误修复和安全问题会被包含在稳定的错误修复版本中,因此始终安全且建议您保持更新并运行最新的错误修复版本。
下载¶
- 主发行版压缩包:lxcfs-6.0.1.tar.gz
- GPG 签名:lxcfs-6.0.1.tar.gz.asc
LXCFS 6.0 LTS 已发布¶
2024 年 4 月 1 日
介绍¶
LXCFS 团队很高兴地宣布发布 LXCFS 6.0 LTS!
这是自 LXCFS 5.0 发布以来两年工作的成果,是 LXCFS 项目的第五个 LTS 版本。此版本将支持到 2029 年 6 月。
亮点¶
新的 --enable-cgroup 选项
¶
LXCFS 可以为容器提供虚拟 cgroupfs(v1)树。
此功能是在内核中实现 cgroup 命名空间之前实现的,有效地允许在缺少该功能的内核上提供类似的体验。
由于大多数受支持的 Linux 发行版现在都具有支持 cgroup 命名空间的内核,并且大多数新的发行版甚至已经从 cgroupv1 切换,因此默认情况下启用此功能没有意义。因此,它现在已移至新的启动参数 --enable-cgroup
后面。
CPU 在 /sys/devices/system/cpu 中不再被屏蔽¶
LXCFS 5.0 附带逻辑,用于根据调用者的 cpuset 中允许的 CPU 过滤 /sys/devices/system/cpu
中的条目。此行为实际上并不反映正常系统上的行为,即使离线 CPU 仍然显示在 /sys/devices/system/cpu
中。
因此,LXCFS 6.0 反转了该逻辑,现在只确保使在线/离线 CPU 列表保持最新状态,而各个 CPU 目录仍然可以访问。
完整的变更日志¶
变更日志
- lxcfs_fuse:确保在包含 fuse 标头之后包含 lxcfs_fuse_compat.h
- 树级:从 DIR_FILLER 中删除 struct stat 参数并使其成为静态内联
- 树级:确保即使使用旧版 fuse 也设置文件信息
- 测试:添加对问题 #522 的测试
- meson:包含文档
- 工作流程:禁用文档生成
- sysfs:不要错误地过滤条目
- 测试:修复 sysfs 测试
- 工具:添加并使用 opathdir()
- sysfs_fuse:修复缩进
- sysfs_fuse:为 cpu 生成文件信息
以及条目 - meson:提升 fuse 版本
- github:添加 fuse3 测试
- meson:处理具有错误 dt_type 处理的 fuse 版本
- init/meson:使用 libdir 而不是硬编码的 /lib 路径
- 查询 systemd system unit 目录。
- 支持明确的 fuse 版本选择
- github:重新组织 Github Actions
- 测试:在较旧的 FUSE 版本上跳过 sysfs 测试
- init:修复 sysvinit 和 openrc 的安装路径
- meson:支持多个 init 系统
- meson:语法细微差别
- proc_fuse:/proc/stat 中的额外空格
- 工具:删除重复的注释
- sysfs:更正 /sys/devices/system/cpu/online 的文件大小。
- sysfs:清理 sys_devices_system_cpu_online_getsize
- cgroup v2:在没有设置配额时返回 cpuset cpu 计数
- 在重新加载后重新初始化库
- 用 opendir_flags 替换 opathdir
- github:限制权限
- github:验证目标分支
- 修复与 fuse3 的重新初始化
- 将 lxcfs 进程的 oom_score_adj 设置为 -1000
- init:在安装 systemd unit 文件时尊重 --prefix
- 修复 ia64 上的构建
- doc:在 docker 演示中引导安装 /sys/devices/system/cpu
- 工具:添加 safe_uint32() 帮助器
- macro.h:添加 strnprintf 宏
- 工具:添加 get_task_personality 帮助器
- cpuview:在读取 cpuinfo 时传递个性
- cpuview:修复 find_proc_stat_node 中可能发生的释放后使用问题
- github:使 coverity 工作流程适用于 meson
- README:如何使用 sanitizers 构建
- cpuset_parse:在 cpuset_nexttok 中检查输入字符串
- github:在 PR 测试期间启用 ASAN 和 UBSAN
- lxcfs:为 libfuse3 明确启用 direct_IO
- lxcfs:修复错误消息中的复制粘贴错误
- /proc/stat:在非视图模式下呈现物理 cpu 编号
- sysfs:不要在 /sys/devices/system/cpu 中屏蔽 cpu
- lxcfs:在 lxcfs_releasedir/lxcfs_release 中处理 NULL 路径
- cpuview:修复 find_proc_stat_node 中的 ABBA 死锁
- 构建:工具:在 jinja2 渲染器中保留尾随换行符
- 恢复“init:在安装 systemd unit 文件时尊重 --prefix”
- proc:修复 /proc/diskstats 输出格式
- github:开始使用 ubuntu-22.04 镜像
- github:删除 ubuntu-18.04
- 测试:适应 cgroup2
- cpuview:分别解析 cpu cgroup 路径和 cpuset cgroup 路径不同于带有 containerd 运行时的 kubernetes。
- lxcfs:为 FUSE_INTERRUPT 支持做准备
- lxcfs:添加 fuse 可中断锁
- cpuview:开始使用可中断锁原语
- github:更新主分支
- proc_loadavg:修复读/刷新之间的 ABBA 死锁
- proc:修复 /proc/cpuinfo 未尊重个性
- proc_loadavg.c:修复整数到指针的转换不兼容问题
- cgroups:清理并删除未使用的 cgroup2_devices 代码
- loadavg:使 start_loadavg 的清理
- cpuview:将正确的参数传递给 lxcfs_debug
- lxcfs:添加启动消息
- proc:修复 /proc/meminfo 中的 MemAvailable,以排除 tmpfs 文件
- systemd:mkdir -p 目标挂载目录
- typofix:修复 lxcfs 帮助界面中的错误打印
- 为 loongarch64 添加宏 pivot&bpf
- lxc.mount.hook:如果缺少目标,跳过 cpu sysfs 逻辑
- sysfs:禁止 write()
- lxcfs:引入新的选项 --enable-cgroup
- 测试:对测试使用 --enable-cgroup
- github:解决 ASAN 的 CI 问题
- 恢复“github:解决 ASAN 的 CI 问题”
- proc_fuse:修复 get_swap_info 错字 swtotal == 0 -> *swtotal == 0
- proc:修复 cgroups v2 的交换处理(can_use_swap)
- proc:修复 cgroups v2 的交换处理(零限制)
- cgroup_utils:在 cgroup_walkup_to_root 中显式检查 cgroup2 FD
支持和升级¶
LXCFS 6.0 将支持到 2029 年 6 月,我们当前的 LTS 版本 LXCFS 5.0 现在将切换到更慢的维护速度,只获取关键的错误修复和安全更新。
我们强烈建议所有 LXCFS 用户计划升级到 6.0 分支。
未来的发布节奏¶
为了使新的 LXCFS 功能更容易被用户使用,我们决定重新开始发布非 LTS 版本。计划的间隔为每 6 个月一次,计划在 10 月发布 LXCFS 6.1。
这些版本将不会从围绕稳定性、支持和安全维护的 LTS 保证中受益,并且只会在下一个版本发布之前得到支持。
生产用户可能希望留在 LTS 版本上。
下载¶
- 主发布包: lxcfs-6.0.0.tar.gz
- GPG 签名: lxcfs-6.0.0.tar.gz.asc
贡献者¶
LXCFS 6.0 版本由 25 位贡献者共同完成。
LXCFS 5.0.4 LTS 已发布¶
2023 年 7 月 25 日
简介¶
LXCFS 团队很高兴地宣布发布 LXCFS 5.0.4!
这是 LXCFS 5.0 的第四个错误修复版本,它将支持到 2027 年 6 月。
错误修复¶
此版本的一些亮点包括
- 修复了 /proc/diskstats 的输出格式
- 修复了与 containerd 一起使用时的 cpuset 路径跟踪问题
完整的提交列表如下所示
详细的变更日志
- 构建:工具:在 jinja2 渲染器中保留尾随换行符
- 恢复“init:在安装 systemd unit 文件时尊重 --prefix”
- proc:修复 /proc/diskstats 输出格式
- github:开始使用 ubuntu-22.04 镜像
- github:删除 ubuntu-18.04
- 测试:适应 cgroup2
- cpuview:分别解析 cpu cgroup 路径和 cpuset cgroup 路径不同于带有 containerd 运行时的 kubernetes。
- github:更新主分支
支持和升级¶
LXCFS 5.0 分支将支持到 2027 年 6 月。
只有错误修复和安全问题会被包含在稳定的错误修复版本中,因此始终安全且建议您保持更新并运行最新的错误修复版本。
下载¶
- 主发布包: lxcfs-5.0.4.tar.gz
- GPG 签名: lxcfs-5.0.4.tar.gz.asc
LXCFS 5.0.3 LTS 已发布¶
2023 年 1 月 17 日
简介¶
LXCFS 团队很高兴地宣布发布 LXCFS 5.0.3!
这是 LXCFS 5.0 的第三个错误修复版本,它将支持到 2027 年 6 月。
错误修复¶
此版本的一些亮点包括
- 修复了在 FUSE3 下运行时的 VFS 缓存问题
- 修复了新的 /sys/devices/system/cpu 过滤的一些行为问题
- 修复了在 ia64 上的构建
- 为 /proc/cpuinfo 正确处理跨人格内容
完整的提交列表如下所示
详细的变更日志
- 将 lxcfs 进程的 oom_score_adj 设置为 -1000
- init:在安装 systemd unit 文件时尊重 --prefix
- 修复 ia64 上的构建
- doc:在 docker 演示中引导安装 /sys/devices/system/cpu
- 工具:添加 safe_uint32() 帮助器
- macro.h:添加 strnprintf 宏
- 工具:添加 get_task_personality 帮助器
- cpuview:在读取 cpuinfo 时传递个性
- cpuview:修复 find_proc_stat_node 中可能发生的释放后使用问题
- github:使 coverity 工作流程适用于 meson
- README:如何使用 sanitizers 构建
- cpuset_parse:在 cpuset_nexttok 中检查输入字符串
- github:在 PR 测试期间启用 ASAN 和 UBSAN
- lxcfs:为 libfuse3 明确启用 direct_IO
- lxcfs:修复错误消息中的复制粘贴错误
- /proc/stat:在非视图模式下呈现物理 cpu 编号
- sysfs:不要在 /sys/devices/system/cpu 中屏蔽 cpu
- lxcfs:在 lxcfs_releasedir/lxcfs_release 中处理 NULL 路径
- cpuview:修复了 find_proc_stat_nod 中的 ABBA 死锁
支持和升级¶
LXCFS 5.0 分支将支持到 2027 年 6 月。
只有错误修复和安全问题会被包含在稳定的错误修复版本中,因此始终安全且建议您保持更新并运行最新的错误修复版本。
下载¶
- 主发布包: lxcfs-5.0.3.tar.gz
- GPG 签名: lxcfs-5.0.3.tar.gz.asc
旧闻¶
- 2022 年 8 月 9 日
- 2022 年 7 月 26 日
- 2022 年 3 月 10 日
- 2022 年 2 月 2 日
- 2021 年 10 月 19 日
- 2021 年 7 月 17 日
- 2021 年 5 月 6 日
- 2021 年 1 月 8 日
- 2020 年 10 月 19 日
- 2020 年 8 月 3 日
- 2020 年 6 月 18 日
- 2020 年 4 月 17 日
- 2020 年 4 月 7 日
- 2020 年 3 月 19 日
- 2020 年 3 月 6 日
- 2019 年 7 月 24 日
- 2019 年 6 月 21 日
- 2018 年 11 月 23 日
- 2018 年 8 月 21 日
- 2018 年 6 月 4 日
- 2018 年 3 月 27 日
- 2017 年 10 月 19 日
- 2017 年 5 月 11 日
- 2017 年 1 月 23 日
- 2016 年 11 月 23 日
- 2016 年 10 月 5 日
- 2016 年 8 月 15 日
- 2016 年 6 月 28 日
- 2016 年 5 月 16 日
- 2016 年 3 月 31 日
- 2016 年 3 月 29 日
- 2016 年 3 月 21 日
- 2016 年 3 月 21 日
- 2016 年 3 月 17 日
- 2016 年 3 月 14 日
- 2016 年 3 月 11 日
- 2016 年 3 月 7 日
- 2016 年 2 月 24 日
- 2016 年 2 月 24 日
- 2016 年 2 月 19 日
- 2016 年 2 月 9 日
- 2016 年 2 月 4 日
- 2016 年 1 月 26 日
- 2016 年 1 月 8 日
- 2016 年 1 月 7 日
- 2016 年 1 月 7 日
- 2015 年 11 月 25 日
- 2015 年 11 月 17 日
- 2015 年 10 月 26 日
- 2015 年 9 月 3 日
- 2015 年 6 月 3 日
- 2015 年 5 月 7 日
- 2015 年 4 月 3 日
- 2015 年 2 月 16 日
- 2015 年 1 月 28 日
- 2015 年 1 月 23 日
- 2015 年 1 月 21 日
- 2015 年 1 月 20 日
- 2015 年 1 月 9 日