返回新闻概述

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 月。
只有错误修复和安全问题才会包含在稳定的错误修复版本中,因此始终建议保持最新并运行最新的错误修复版本。

下载