我是盐堆新手。
我正在努力确保存在符号链接。
/etc/localtime:
file.symlink:
- target: /usr/share/zoneinfo/Europe/Paris
- file.exists:
- name: /usr/share/zoneinfo/Europe/Paris
当没有现有/etc/localtime
或/etc/localtime
已经是符号链接时,结果为例外。但是当/etc/localtime
是常规文件时它失败了:
----------
State: - file
Name: /etc/localtime
Function: symlink
Result: False
Comment: File exists where the symlink /etc/localtime should be
Changes:
我无法想象如何编码状态,因此在创建链接之前删除文件。任何线索?
干杯, 皮尔
答案 0 :(得分:13)
使用force=True
/etc/locatime:
file.symlink:
- target: /usr/share/zoneinfo/Europe/Paris
- force: True
# Note: file.exists is not valid here and can be removed
# file.exists:
# - name: /usr/share/zoneinfo/Europe/Paris
如果符号链接的目标存在且不是符号链接 force设置为False,状态将失败。如果force设置为True, 将删除符号链接文件中的文件或目录 为符号链接腾出空间,除非设置了backupname,否则它将被设置 被重命名