我使用Incrond检查文件夹中的文件更改,这会触发一个Rsync作业到我们的存储服务器。此配置是通过Puppet部署的,因此希望在目标路径中使用$HOSTNAME变量,以便将其写入自己的目录。
/path/to/backup/ IN_CLOSE_WRITE,IN_CREATE,IN_MODIFY,IN_MOVED_TO,IN_CLOSE_NOWRITE /usr/bin/rsync -t --password-file=/etc/rsyncd.secrets /path/to/backup/$# rsync://rsync@STORAGESERVER/storage/$HOSTNAME/backup/$#但是,这个主机名变量在Incrond中不可用;只将" hostname“传递到rsync路径。
如何使$HOSTNAME变量在Incrond中工作?
发布于 2018-12-11 04:34:21
我建议这个解决办法:
我不会触发实际的rsync命令,而是让incrond触发包含rsync命令的bash脚本执行,在执行过程中,您将在脚本环境中使用HOSTNAME命令。
显然,您必须先部署这个脚本,但由于您使用的是傀儡,它不应该是困难的部分。
https://serverfault.com/questions/943652
复制相似问题