Ubuntu Weekly Recipe

第671回 パッケージのアップデートとアップグレードを制御する

この記事を読むのに必要な時間:およそ 2.5 分

今回はパッケージの日々のアップデートと,Ubuntuまるごとのアップグレードを制御する方法を紹介します。

アップデートとアップグレード

Ubuntuは最新版のリリース時から(場合によってはリリース前から)パッケージのアップデートを提供しています。アップデートの理由は不具合修正や脆弱性の修正が主ではありますが,Firefoxなどアップストリームによるリリースがあったのでこれに追随するからというものもあります。

理由はさておき,パッケージのアップデートがリリースされた場合,デフォルトの設定では定期的にリポジトリ情報を更新し(換言するとapt updateを自動実行し⁠⁠,セキュリティアップデートの場合は即座に適用します。そうではない場合,1週間毎にアップデートがあることを告知します。

最新バージョンのUbuntuがリリースされた場合,通常リリース(中間リリース)の場合はアップグレードが促されるダイアログが表示されます。LTSでは次のLTSがリリースされた場合に同様の動きとなります。ということは設定を変更しない限りLTSから通常リリースへのアップグレードはできません。

今回はこのあたりの振る舞いをカスタマイズし,アップデートやアップグレードを制御する方法を紹介するのが主旨です。

なお,本稿では日々の更新をアップデート,Ubuntuの新しいバージョンがリリースされた場合に更新するのをアップグレードと呼称します。

あくまで扱うのはDebianパッケージのみであり,Snapパッケージについては特に紹介しません。自動的にアップデートされる上ロールバックも簡単にできるので,そのままにしておくのがベストでしょう。そもそもアップデートを止める仕組みはありません。

またCanonical Livepatch Serviceについても紹介しません。やや古い記事ではありますが第443回をご覧ください。現状と比較するとかなり簡単に設定できるようにはなっていますが,基本は変わりありません。

余談ですが,定期的にリポジトリ情報を更新する方法はcronではなくsystemd.timerで行われています。⁠/lib/systemd/system/apt-daily.timer」がそのファイルです。

GUIでのアップデートの設定変更

アップデートの設定は「ソフトウェアとアップデート」「アップデート」タブで行います。図1はUbuntu 20.04 LTSの「アップデート」タブですが,21.04でも設定できる項目は同じです。

図1 ⁠ソフトウェアとアップデート」「アップデート」タブ

図1

「その他のパッケージの確認対象」「すべてのアップデート」⁠セキュリティ&推奨アップデート」⁠セキュリティアップデートのみ」から選択できます。この設定を変更すると/etc/apt/sources.listを書き換えます。

「アップデートの自動確認」「毎日」⁠2日ごと」⁠毎週」⁠2週間ごと」⁠なし」から選択できます。この設定を変更すると,/etc/apt/apt.conf.d/10periodicとapt.conf.d/20auto-upgradesの「APT::Periodic::Update-Package-Lists」の値を変更します。⁠1⁠だと毎日,14だと2週間というわけです。

「セキュリティアップデートがあるとき」「すぐに表示」⁠ダウンロードを自動的に行う」⁠ダウンロードとインストールを自動的に行う」から選択できます。この値を変更すると,/etc/apt/apt.conf.d/10periodicと20auto-upgrades※1「APT::Periodic::Unattended-Upgrade」⁠APT::Periodic::Download-Upgradeable-Packages」⁠APT::Periodic::AutocleanInterval」の値を変更します。例えば「ダウンロードを自動的に行う」だと,パッケージのダウンロードは行うので「APT::Periodic::Download-Upgradeable-Packages」「1」に,インストールは行わないので「APT::Periodic::Unattended-Upgrade」「0」に,ダウンロードしたパッケージを消さないように「APT::Periodic::AutocleanInterval」「0」になります。

※1
ただし10periodicと20auto-upgradesで全く同じ設定を書き換えているわけではありません。

「その他のアップデートがあるとき」「すぐに表示」⁠1週間ごとに表示」⁠2週間ごとに表示」から選択できます。この値を変更すると,dconfの「/com/ubuntu/update-notifier/regular-auto-launch-interval」の値を変更します。ポイントは「すぐに表示」「0」であり,全く表示させたくない場合は「/com/ubuntu/update-notifier/no-show-notifications」「true」にする必要があります。

個々の項目を見ていくと,基本的にaptの設定を書き換えていることがわかります。

著者プロフィール

あわしろいくや

Ubuntu Japanese Teamのメンバー。VirtualBoxなどの翻訳を手がける。技術同人サークルteam zpn主宰。ほか原稿執筆を少々。