ansible常用模块之 -- parted模块 – 配置块设备分区
parted模块 – 配置块设备分区
一、摘要
- 此模块允许使用分隔命令行工具配置块设备分区。有关字段和选项的完整描述,请查看GNU分页手册。
二、参数
参数 | 选项/默认值 | 描述 |
---|---|---|
align string | · cylinder · minimal · none · optimal ⬅️ | 为新创建的分区设置对齐。 |
device string required | 块设备(磁盘)在哪里操作 | |
flags list | 必须在分区上设置的标志列表。 | |
label string | · aix · amiga · bsd · dvh · gpt · loop · mac · msdos ⬅️ · pc98 · sun | 创建一个新的磁盘标签。 |
name string | 设置分区号的名称(仅限GPT、Mac、MIPS和PC98)。 | |
number integer | 要处理的分区数量或将要创建的分区数量。 在磁盘上执行任何操作时需要执行,但获取信息除外。 | |
part_end string | Default: “100%” | 分区将以从磁盘开头的偏移量结束,即从磁盘开始的“距离”。 距离可以用分开支持的所有单元(兼容除外)指定,并且区分大小写,例如10GiB,15%。 |
part_start string | Default: “0%” | 分区将从磁盘开头开始作为偏移量,即从磁盘开始的“距离”。 距离可以用分开支持的所有单元(兼容除外)指定,并且区分大小写,例如10GiB,15%。 |
part_type string | · extended · logical · primary ⬅️ | 只能使用’msdos’或’dvh’分区表指定。 必须为’gpt’分区表指定名称。 part_type和name都不能与“sun”分区表一起使用。 |
state string | · absent · present · info ⬅️ | 是创建还是删除分区。 如果设置为 info,该模块将只返回设备信息。 |
unit string | · s · B · KB · KiB ⬅️ · MB · MiB · GB · GiB · TB · TiB · % · cyl · chs · compact | 选择当前默认单元,该单元将用于在磁盘上显示位置和容量,如果它们不是单元后缀,则解释用户给出的位置和容量。 在获取有关磁盘的信息时,总是建议指定一个单元。 |
三、示例
# 创建一个新的主分区
- name: Create a new primary partition
parted:
device: /dev/sdb
number: 1
state: present
# 移除分区编号 1
- name: Remove partition number 1
parted:
device: /dev/sdb
number: 1
state: absent
# 创建一个大小为1GiB的新主分区
- name: Create a new primary partition with a size of 1GiB
parted:
device: /dev/sdb
number: 1
state: present
part_end: 1GiB
# 为LVM创建一个新的主分区
- name: Create a new primary partition for LVM
parted:
device: /dev/sdb
number: 2
flags: [ lvm ]
state: present
part_start: 1GiB
# 关于如何读取信息并在后续任务中重用的示例
# 阅读设备信息(探询时始终使用设备)
- name: Read device information (always use unit when probing)
parted: device=/dev/sdb unit=MiB
register: sdb_info
# 从磁盘中删除所有分区
- name: Remove all partitions from disk
parted:
device: /dev/sdb
number: '{{ item.num }}'
state: absent
loop: '{{ sdb_info.partitions }}'
官方文档:https://docs.ansible.com/ansible/2.9/modules/parted_module.html#parted-module