在这个问题中提出了使用 crontab 在两台机器上调度 netcat 命令的想法,但受访者都指责提问者并scp
转而谈论。
假设我对这些影响没问题,我将如何找出这个设置出了什么问题?出于测试目的,我在当地时间 13:45 同步这两个作业。两台计算机位于同一本地时区。
目标 crontab:
45 13 * * * nc -l -p 1234 > /path/to/backup-$(date +%F).tar.bz2
源 crontab:
45 13 * * * /path/to/backup_script.sh
源备份脚本:
sleep 5 # to ensure the destination is already listening
tar -cvpj --exclude-vcs /path/to/source/files | nc -N dest 1234
单独(在 crontab 之外),listen 命令和备份脚本工作。据我了解,目的地在收到 EOF 之前不会停止收听。然而,它的收听端似乎没有在应该收听的时候收听。我可以手动启动它,源的计划作业将发送文件,但我无法让目标在指定的时间收听。