LXC 4.0.3 LTS 已发布¶
2020 年 6 月 29 日
简介¶
LXC 团队很高兴宣布 LXC 4.0.3 发布!
这是 LXC 4.0 的第三个错误修复版本,该版本支持到 2025 年 6 月。
错误修复¶
此版本的亮点包括
- 改进 cgroupv1/cgroupv2 处理
- 对 lxc-usernsexec 的各种改进和测试
完整的提交列表如下
详细变更日志
- apparmor: 允许 boot_id
- src/lxc/network: 修复 netlink 属性类型 1 的长度无效消息
- cgroups: 忽略非 cgroup2 布局上的 cgroup2 限制
- common.conf: 添加 cgroup2 默认设备限制
- cgroups: 在仅 cgroup2 的系统上预先挂载 cgroups
- conf: 引入 userns_exec_mapped_root()
- conf: 支持在没有 rootfs 的容器上设置控制台
- terminal: 删除不必要的 if 条件
- gcc: 添加 -Warray-bounds、-Wrestrict、-Wreturn-local-addr、-Wstringop-overflow
- compiler: 支持新的访问属性
- 树形遍历: 这更像是 TODO 而不是 FIXME
- yum: 删除未使用的模块
- tools/lxc-ls: 阻止 lgtm
- tools/lxc-ls: 进一步阻止 lgtm
- confile: 修复网络键的顺序无关性
- lxccontainer: 对 lxc_check_inherited() 调用进行少量清理
- start: 删除未使用的 lxc_zero_handler()
- lxccontainer: 在 state_socket_pair 上使用 close_prot_errno_disarm()
- start: 修复容器重启
- start: 清理文件描述符继承
- log: 清理 syslog 处理
- console: 仅在请求控制台时创建分离挂载
- syscall_numbers: 正确处理 ia64 系统调用编号
- syscall_numbers: 添加 clone3()
- process_utils: 引入新的 process_utils.{c,h}
- process_utils: 添加 clone3() 支持
- mainloop: 添加 lxc_mainloop_add_handler_events
- cgfsng: 对冻结代码进行重复数据消除
- cgfsng: 在轮询 cgroup.events 时使用 EPOLLPRI
- process_utils: 使 lxc 尽可能使用 clone3()
- network: 恢复旧行为
- network: 修复 {mac,ip,v}lan 设备创建
- bionic: s/lxc_raw_execveat()/execveat()/g
- network: 在 instantiate_ns_phys() 中也使用 __instantiate_ns_common()
- lxc-usernsexec: 从错误消息降级到警告消息
- lxc-usernsexec: 不要在 setgroups() 上失败
- travis: 将 coverity 限制在 amd64 上 bionic 上的 gcc
- 引入 lxc.cgroup.dir.{monitor,container,container.inner}
- cgroups: 删除未使用的变量
- cgroup 隔离: 及早处理设备 cgroup
- 改进 LXC_CMD_GET_CGROUP 兼容性
- cgroups: 在创建 cgroups 时不要过于惊慌
- commands: 使限制 cgroup 回调不可到达
- api_extensions: 添加 "pidfd"
- 添加 lxc-usernsexec 测试
- lxc-test-usernsexec: 如果用户是 root,则创建并使用非 root 用户。
- .gitignore: 忽略由 make 创建的 COPYING 文件
- macro: 添加 UINT_TO_PTR 和 PTR_TO_USHORT 辅助函数
- network: 在 instantiate_veth 中添加对桥接链接接口存在的检查
- network: 更新 lxc_ipvlan_create 中的 netlink_open 处理
- network: 删除未使用的 ip_proxy_args
- cgroups: 初始化 lxc.pivot cpuset
- conf: 删除有缺陷的标志
- conf: 在 userns_exec_mapped_root() 中始终使用 target_fd
- conf: 向 userns_exec_mapped_root() 添加更多日志
- conf: 杀死旧的 chown_mapped_root()
- lxccontainer: 删除无意义的字符串重复
- containertests: 修复空指针解引用
- 树形遍历: 使用 "ptmx" 和 "pts" 作为终端术语
- 树形遍历: 从我们的公开日志中删除对可疑 API 的引用
- 树形遍历: 在网络代码中使用 "primary"
- network: 将 primary 重命名为 master
- openpty: 调整变量命名
- CODING_STYLE: 调整代码示例
- doc: 更新术语
- test: 更新术语
- lxccontainer: 修复非阻塞容器停止
- lxc-net: 设置广播
- commands: 不要泛滥日志
支持和升级¶
LXC 4.0 分支支持到 2025 年 6 月。
只有错误修复和安全问题才会包含在稳定的错误修复版本中,因此始终建议保持最新并运行最新的错误修复版本。
下载¶
- 主发行版压缩包: lxc-4.0.3.tar.gz
- GPG 签名: lxc-4.0.3.tar.gz.asc