Мне нужно написать playbook, чтобы заменить строку lock_dir = "/ var / lock / lvm"
на lock_dir = "/ run / lock"
в /etc/lvm/lvm.conf
с использованием ansible
/root # cat /etc/lvm/lvm.conf | grep locking_dir | grep -v '#'
locking_dir = "/var/lock/lvm"
в
locking_dir = "/run/lock"
В качестве специальной команды -Специальная команда:
ansible '<hosts>' -m lineinfile -a "dest=/etc/lvm/lvm.conf backrefs=yes regexp='^(locking_dir)' line='\1 = \"/run/lock\"' state=present"
Как часть пьесы:
- lineinfile:
dest: /etc/lvm/lvm.conf
backrefs: yes
regexp: '^(locking_dir)'
line: '\1 = \"/run/lock\"'
state: present
Я полагаю, что lvm.conf
будет иметь только одну строку, начинающуюся с locking_dir
, поэтому я не удосужился использовать регулярное выражение для сопоставления всей строки. В противном случае регулярное выражение было бы чем-то вроде'^locking_dir = \"/var/lock/lvm\"'