我正试图将位于/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
对此有什么想法吗?
编辑:
此处描述了类似的错误:Error in Mount Module in Ansible,但是我按照建议的方式设置了fstype,但我不知道我必须向fstab中添加什么条目以及如何添加?
答案 0 :(得分:1)
问题是/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