24.7. 修改分区模式
您可以修改分区模式,以更改分区大小、创建新分区或删除现有分区。使用以下环境变量来定义新的分区模式:
$ export DIB_BLOCK_DEVICE_CONFIG='<yaml_schema_with_partitions>'
BIOS 示例
以下 YAML 结构展示了修改后的逻辑卷分区布局,该布局拥有充足的空间,可拉取 overcloud 容器镜像:
export DIB_BLOCK_DEVICE_CONFIG='''
- local_loop:
name: image0
- partitioning:
base: image0
label: mbr
partitions:
- name: root
flags: [ boot,primary ]
size: 40G
- lvm:
name: lvm
base: [ root ]
pvs:
- name: pv
base: root
options: [ "--force" ]
vgs:
- name: vg
base: [ "pv" ]
options: [ "--force" ]
lvs:
- name: lv_root
base: vg
extents: 23%VG
- name: lv_tmp
base: vg
extents: 4%VG
- name: lv_var
base: vg
extents: 45%VG
- name: lv_log
base: vg
extents: 23%VG
- name: lv_audit
base: vg
extents: 4%VG
- name: lv_home
base: vg
extents: 1%VG
- mkfs:
name: fs_root
base: lv_root
type: xfs
label: "img-rootfs"
mount:
mount_point: /
fstab:
options: "rw,relatime"
fsck-passno: 1
- mkfs:
name: fs_tmp
base: lv_tmp
type: xfs
mount:
mount_point: /tmp
fstab:
options: "rw,nosuid,nodev,noexec,relatime"
fsck-passno: 2
- mkfs:
name: fs_var
base: lv_var
type: xfs
mount:
mount_point: /var
fstab:
options: "rw,relatime"
fsck-passno: 2
- mkfs:
name: fs_log
base: lv_log
type: xfs
mount:
mount_point: /var/log
fstab:
options: "rw,relatime"
fsck-passno: 3
- mkfs:
name: fs_audit
base: lv_audit
type: xfs
mount:
mount_point: /var/log/audit
fstab:
options: "rw,relatime"
fsck-passno: 4
- mkfs:
name: fs_home
base: lv_home
type: xfs
mount:
mount_point: /home
fstab:
options: "rw,nodev,relatime"
fsck-passno: 2
'''
使用此示例 YAML 内容作为镜像分区模式的基础。修改分区大小和布局以符合您的需求。
注意
您必须为镜像定义正确的分区大小,因为部署后将无法调整其大小。
UEFI 示例
以下 YAML 结构展示了修改后的逻辑卷分区布局,该布局拥有充足的空间,可拉取 overcloud 容器镜像:
export DIB_BLOCK_DEVICE_CONFIG='''
- local_loop:
name: image0
- partitioning:
base: image0
label: gpt
partitions:
- name: ESP
type: 'EF00'
size: 200MiB
- name: BSP
type: 'EF02'
size: 1MiB
- name: ROOT
type: '8300'
size: 100%
- mkfs:
name: fs_esp
base: ESP
type: vfat
mount:
mount_point: /boot/efi
fstab:
options: "defaults"
fsck-passno: 1
- mkfs:
name: fs_root
label: "img-rootfs"
base: ROOT
type: xfs
mount:
mount_point: /
fstab:
options: "defaults"
fsck-passno: 1
'''
使用此示例 YAML 内容作为镜像分区模式的基础。修改分区大小和布局以适合您的环境。
注意
在部署前,您必须为镜像定义正确的分区大小,因为部署后无法调整它们的大小。