当前位置: 首页 > 文档资料 > systemd 中文手册 >

systemd-gpt-auto-generator 中文手册

优质
小牛编辑
138浏览
2023-12-01

名称

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分区详解,可以参考UEFI 规范 第五章。注意,此工具不适用于非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所在物理磁盘的第一个根分区将被挂载为 /
993d8d3d-f80e-4225-855a-9daf8ed7ea97Root Partition (Itanium/IA-64)安腾(IA-64)根分区。对于64位IA-64平台,ESP所在物理磁盘的第一个根分区将被挂载为 /
933ac7e1-2eb4-4f13-b844-0e14e2aef915Home Partition家分区。根分区所在物理磁盘的第一个家分区将被挂载为 /home
3b8f8425-20e0-4f3b-907f-1a25a76f98e8Server Data Partition服务器数据分区。根分区所在物理磁盘的第一个服务器数据分区将被挂载为 /srv
0657fd6d-a4ab-43c4-84e5-0933c84b4f4fSwap交换分区。根分区所在物理磁盘的所有交换分区都将被挂载。
c12a7328-f81f-11d2-ba4b-00a0c93ec93bEFI System Partition (ESP)根分区所在物理磁盘的第一个 ESP 分区将被挂载为 /boot/efi (详见后文)

此生成器能够理解下列分区属性标记:

表 2. 分区属性

名称适用于解释
GPT_FLAG_READ_ONLY0x1000000000000000/, /srv, /home只读挂载
GPT_FLAG_NO_AUTO0x8000000000000000/, /srv, /home不自动挂载
GPT_FLAG_NO_BLOCK_IO_PROTOCOL0x0000000000000002ESP不自动挂载

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

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

如果将此工具与 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)