bashスクリプトとcronを使用した自動更新

bashスクリプトとcronを使用した自動更新

アップグレードせずに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

私が知る限り、このスクリプトはローカルパッケージのリストを更新し、最終アップグレードをシミュレートします。

可能であれば、更新されアップグレードされたシミュレーションの結果を電子メールで受け取りたいと思います。これを防ぐために、mailコマンドを使用できます。

最初のメールを送信:

apt-getアップデート| mail -s 「毎日更新レポート」[Eメール保護]

2番目のEメール:

apt-get --simulate dist-upgrade mail -s 「毎日のアップグレードシミュレーションレポート」[Eメール保護]

私の主な質問は、これをすべて行うためのより良い方法がありますか?

第二に、1つの電子メールですべてのコンテンツを送信しようとしましたが、成功しませんでした。どうすればいいのか知っている人はいますか?

答え1

ホイールを再発明しないでください。

適切な設置エプティクロン

Apticronは、保留中のパッケージアップデート(セキュリティアップデートなど)に毎日電子メールを送信し、dselectとaptitudeを介して保留パッケージを正しく処理する簡単なスクリプトです。

関連情報