無人アップグレードとPostgreSQLバージョン

無人アップグレードとPostgreSQLバージョン

apt dist-upgradeUbuntu/Debian ディストリビューションのコマンドで PostgreSQL のバージョンを更新できますか?

PostgreSQL 9.6 を使用する Ubuntu 18.04 LTS サーバーがいくつかあり、unattended-upgrades実行によって PostgreSQL が更新されないようにしたいです。

私が間違っていなければ、これを行うには別の postgresql バージョンを明示的にインストールする必要があります。そうでない場合は、そのパッケージ更新をブラックリストに登録する必要がありますか?

ありがとう!

答え1

無人アップグレードは特定のリポジトリからのみ機能します。

どのリポジトリか見てみましょう。/etc/apt/apt.conf.d/50unattended-upgradesの設定は次のとおりです。

Unattended-Upgrade::Allowed-Origins {
        "${distro_id}:${distro_codename}";
        "${distro_id}:${distro_codename}-security";
        // Extended Security Maintenance; doesn't necessarily exist for
        // every release and this system may not have it installed, but if
        // available, the policy for updates is such that unattended-upgrades
        // should also install from here by default.
        "${distro_id}ESM:${distro_codename}";
//      "${distro_id}:${distro_codename}-updates";
//      "${distro_id}:${distro_codename}-proposed";
//      "${distro_id}:${distro_codename}-backports";
};

これを解釈してみましょう。これは、無人アップグレードが Ubuntu リポジトリの -security ポケット内のセキュリティ更新のみを検索することを意味します。設定を変更できますが、質問から、そのことを知らなかったことがわかります (そのため、まだこのように見えます)。

これは、Ubuntu リポジトリを使用する大きな利点の 1 つです。Ubuntu セキュリティ チームからのセキュリティ更新です。

Allowed-Origins リストにない別の場所から Postgresql をインストールしたため (パッケージ名とバージョンが異なるため)、無人アップグレードではセキュリティ更新も新しいバージョンも適用されません。Ubuntu セキュリティ チームもパッケージにパッチを適用しません。自分で対処する必要があります。

  • 複数のソースが同じパッケージを提供する場合名前(コンテンツの内容に関係なく)、無人アップグレードでは、Allowed-Origins にあるソースからのアップグレードが実際にインストールされる可能性があります。これは実際に問題を引き起こす可能性があるため、サードパーティのソースは最小限に抑えてください。

  • 一般的に、ほとんどの -security ポケット アップグレードでは、より高いバージョンにアップグレードするのではなく (ワークフローが中断される可能性があります)、現在利用可能なバージョンにパッチを適用します。いくつかの例外と特殊なケースがあります。

関連情報