systemd-gpt-auto-generator 中文手册

译者:金步国


版权声明

本文译者是一位开源理念的坚定支持者,所以本文虽然不是软件,但是遵照开源的精神发布。

其他作品

本文译者十分愿意与他人分享劳动成果,如果你对我的其他翻译作品或者技术文章有兴趣,可以在如下位置查看现有的作品集:

联系方式

由于译者水平有限,因此不能保证译文内容准确无误。如果你发现了译文中的错误(哪怕是错别字也好),请来信指出,任何提高译文质量的建议我都将虚心接纳。


手册索引 . 指令索引systemd-231

名称

systemd-gpt-auto-generator — GPT分区自动发现与挂载

大纲

/usr/lib/systemd/system-generators/systemd-gpt-auto-generator

描述

systemd-gpt-auto-generator 能够根据 GPT 分区发现规范 查找 /, /home, /srv 及 swap 分区, 并自动生成对应的 mount 与 swap 单元。 注意, 此工具不适用于非GPT分区(例如传统的MBR分区表), 也不适用于非空挂载目录。 此外,在明确配置了挂载点单元的机器上(例如已在 fstab(5) 中列出的分区), 自动生成的单元将被手动配置的单元覆盖(但是自动依赖仍然会被创建)。

此工具仅在 ESP(EFI System Partition)分区所在的物理磁盘上查找根分区。 此工具仅在根分区所在的物理磁盘上查找其他分区。 当系统使用分布式根分区(例如 btrfs RAID)时, 此工具也不会查找任何其他分区。

借助 systemd-gpt-auto-generator 工具, 可以将文件系统的配置集中到GPT分区表中, 从而避免手动配置 /etc/fstab 之类。

此工具基于分区的GUID值分辨分区的用途, 可以识别的GUID如下:

表 1. 分区类型 GUID

分区类型 GUID名称解释
44479540-f297-41b2-9af7-d131d5f0458aRoot Partition (x86)x86根分区。对于32位x86平台,ESP所在物理磁盘的第一个根分区将被挂载为 /
4f68bce3-e8cd-4db1-96e7-fbcaf984b709Root Partition (x86-64)x86-64根分区。对于64位x86-64平台,ESP所在物理磁盘的第一个根分区将被挂载为 /
69dad710-2ce4-4e3c-b16c-21a1d49abed3Root Partition (32-bit ARM)ARM32根分区。对于32位ARM平台,ESP所在物理磁盘的第一个根分区将被挂载为 /
b921b045-1df0-41c3-af44-4c6f280d3faeRoot Partition (64-bit ARM)ARM64根分区。对于64位ARM平台,ESP所在物理磁盘的第一个根分区将被挂载为 /
933ac7e1-2eb4-4f13-b844-0e14e2aef915Home Partition家分区。根分区所在物理磁盘的第一个家分区将被挂载为 /home
3b8f8425-20e0-4f3b-907f-1a25a76f98e8Server Data Partition服务器数据分区。根分区所在物理磁盘的第一个服务器数据分区将被挂载为 /srv
0657fd6d-a4ab-43c4-84e5-0933c84b4f4fSwap交换分区。根分区所在物理磁盘的所有交换分区都将被挂载。

如果 /home/srv 分区被按照LUKS格式加密, 那么将会自动创建对应的 /dev/mapper/home/dev/mapper/srv 映射设备。 注意,自动创建的设备可能会与 /etc/crypttab 中手动配置的设备发生冲突。

仅在EFI系统上 才会自动为ESP分区生成 对应的 mount 与 automount 单元(挂载到 /boot 目录)。 既然生成 automount 单元, 也就表示ESP分区仅在被访问到的时候才会被挂载。 如果明确配置了 /boot 挂载点(例如已在 fstab(5) 中列出), 或者 /boot 非空, 那么将不会自动生成相关单元。

如果将此工具与 btrfs 文件系统一起使用, 那么必须使用 btrfs subvolume set-default 命令明确设置默认子卷。

systemd-gpt-auto-generator 遵守 systemd.generator(7) 规范。

参见

systemd(1), systemd.mount(5), systemd.swap(5), systemd-fstab-generator(8), systemd-cryptsetup@.service(8), cryptsetup(8), fstab(5), btrfs(8)