我们的一台服务器上安排了大约 20-25 个不同的 cron 任务。通常,我们会定期使用以下方法将 cron 任务签入到 repo 中的文件中:crontab -l > cron.jobs
在启动新服务器(该服务器是前一个服务器的副本(就操作系统和部署的代码库而言))时,是否可以从包含有效 cron 作业的文件中获取新服务器的 cron 作业?
答案1
您应该指定一个用户名,并将系统 crontab 文件放置在其中/etc/cron.d
,例如
* * * * * USERNAME COMMAND
该命令crontab -l
会转储当前用户的 crontab,但不包含用户名。如果要重新使用它,可以在新系统上以任何用户身份导入它
crontab -u USER1 -l | ssh USER2@NEW_SYSTEM "crontab -u USER2 -"
或者将转储复制cron.jobs
到此系统
crontab -u USER1 -l > cron.jobs
crontab -u USER2 cron.jobs
答案2
只需将文件放入即可/etc/cron.d
。