在服务器上的所有设备上可用 space

Get available space on ALL devices on server

  tasks:
    - name: Disk usage from device
      shell: df -h /dev/(device path) --output\=pcent | tail -1 && df -h /dev/(device path) --output\=pcent | tail -1
      register: devicespace
    - debug:
        msg: "{{ devicespace.stdout_lines }}"

目前,我必须对服务器上的每个设备路径进行硬编码。我正在测试的这个特定服务器有两个设备 我如何更改这个脚本,以便它可以在服务器上的所有设备上拉出可用的 space。我试过 /dev/* 但这似乎不起作用。最终目标是在服务器上的所有设备上提取可用 space 并在可用 space 少于 10% 时发送电子邮件。

df 有 --output 到 select 要打印的字段。然后可以使用 grep 等进一步处理:

tasks:
- name: Disk usage from device
  shell: df -h --output=source,pcent | grep '^/dev
  register: devicespace
- debug:
    msg: "{{ devicespace.stdout_lines }}"