LXC 3.0.2 已发布¶
2018 年 8 月 21 日
简介¶
LXC 团队很高兴地宣布 LXC 3.0.2 发布!
作为一个稳定的 bug 修复版本,没有进行重大更改,而是专注于 bug 修复和次要可用性改进。
亮点¶
- 适应 Linux
4.18
中的更改,该更改允许在用户命名空间中创建但不能打开设备节点 - 在容器启动时分配网络命名空间 ID
- 构建静态
liblxc
这有助于通过 Netlink 有效地检索网络接口及其地址。 - 在整个代码库中加强线程安全性
- 在所有
strncpy()
和strncat()
实例中添加了高效的strlcpy()
和strlcat()
实现,以使字符串处理更安全 lxc-*
工具(例如lxc-attach
、lxc-start
)与liblxc
共享库共享符号
这显着减少了代码库的大小。- 全面的代码风格修复
CVE-2018-6556¶
此版本通过提交 CVE 2018-6556: verify netns fd in lxc-user-nic 修复了 CVE-2018-6556:lxc-user-nic
在被要求删除网络接口时,会无条件地打开用户提供的路径。
此代码路径可能被非特权用户用来检查他们无法访问的路径的存在。它还可以用来通过导致特殊内核文件(ptmx
、proc
、sys
)的(只读)打开来触发副作用。
受影响的版本是 LXC:2.0 版本高于且包括 2.0.9;3.0 版本高于且包括 3.0.0,早于 3.0.2。
Bug 修复 (LXC)¶
- 修复了 Coverity 发现的一系列 bug
- lxc-usernsexec:清理和 bug 修复
- 日志:添加 CMD_SYSINFO()
- 日志:添加 CMD_SYSERROR()
- 状态:s/sleep()/nanosleep()/
- lxclock:改进文件锁定
- lxccontainer:改进文件锁定
- lxccontainer:修复 F_OFD_GETLK 检查
- netlink:添加 __netlink_{send,recv,transaction}
- netns:分配网络命名空间 ID
- 维护者:添加 Wolfgang Bumiller
- CVE 2018-6556: verify netns fd in lxc-user-nic
- pam_cgfs:清理
- 日志:添加默认日志优先级
- 全面的:将无符号 long 传递给 prctl()
- 宏:添加新的宏头
- conf:在 EINVAL 上挂载 devpts 而不使用“max”
- 全面的:在 read() 和 write() 中处理 EINTR
- 全面的:用 pipe2() 替换 pipe()
- confile:将挂载选项拆分为标志和数据
- conf:改进 rootfs 设置
- autotools:默认使用 -Wvla -std=gnu11
- 全面的:删除 VLAs
- 全面的:用 lxc_iterate_parts() 替换 strtok_r()
- utils:添加 lxc_iterate_parts()
- apparmor:允许 start-container 更改为 lxc-**
- apparmor:更新当前配置文件
- apparmor:允许 /usr/lib* 路径用于挂载和 pivot_root
- conf:atime 标志在 userns 中被锁定
- conf:处理部分功能的设备节点
- conf:创建 /dev 目录
- autotools:构建共享和静态 liblxc
- namespace:添加将命名空间转换为标准标识符的 API
- 全面的:设置 MSG_NOSIGNAL
- 全面的:使用 mknod() 创建虚拟文件
- cgfsng:尊重 lxc.cgroup.use
- cgroups:删除 is_crucial_cgroup_subsystem()
- 全面的:删除不必要的日志前缀
- 测试:清理所有测试
- terminal:在 pty 文件描述符上设置 FD_CLOEXEC
- conf:简化 lxc_setup_dev_console()
- tools:重新设计工具
- autodev:适应 Linux 4.18 中的更改
- 日志:使用 strerror 将 DEBUG、INFO、TRACE、NOTICE 宏更改为 SYS* 宏
- 日志:添加 lxc_log_strerror_r 宏
- 网络:现在非特权 lxc 将运行 lxc.net.[i].script.up
- conf:仅在必要时使用 newuidmap 和 newgidmap
- autotools:支持交叉编译中的 tls
Bug 修复 (LXC 模板)¶
- fedora:支持 Fedora 28
- templates:opensuse:添加对 openSUSE Leap 15 的支持
- templates:opensuse:删除对 EOL 发行版的支持
- templates:lxc-opensuse.in:确保缓存已完全填充
- templates:lxc-opensuse.in:修复 openSUSE Leap 15 缓存 URL
Bug 修复 (python3 绑定)¶
- 修复 README.md 中的拼写错误
支持和升级¶
LXC 3.0.2 支持到 2023 年 6 月,是我们的当前 LTS 版本,鼓励用户更新到最新发布的 bug 修复版本。
下载¶
- 主要发布 tarball:lxc-3.0.2.tar.gz (GPG: lxc-3.0.2.tar.gz.asc)
- LXC 模板 tarball:lxc-templates-3.0.2.tar.gz (GPG: lxc-templates-3.0.2.tar.gz.asc)
- LXC python3 绑定 tarball:python3-lxc-3.0.2.tar.gz (GPG: python3-lxc-3.0.2.tar.gz.asc)
内容