linux - 如何使用 Ansible-playbook 在磁盘的 `/etc/fstab` 中追加条目?

标签 linux bash ansible swap fstab

我正在使用下面的剧本将条目写入/etc/fstab。并创建交换文件:

---

- name: Configure SWAP
  hosts: localhost
  become: yes
  become_user: root

  tasks:
    - name: Configuring a SWAP
      command: "{{ item }}"
      loop:
        - mkswap -f "{{ ebs_swap }}"
        - echo "UUID=$(blkid -s UUID -o value {{ ebs_swap }})   swap    swap   defaults  0   0" | sudo tee -a /etc/fstab
        - swapon -a
      register: output

    - name: Display the variable
      debug:
       msg: "{{ output}}"

我们使用命令运行它:ansible-playbook mount.yml -e "ebs_swap=/dev/xvdj"

操作:

                "item": "echo \"UUID=$(blkid -s UUID -o value /dev/xvdj)   swap    swap   defaults  0   0\" | sudo tee -a /etc/fstab",
                "rc": 0,
                "start": "2020-04-09 14:51:23.890047",
                "stderr": "",
                "stderr_lines": [],
                "stdout": "UUID=$(blkid -s UUID -o value /dev/xvdj)   swap    swap   defaults  0   0 | sudo tee -a /etc/fstab",
                "stdout_lines": [
                    "UUID=$(blkid -s UUID -o value /dev/xvdj)   swap    swap   defaults  0   0 | sudo tee -a /etc/fstab"

谁能告诉我为什么我无法在 /etc/fstab 中获取条目并且当我尝试运行上述命令时它会成功。

最佳答案

我已经通过使用以下方法解决了这个问题:

- name: Dispaly uuid & store in variable
  command: blkid -s UUID -o value {{ ebs_swap }}
  register: uuid_swap

- name: Add the below lines
  blockinfile:
    path: /etc/fstab
    state: present
    block: |
      UUID={{ uuid_swap.stdout }}   swap      swap defaults                         0   0

关于linux - 如何使用 Ansible-playbook 在磁盘的 `/etc/fstab` 中追加条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61134660/

相关文章:

linux - 使用 sed 将一个单词替换为两个单词和一个空格

linux - 为什么在 fork 之后调用 setsid?

linux - 为什么 munmap 需要一个长度作为参数?

linux - Crontab @reboot 不工作

python-3.x - 升级 ansible 以在 Controller 上使用 python3

linux - 来自 kleinanzeigen.ebay.de 的 wget 文章和图片返回 'ERROR 429: Too many requests'

json - 从 VBoxManage 输出中解析冒号分隔的表格数据

bash - 为什么测试会说意外的括号?

python - 如何找到未列出或丢失的号码?

ansible - 在 Ansible 中设置变量值时如何使用算术?