我想启用这样的 fstp 服务器的日志记录:https ://serverfault.com/a/74234/90324
但是盐什么也没做。我把它简化为:
enable_logging_of_sftp:
file.replace:
- name: /etc/ssh/sshd_config
- pattern: Sxxxxubsystem
- repl: Syyyubsystem
- ignore_if_missing: False
尽管如此,盐说:
ID: enable_logging_of_sftp
Function: file.replace
Name: /etc/ssh/sshd_config
Result: True
Comment: No changes needed to be made
Started: 11:09:24.356010
Duration: 15.231 ms
Changes:
我不明白这一点。当然Sxxxxubsystem
并Syyyubsystem
没有在/etc/ssh/sshd_config
。
由于 ignore_if_missing is missing is False (这是默认的任何方式),我想我应该收到一条错误消息。
pattern
如果文件中且不repl
在文件中,为什么没有错误消息?
由于我误读了文档,因此出现了上述问题。这是处理我的用例的后续问题:Salt: Raise Error if file.replace did not find anything to replace
如果您的文件存在,您将永远不会收到错误,即使文件中不存在该模式。
引用此页面https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html#salt.states.file.replace
如果你想做的是检测你的模式何时不存在,我不知道你该怎么做。
append_if_not_found
但是即使模式不存在,您也可以查看参数以插入数据。