[ubuntu] crontab 用法 與 rsync 定時備份資料庫與系統設定等檔案

在 ubuntu 中,我們若需要建立定時的排程工作時(如:定時備份),可以使用 crontab 加入例行性排程,系統將會會定時執行相對應的工作。 在 ubuntu 中,決定使用者是否可以編輯自己 cron job 的設定檔為 /etc/cron.allow 在此檔案中的使用者帳號將可編輯 cron job,若不在其中則無法使用。 /etc/cron.deny 在此檔案中的使用者帳號將不可使用 crontab,若不在其中則可以使用。 例: PS.  預設會以 cron.allow 為優先。因此,通常只會選擇其中之一( cron.allow 或 cron.deny )做限制 接下來,介紹一下如何使用 crontab crontab -u [username] :只有 root 可以使用這個參數,可以新增或刪除其他使用的 cron job -e:編輯自己的 cron job -l:列出目前的 corntab -r:移除目前所有的 cron job 來看看如何編輯自己的 cron job, crontab -e #  m(分鐘) h(小時)  dom(日)  mon(月) […]

Continue reading


[ubuntu] rsync 用法及備份教學

以前做備份都是用 tar 在打包,在本機上移動到其他的磁碟,都沒想過把備份檔透過網路傳輸至其他機器備份等等。 因此這邊來介紹 rsync 這個指令,可以透過 rsh、ssh 將檔案做鏡像備份及增量備份至遠端機器。 rsync 參數 -v:觀察模式,列出更多資訊(檔案名稱等等)。 -q:與 -v 相反,僅列出錯誤訊息。 -r:遞迴複製,用在多層目錄及檔案時。 -u:僅更新檔案,增量備份的作法。若目的地檔案較新,則不更動。要注意可能覆寫舊資料! -l:保留 symbolic link  的屬性,非檔案內容。 -p:保持原有檔案的屬性(rwx)。 -g:保持原有檔案的擁有群組。 -o:保持原有檔案的擁有者。 -D:保持原有檔案的裝置屬性。 -t:保持原有檔案的時間屬性。 -I:忽略檔案的 mtime,在增量備份比對時會比較快速。 -z:資料傳輸時,加上壓縮。 -e:使用的通道協定。如:-e ssh -a:相當於 -rlptgoD rsync 的三種模式 本機上備份(複製),其實就相當於cp,只是你可以顯示更多資訊 如:將 np 資料夾底下的所有東西複製至 tmp 資料夾 rsync -av np/ tmp/ 透過 rsh 或 ssh 協定在 不同機器間傳輸備份 如:將遠端機器的 etc 資料夾備份至此機器的 tmp 資料夾 […]

Continue reading