Snapd 2.69 版本发布:全面增强系统安全与功能扩展
项目概述
Snapd 是 Canonical 公司开发的 Snap 包管理系统核心组件,它为 Linux 系统提供了安全、可靠且易于管理的软件打包和分发解决方案。通过容器化技术,Snap 包可以在不同的 Linux 发行版上运行,同时保持隔离性和安全性。Snapd 负责管理这些 Snap 包的安装、运行、更新和卸载等全生命周期操作。
版本亮点
1. 全盘加密(FDE)功能优化
2.69 版本对全盘加密功能进行了多项改进。首先重构了磁盘列表功能,使其能够基于运行模式模型和模型正确解析路径。其次修复了 snapd 在 snap-failure 模式下运行时密钥环模式不正确的问题,提升了加密存储的可靠性。
2. Snap 组件管理增强
新版本改进了 Snap 组件的管理能力,特别是支持回退到包含组件的旧版 Snap 修订版本。同时修复了当系统已安装但非当前使用的内核 Snap 进行重塑时的问题,确保内核升级和回退更加稳定可靠。
3. 实验性配置数据库(Confdb)改进
Confdb 作为实验性功能在本版本获得了多项重要更新:
- 通过 snapctl get 和 snap get 命令读取数据时现在会加载临时数据
- 重命名了相关钩子,从 {plug}-view-changed 改为 observe-view-{plug}
- 将 confdb 断言重命名为 confdb-schema
- 调整了 confdb-control 断言中的操作符分组
- 新增了 confdb-control API
这些改进使得配置管理更加灵活和强大。
4. 安全功能强化
AppArmor 增强
- 扩展了探测功能,现在可以检测文件和目录的存在
- 简化了实验性的提示功能监听器
- 为元数据标签功能添加了解析器支持探测(当前禁用)
- 实现了通知协议 v5(当前禁用)
非SUID snap-confine
开始实施第一阶段计划,用能力(capabilities)替代 setuid 来获得所需权限,这是提升系统安全性的重要一步。
动态安全配置文件
引入了初步支持动态更新安全配置的功能,为未来更灵活的安全策略管理奠定基础。
5. 机密虚拟机支持
针对机密虚拟机环境做了专门优化:
- sysroot.mount 现在由 snap-bootstrap 动态创建,而非在 initramfs 中使用静态文件
- 新增了 Snap 完整性 API 的新实现
6. 其他重要改进
- 为 /v2/icons 添加了 Snap 图标回退机制,无需运行时网络访问
- 新增 eMMC 设备更新支持
- 改进对使用 /usr/libexec/snapd 的主机系统(如 Arch Linux、openSUSE)的支持
- 自动检测未知发行版上的 Snap 挂载目录位置
- 修改 snap-confine AppArmor 模板以允许所有 glibc HWCAPS 子目录,防止启动错误
问题修复
2.69 版本修复了多个重要问题:
- 修复了 snap-bootstrap 从 /sysroot/writable/system-data 挂载内核 Snap 的问题
- 解决了 snap-bootstrap 忙循环问题
- 修正了时间编码问题,在 Go 1.24+ 上使用 omitzero 替代 omitempty
- 修复了 openSUSE 上通过 permctl 设置 snapd 权限的问题
- 修正了 Snap 结构体 JSON 标签拼写错误
- 解决了 Snap 打包时配置钩子权限检查的文件模式不正确问题
- 确保 gadget Snap 重新安装时保留现有分区大小
- 修复了重新执行 snapd 工具时的命令行更新问题
- 改进了 'snap validate' 命令的输出格式和错误处理
- 解决了 snapd-confine 在不同架构间 time_t 大小差异的问题
接口改进
多个接口获得了功能增强和问题修复:
- polkit 接口:支持自定义 polkit 规则
- opengl 接口:修复了当 xorg 被 AppArmor 限制时的 NVIDIA GLX 问题
- log-observe 接口:添加了缺失的 udev 规则
- hostname-control 接口:修复了在 core24 中对 hostnamectl 的调用
- network-control 接口:允许移除创建的网络命名空间
- scsi-generic 接口:重新启用 scsi-generic 插头的基础声明
- u2f 接口:新增对 Arculus AuthentiKey 的支持
构建优化
- 移除了不再需要的 udev 构建依赖
- 添加了缺失的 systemd-dev 依赖
- 使用 nomanagers 标签构建 snap-bootstrap,减少 1MB 大小
- 更新 secboot 并修改 snap-bootstrap 移除 go 模板使用,减少 4MB 大小
使用限制
新版本禁止打包和安装具有特定配置钩子的 snapd、base 和 os Snap,这是出于安全考虑的重要限制。
总结
Snapd 2.69 版本带来了全面的安全增强和功能扩展,特别是在全盘加密、Snap 组件管理、配置数据库和接口支持等方面。这些改进不仅提升了系统的安全性和稳定性,也为开发者提供了更强大的工具和更灵活的管理选项。对于使用 Snap 包管理系统的 Linux 用户和开发者来说,升级到 2.69 版本将获得更完善的功能体验和更可靠的安全保障。
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00- DDeepSeek-OCR暂无简介Python00
openPangu-Ultra-MoE-718B-V1.1昇腾原生的开源盘古 Ultra-MoE-718B-V1.1 语言模型Python00
HunyuanWorld-Mirror混元3D世界重建模型,支持多模态先验注入和多任务统一输出Python00
AI内容魔方AI内容专区,汇集全球AI开源项目,集结模块、可组合的内容,致力于分享、交流。03
Spark-Scilit-X1-13BFLYTEK Spark Scilit-X1-13B is based on the latest generation of iFLYTEK Foundation Model, and has been trained on multiple core tasks derived from scientific literature. As a large language model tailored for academic research scenarios, it has shown excellent performance in Paper Assisted Reading, Academic Translation, English Polishing, and Review Generation, aiming to provide efficient and accurate intelligent assistance for researchers, faculty members, and students.Python00
GOT-OCR-2.0-hf阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00- HHowToCook程序员在家做饭方法指南。Programmer's guide about how to cook at home (Chinese only).Dockerfile013
Spark-Chemistry-X1-13B科大讯飞星火化学-X1-13B (iFLYTEK Spark Chemistry-X1-13B) 是一款专为化学领域优化的大语言模型。它由星火-X1 (Spark-X1) 基础模型微调而来,在化学知识问答、分子性质预测、化学名称转换和科学推理方面展现出强大的能力,同时保持了强大的通用语言理解与生成能力。Python00- PpathwayPathway is an open framework for high-throughput and low-latency real-time data processing.Python00