postmarketOS 项目推出了 Duranium,这是一个针对智能手机的全新升级版本。

postmarketOS 项目的开发者正在开发分发 Linux 针对移动设备,他们宣布推出一个原子级更新的发行版。新版本名为 Duranium,其显著特点是将系统作为一个整体交付,而非拆分成多个软件包。据悉,新版本秉承了“设备即插即用”的理念,用户无需了解终端或系统功能即可轻松上手。

/usr 分区中的系统环境以只读方式挂载,使用 EROFS 文件系统,并在每次启动时通过数字签名进行验证。/usr 分区大小为 5GB。dm-verity 用于验证 /usr 分区中数据的完整性,如果检测到内容被修改,则会阻止启动。验证哈希值嵌入在统一内核映像 (UKI) 中,UKI 集成了从 UEFI 启动内核的处理程序(UEFI 启动存根)和内核映像。 Linux initrd 系统环境加载到内存中,用于在挂载根文件系统之前进行初始化。UKI 镜像被格式化为 PE 格式的单个可执行文件,并由 UEFI 引导加载程序调用。

除了 /usr 目录之外,所有其他目录都属于根分区,该分区可写,并且在重启和更新后仍然保留。根分区的内容使用 LUKS2 加密,这会增加硬件要求。加密的根文件系统在首次启动或恢复出厂设置后创建。默认情况下,会创建一个空密钥,从而允许自动解锁加密分区。初始设置向导和配置程序会提示用户设置解密密码。

默认设置作为系统映像的一部分存储在 /usr/share/factory/etc 目录中。首次启动时,系统会在 /etc 目录中创建指向 /usr/share/factory/etc 目录中所有文件的符号链接,但 passwd、group、shadow、fstab、machine-id 和 hostname 文件除外。如果在运行过​​程中需要更改设置,则会将符号链接替换为文件的副本。

更新是通过替换整个系统映像来安装的。系统会在驱动器上创建两个相同的根分区——活动分区和备用分区。新更新会安装在备用分区上,而不会影响活动分区。更新验证通过且系统成功重启后,两个分区会进行交换——安装了更新的分区变为活动分区,而之前处于活动状态的分区则切换为备用分区,等待下一次更新。如果在更新后出现启动问题,系统会自动回滚到之前的版本。

这种方法显著简化了调试和问题诊断,因为开发人员无需在软件包级别重新创建用户的系统并考虑现有的软件包版本组合,即可准确地重现崩溃状态。缺点是硬件要求较高,这使得 Duranium 无法在所有 postmarketOS 支持的设备上使用。

Duranium 系统镜像基于 Alpine 的 postmarketOS,并以单个软件包为基础构建而成。 Linux标准 C 库 Musl 和 BusyBox 工具套件。postmarketOS 和 Duranium 版本在组成上几乎相同,但交付方式不同。systemd-sysupdate、systemd-repart 和 systemd-verity-setup 组件用于创建、安装和更新系统镜像。

其他应用程序可以通过 Flatpak 格式安装,也可以使用 Coldbrew 软件包管理器安装。Coldbrew 允许您从 Alpine 软件仓库安装软件包。 Linux 到用户主目录。运行时,此类软件包会使用 bubblewrap 工具进行隔离。

来源: opennet.ru

为具有 DDoS 保护、VPS VDS 服务器的站点购买可靠的主机 🔥 购买具备 DDoS 防护的可靠网站托管服务,包括 VPS 和 VDS 服务器 | ProHoster