Ubuntuの「サポートされていないアップデート」とは?デフォルトで「有効」だけど大丈夫?

Ubuntuで「ソフトウェアとアップデート」を開き、「アップデート」タブに切り替えると、以下のように表示されます。

このウィンドウを見て、デフォルトで「サポートされていないアップデート」にチェックが入っていることが気になる人は多いでしょう。問題ないのでしょうか?

結論から言えば、これは問題ありません。

これは、より新しいバージョンのUbuntuから「バックポート」された、より新しいバージョンのアプリをインストール可能にするための設定です。インストールできるようになっているだけで、勝手にバックポートがインストールされるわけではないので、安心してください。

Ubuntuがリリースされると、一部の例外(Firefoxなど)を除いて各アプリのバージョンは「固定」されます。更新されるのは、セキュリティホールや重大なバグが修正される時のみです。

しかし、より新しいバージョンのUbuntuから、新しいアプリが「バックポート」として提供されることがあります。「サポートされていないアップデート」は、このバックポートをインストールするための設定です。バックポートされたパッケージは、セキュリティサポート(セキュリティホールが発見された場合の修正パッケージの提供)が保証されていないため、このような表現になっています。

「サポートされていないアップデート」のチェックは、「バックポートされたパッケージの配布元」がシステムに登録されていることを表しています。ただし、各アプリがバックポートされたパッケージに自動でアップデートされるわけではありません。デフォルトの設定では、ユーザーが明示的にバックポートパッケージをインストールすると指定した場合のみ、アップデートされます(ただしUbuntu 10.10以前のバージョンでは、チェックをオンにするとバックポートパッケージに自動でアップデートされました)。

2018年11月現在、Ubuntu 18.04 LTS向けのバックポートパッケージとしては「Cockpit」という、サーバー管理ツールが提供されています。18.04リリース時のバージョンは「164」ですが、バックポートとしてリリースされているのは「178」です。

以下は、Ubuntu 18.04に「cockpit」パッケージをバックポートレポジトリからインストールするコマンドです。

sudo apt install -y cockpit/bionic-backports

このように、パッケージ名の後ろに「/略称-backports」を付けて実行します。Ubuntu 18.04 LTS(コードネーム:Bionic Beaver)の略称(ショートコードネーム)は「bionic」なので「/bionic-backports」となります。Ubuntu 16.04 LTS(コードネーム:Xenial Xerus)なら「/xenial-backports」です。

あるいは、「/$(lsb_release -sc)-backports」を使うこともできます。「lsb_release -sc」コマンドは、実行しているUbuntuの略称を出力するコマンドです。なので「$(lsb_release -sc)」は略称に置き換えて実行されます。たとえば以下のコマンドなら、18.04 LTSと16.04 LTSのどちらで実行しても、バックポートレポジトリからcockpitをインストールできるというわけです。

sudo apt install -y cockpit/$(lsb_release -sc)-backports

このように、デフォルト設定では上記のように「/略称-backports」を付けない限り、バックポートレポジトリからのインストールは行われません。そのため「サポートされていないアップデート」がオンになっていても、危険ということはありません。