Debian

使用 bash 腳本和 cron 自動更新

  • December 7, 2018

我正在嘗試自動化 debian 系統的更新,而不進行升級。然後我會發送一封電子郵件給我,每次有可用的升級。

我試過用 cron-apt 來做,但我真的不喜歡配置的組織方式,這就是為什麼我更喜歡使用(更乾淨的)cron 作業來啟動腳本。

環顧四周,我發現了那段程式碼(不是我的):

if [[ `apt-get update 2>&1 | grep Get` ]]; then
 if [[ `apt-get --simulate dist-upgrade 2>&1 | grep Inst` ]]; then
   apt-get --simulate dist-upgrade
 fi
fi

據我了解,該腳本會更新本地軟體包列表,並模擬最終升級。

現在,如果可能的話,我想通過電子郵件將更新和升級模擬的輸出發送給我。為了達到我可以使用郵件命令的目的:

發送第一封電子郵件:

apt-get 更新 | mail -s “每日更新報告” me@example.com

第二封電子郵件:

apt-get –simulate dist-upgrade | mail -s “每日昇級模擬報告” me@example.com

我的主要問題是是否有更好的方法來做這一切..?

其次,我嘗試過僅在一封電子郵件中發送所有內容都沒有成功,有人知道我該怎麼做嗎?

不要重新發明輪子。

apt-get 安裝[apticron](https://packages.debian.org/sid/apticron)

Apticron 是一個簡單的腳本,它每天發送有關待處理包更新(例如安全更新)的電子郵件,正確處理由 dselect 和 aptitude 保留的包。

引用自:https://unix.stackexchange.com/questions/125139