Debian の無人アップグレードの完全ガイド

  • Unattended-upgrades を使用すると、Debian のセキュリティ更新を自動化できます。
  • アップグレード対象を定義するには、/etc/apt/apt.conf.d/50unattended-upgrades で設定します。
  • アップグレードは、/var/log/unattended-upgrades/ のログを介してスケジュールおよび監視できます。
  • パッケージを除外したり、電子メール通知を受信したりすることも可能です。

無人アップグレード

Debian上で動作するサーバーやシステムの管理には、セキュリティと安定性を確保するための継続的なメンテナンスが必要です。このメンテナンスの重要な要素の一つが、パッケージとセキュリティパッチの更新です。しかし、これらの更新を手動で行うのは面倒で、見落としが発生しやすいものです。そこで、Debianは、このプロセスを自動化する「unattended-upgrades」ツールを提供しています。

このガイドでは、 Debian で自動アップデートを設定および管理する方法を詳しく解説します。適切なパッケージのインストール方法、ニーズに合わせた設定方法、そして動作状況を監視し、すべてが正しく機能していることを確認する方法を学びます。

unattended-upgrades とは何ですか? また、何に使用されますか?

Unattended-upgradesは、DebianおよびUbuntuなどの派生ディストリビューションにセキュリティアップデートやその他のパッケージを自動的に適用するために設計されたパッケージです。Ubuntuでは、数バージョン前からデフォルトで有効になっています。その目的は、重要なアップデートの自動インストールを容易にすることで、手動によるシステム管理の必要性を減らすことです。

このツールは、手動操作なしで常に最新の状態を維持する必要のあるサーバーで特に役立ち、脆弱性を最小限に抑え、安定した環境を確保します。さらに、自動更新の利用は、TailsやPop!_OSなどの様々なディストリビューションで人気が高まっており、これらのディストリビューションもシステムセキュリティを維持するために同様のソリューションを実装しています。

無人アップグレードのインストール

unattended-upgradesをインストールするには、ターミナルで次のコマンドを実行するだけです。

sudo apt install 無人アップグレード

インストール後、以下のコマンドで初期設定を実行することをお勧めします。

sudo dpkg-reconfigure -plow 無人アップグレード

これにより、自動更新を有効にするための対話型ウィザードが開きます。

注:このサービスは、より新しいバージョンの Debian では既にインストールされ、実行されている可能性があります。

無人アップグレードの設定

自動更新の動作は、設定ファイル/etc/apt/apt.conf.d/50unattended-upgradesで定義されています。ここで、自動的に適用するリポジトリと更新の種類を指定できます。

特定のソースからの更新を許可する

設定ファイル内には、 「Unattended-Upgrade::Allowed-Origins」というセクションがあります。デフォルトでは、このリストにはセキュリティ更新プログラムのみが含まれています。

無人アップグレード::許可されたオリジン { "${distro_id}:${distro_codename}-security"; };

一般的なシステムアップデートなど、その他のアップデートを含めたい場合は、次の行を追加してください。

無人アップグレード::許可されたオリジン { "${distro_id}:${distro_codename}"; "${distro_id}:${distro_codename}-updates"; };

自動更新からパッケージを除外する

自動更新したくないパッケージがある場合は、ブラックリストに追加できます。同じ設定ファイル内で、「Unattended-Upgrade::Package-Blacklist」セクションを探し、除外したいパッケージを追加してください。

無人アップグレード::パッケージブラックリスト { "linux-image"; "apache2"; };

メール通知を設定する

アップデートが適用された際に通知を受け取りたい場合は、設定でこのオプションを有効にしてください。

無人アップグレード::メール"[email protected]";

エラー発生時のみ通知を受け取るように設定することもできます。

Unattended-Upgrade::MailOnlyOnError "true";

アップデート管理の詳細については、Debianが将来のバージョンで自動アップデートをどのように実装するかを参照してください。

更新の頻度とスケジュール

自動更新の実行頻度を定義するには、ファイル/etc/apt/apt.conf.d/20auto-upgradesを編集し、以下の内容が含まれていることを確認してください。

APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1"; APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::AutocleanInterval "7";

このファイルでは次のことが定義されています。

  • 更新リストは毎日更新されます(1).
  • 無人更新は毎日実行されます。
  • ダウンロードされたパッケージは毎週削除されます。

さまざまなディストリビューションで自動更新を実装する方法についてさらに詳しく知りたい場合は、 Pop!_OSがこれらの機能をどのように実装しているかについての記事を読むことをお勧めします。

更新の監視と検証

unattended-upgrades が正しく動作していることを確認するには、 /var/log/unattended-upgrades/に保存されているログを確認してください。最新のログを確認するには、次のコマンドを使用します。

/var/log/unattended-upgrades/unattended-upgrades.log を少なくする

アップグレードシミュレーションを手動で実行するには、以下の方法も使用できます。

sudo 無人アップグレード --dry-run -d

異常を検知するためには、ログを定期的に監視することが重要です。

無人アップグレードを無効にする

自動更新を無効にする場合は、 /etc/apt/apt.conf.d/ 20auto-upgrades ファイルを編集し、値を0に設定することで無効にできます。

APT::Periodic::Unattended-Upgrade "0";

次のコマンドでパッケージをアンインストールすることもできます。

sudo apt は無人アップグレードを削除します

Debianでunattended-upgradesを使用して自動更新を設定することは、手動操作なしでシステムを最新の状態に保つための優れた方法です。適切な設定を行うことで、必要なアップデートのみがインストールされるようにし、リスクを最小限に抑え、システムの安定性を確保できます。

Debianコードネーム(トイストーリー)
関連記事
Debian10「Buster」には自動セキュリティインストールが付属します

Googleで優先ソースとして追加する