web-dev-qa-db-ja.com

aptリポジトリに同じパッケージの2つのバージョンを含めることはできますか?

環境全体でUbuntu 10.04を実行しています。コードのデプロイを簡単にするために、コードのビルドをデプロイできるプライベートaptリポジトリを実装しています。

このリポジトリの要件の1つは、QA部門がいつでもアプリケーションの任意のバージョンをインストールできることです。

同じパッケージの複数のバージョンをapt-repositoryに(できれば同じディストリビューションに)保存できますか?そうでない場合、上記の動作を取得するために使用できるいくつかの回避策は何ですか?

19
GregB

はい、できます。特別なことをする必要はありません。実際、通常のDebianおよびUbuntuリポジトリには通常、各パッケージのバージョンがいくつかあります(oldstable/stable/testing/unstableまたはdapper/hardy/lucid/maverick/nattyから)。ディストリビューションでは、各バージョンのインデックスファイル(Packagesファイル)に単一のパッケージのみが含まれていますが、これに従う必要はありません。

もちろん、 apt-get install myappは、最新のバージョンのみをインストールします(特に構成されていない場合)。 apt-get install myapp=1.42バージョン1.42のインストールを強制します。

警告:すべてのバージョンが同じパッケージ名を持っている場合、同時に複数をインストールすることはできません。これが重要な場合は、各バージョンに異なるパッケージ名を付けます:myapp-1.42myapp-1.43など。DebianとUbuntuは、ライブラリのメジャーバージョンに対してこれを行います。実行可能ファイルが異なるライブラリにリンクされている場合は、複数のライブラリが必要になることがあります(例:libcap1およびlibcap2)、およびカーネルなどの他のいくつかのパッケージ。