aptを使用してさまざまなディストリビューション用のソフトウェアパッケージをダウンロードする

aptを使用してさまざまなディストリビューション用のソフトウェアパッケージをダウンロードする

.debさまざまなディストリビューションへの依存関係を含むパッケージをダウンロードしたいです。

当社には、Ubuntu 11.04、11.10、12.10、Debian 5、6など、多くのLinuxシステムがあります。

完全な依存関係ツリーをダウンロードするコマンドはですapt-get -d install package

私は現在Debian 6(squeeze)を使用しており、同じディストリビューションのパッケージダウンロードがうまくいきます。ダウンロードしようとしています(いいえsources.list私のソースをDebian 5(lenny)ソース)パッケージツリーに変更してインストールしました。

ただし、次のエラーが発生します。

# apt-get -d install python-lxml
...
The following packages have unmet dependencies:
 python-lxml : Depends: python (< 2.6) but 2.6.6-3+squeeze7 is to be installed
E: Broken packages

各ディストリビューションに対して異なるオペレーティングシステムを実行すると、12台以上のマシンが作成されます。私はより明確な解決策を探しています。

どんな提案がありますか?

ベストアンサー1

APTの重要な作業は、依存関係を解決することです。したがって、依存関係について不平を言ってもそれを非難することはできません。

パッケージデータベースが混在しないように、別の構成で呼び出す必要があります。各ディストリビューションごとに別々apt.confのファイルを保管してくださいsources.list

apt-get -o Dir::Etc::Main=/path/to/precise/apt.conf -d …

そしてapt.conf少なくとも含まれています

Dig::State::status "/path/to/precise/status";
APT::Get::Download-Only "true";

/etc/aptディレクトリ内の一部のファイルをシンボリックリンクまたはコピーする必要があります/path/to/precise(その内容によって異なります)。

スタンバイ・データベースを渡すときに apt-get を root として実行しない。システムを変更するためのアクセス権がある場合は、apt-get誤って何かを誤って設定したり、シャットダウンしたりすると、-dシステムが深刻に混乱する可能性があります。apt-getルートを含まないコンテンツのみをダウンロードする限り、必要な権限でのみ実行してください。キャッシュディレクトリ/var/cache/aptとその内容に書き込むには十分な権限が必要です。これを行うには、グループを作成し、addgroup aptcache; chgrp -R aptcache /var/cache/apt; chmod -R g+w /var/cache/aptここに自分自身を追加することをお勧めします。

おすすめ記事