ansible挂载模块找不到特殊设备

ansible mount module can't find special device

我正在尝试将位于 /dev/vdb/ 下的已连接和格式化的硬盘安装到 /data。这是剧本部分:

---
- name: setup dada2 
  hosts: tnt
  remote_user: ubuntu
  become: yes
  become_method: sudo

  tasks: 
    - name: Create the file system
      filesystem:
        fstype: ext4
        dev: /dev/vdb

    - name: Mount the created filesystem
      mount:
        path: /data
        src: /dev/vdb/
        fstype:  ext4
        state: mounted

    - name: Make /data available for everyone
      file:
        path: /data
        state: directory
        mode: 0775

但是,我收到错误消息:

TASK [Mount the created filesystem] ********************************************
fatal: [x.x.x.x]: FAILED! => {"changed": false, "msg": "Error mounting /data: mount: /data: special device /dev/vdb/ does not exist (a path prefix is not a directory).\n"}

但是 /dev/vdb 确实存在并且 运行 sudo mount /dev/vdb /data 工作正常。任何想法可能是什么原因造成的?我没有使用 /etc/fstab 的经验,但这个名字经常出现,所以我研究了一下。它说:

LABEL=cloudimg-rootfs   /        ext4   defaults        0 0
LABEL=UEFI      /boot/efi       vfat    defaults        0 0
/dev/vdb/ /data ext4 defaults 0 0

对此有什么想法吗?

编辑:

这里描述了一个类似的错误:,但我按照建议设置了 fstype,但我不知道我必须将什么条目添加到 fstab 以及如何添加?

问题是 /dev/vdb/

中的尾部斜线
- name: Mount the created filesystem
  mount:
    path: /data
    src: /dev/vdb/
    fstype:  ext4
    state: mounted

正确

- name: Mount the created filesystem
  mount:
    path: /data
    src: /dev/vdb
    fstype:  ext4
    state: mounted

手动删除 /etc/fstab 中的行

/dev/vdb/ /data ext4 defaults 0 0