-
主任务:
- 使用
include_tasks
模块包含tasks.yml
文件中的任务,并对diskParamList
列表中的每个磁盘参数执行这些任务。
- 使用
---
- hosts: all
gather_facts: no
tasks:
- include_tasks: tasks.yml
with_items: "{{ diskParamList }}"
- 子任务:
-
- 检查文件系统:使用
blkid
命令检查指定磁盘上是否已存在文件系统。 - 创建文件系统:如果磁盘上没有文件系统,则使用
mkfs
命令创建指定类型的文件系统。 - 检查
/etc/fstab
:使用grep
命令检查指定磁盘是否已配置在/etc/fstab
文件中。 - 挂载磁盘:如果磁盘未配置在
/etc/fstab
中,则使用mount
模块将磁盘挂载到指定目录。
- 检查文件系统:使用
使用示例:
ansible-playbook -i inventory_file disk_management.yml -e "diskParamList=[{'deviceName': '/dev/sdb1', 'fsType': 'ext4', 'mountDir': '/mnt/data1'}, {'deviceName': '/dev/sdb2', 'fsType': 'xfs', 'mountDir': '/mnt/data2'}]"