以下のコマンドを使用すると、 Ubuntu にインストールされているパッケージのうち、Main リポジトリ以外(Restricted, Universe, Multiverse)に属するものを一覧で表示できる。
dpkg-query --show --showformat='${binary:Package}\n' | xargs -IX bash -c "apt-cache policy X | sed -n --regexp-extended '1h;/.*(\/restricted|\/universe|\/multiverse) .*/{x;p;x;p;Q}'"
以上!
…とすると、この記事だけでは少し物足りない気がするので、使い方についても少し説明しておく。
なぜ Main リポジトリ以外のものを把握したいのか?
パッケージの取得元リポジトリのカテゴリを把握する理由は、Canonical による Ubuntu Pro のサポート範囲が関係しているからだ。
apt
コマンドを使用して、Ubuntu の標準リポジトリから取得される各パッケージは、以下の4つのカテゴリに分類される。
- Main
- Ubuntu チームによってサポートされる、フリーソフトウェアを収容するコンポーネントで、 2,300 以上のパッケージを含む。
- Ubuntu インストール時にデフォルトでインストールされるパッケージの大半はこれ。
- Restricted
- ドライバーなど、利便性の面でデフォルトでインストールされたほうが望ましいものの、プロプライエタリであるソフトウェアを含むコンポーネント。
- Universe
- Ubuntu コミュニティによって管理されている、 Linux 界の多くのオープンソースソフトウェアを収容するコンポーネントで、 23,000 以上のパッケージを含む。
- Multiverse
- フリーソフトの要件を満たさないような、特殊なライセンス要件をもつソフトウェアを収容するコンポーネント。
- GPU 関連 (CUDA 等) や, VirtualBox などが含まれている。
これらのうち、Restricted と Multiverse リポジトリのパッケージについては、それぞれのソフトの提供元によってのみメンテナンスされ、Canonical によるサポートは行われない。
一方で、Main と Universe リポジトリのパッケージについては、セキュリティ修正の提供期間や、電話/オンラインチケットサポート範囲が、 Ubuntu Pro の有無やライセンスの種類ごとに以下のような内訳となっている。
Security patching |
Ubuntu LTS |
Ubuntu Pro (Infra-only) |
Ubuntu Pro |
Over 2,300 packages in Ubuntu Main repository |
5 years |
10 years |
10 years |
Over 23,000 packages in Ubuntu Universe repository |
Best effort |
Best effort |
10 years |
Optional phone/ticket support |
No |
Yes |
Yes |
5年のLTSの期間中、Main リポジトリのパッケージを主に使用する場合、(ライブパッチ等の他のUbuntu Proのサービスが不要であれば)無料の範囲内で十分だ。
Main リポジトリのパッケージを主に使用しながら、10年の延長サポートを望む場合は、"Ubuntu Pro (Infra-only)" を契約することをおすすめする。
また、Universe リポジトリのパッケージを積極的に活用したい場合は、"Ubuntu Pro" を契約しておくと、より安心だろう。
Ubuntu の Universe リポジトリのパッケージの更新基準
続きを読む →