#再起動はあくまで再起動だけ
CentOS8を毎日定時に再起動させたいんだよなあ の記事でCentOS8君を毎日再起動させる環境を作りました。
でも一つ気づいたことがありました。
あ、この子、再起動しかしてないわ…
そりゃそうだよね。。再起動でパッケージまで自動更新されたら面倒な場合もあるもんね。。
(依存関係とか宗教上の理由とかで あえてパッケージの更新をさせていない のが崩れちゃう)
ということでパッケージ更新のスクリプトを日次の再起動に組み込むことにしました。
#まずはどんな更新が来ているか確認
下記ね。
dnf check-update
ということで、 dnf
コマンドでパッケージの更新まわりのあれやこれやを操作できます。
#ゴリラアップデート
ゴリラアップデートとは…
何でもいいから来てるの全部アップデートしろや!後のことは何とかしてやるぜ!
という強者のみに許された力強い更新方法です。
dnf upgrade -y --allowerasing
- 普通は
upgrade
の後にパッケージ名を指定するのですが、それを書かないことで 全てのパッケージ を対象にできます。 -
-y
のオプションを付けることで『実行していいですか?』の確認のステップをすっ飛ばします。 -
--allowerasing
のオプションを付けることで『依存関係解決の為にインストール済パッケージの削除も辞さない覚悟』をCentOS8君に伝えています。(これが無いと依存関係解決の必要が出た時に『これどうします?』的なエラーになり、アップデートが走りません)
#オランウータンアップデート
オランウータンアップデートとは…
セキュリティとか重要な更新だけはひとまず自動更新!それ以外は『ちょ、まてよ!』で更新しない
という賢者的な更新方法です。
dnf upgrade-minimal -y --security
-
upgrade-minimal
を付けることで 重要な更新のみ に限定しています。 -
--security
を付けることでセキュリティ更新が必要なパッケージのみに絞り込みしています。 -
--allowerasing
を付けていないので、依存関係解決の必要が出たらアップデートは走りません。
#蛇足
お家サーバーとか開発サーバーなら、下記のような使い方がバランスが取れていいかなと思います。
- セキュリティや重要なものは自動で更新。
- 上記以外は更新内容をテキストに書き出す or メール等で通知して、更新するかどうかは個別に検討。
#参考サイトさん
https://qiita.com/yasushi-jp/items/0dc7f413632927f92286
https://www.atmarkit.co.jp/ait/articles/2001/09/news018.html
https://www.atmarkit.co.jp/ait/articles/2002/06/news010.html
https://blog.luispc.com/entry/2019/12/05/214513
#バージョン
CentOS Linux release 8.3.2011