原先在 /etc/rc.local 執行,但不知為何 rsync 任務一直未被執行,且開機成功後,用 root 權限或其他角色測試執行 /etc/rc.local 卻又一切正常。有一說法是一開始可能網路未初始化,但很妙地我在 /etc/rc.local 執行 git pull 又很正常。

暫時還搞不懂出錯的地方,外加機器重開機太耗時間了 XD 先拿 crontab @reboot 的方式來頂替了。

# m h dom mon dow command
@reboot sudo /path/rsync_job.sh &


有這個需求是在 AWS 使用 Auto Scaling 時,機器會因為條件式而被關閉、重開新的,為了確保新開的機器上頭的程式碼仍夠是最新版,所以分別試用 git pull 跟 rsync 來更新。