主にdebian / apt-getベースのシステムです(しかし、Archの答えのような他のシステムもお勧めします)。
利用可能な「パッケージ」の最新バージョンをインストールしapt-get install package
(必要な場合)、すべての依存関係を「パッケージ」に必要な最新バージョンにアップグレードします。
パッケージの絶対最新バージョンではなく、最新バージョンがインストールされているかどうかを試す方法はありますか?習慣既存の依存関係を更新する必要がありますか?
答え1
直接ではありません。これはパッケージリストとミラーリングがどのように機能するかによるものです。
パッケージマネージャがこれを行うには、システム内のすべてのパッケージの依存関係を知る必要があります。過去のあらゆる時点で。これは非常に速く膨らみ始めることができます。
第二に、そしてもっと重要なことは、鏡を考慮する必要があるということです。ミラーは通常ボランティアによって運営されており、その性質上、かなり多くのディスク容量を占めています。したがって、ミラーは通常、rsync 操作を介して正規のソースと同期されます。これにより、ソースに存在しないすべてのファイルが削除されるため、以前のバージョンのパッケージが削除されます。これが、Archのように急速に進化しているディストリビューションで、「アップデート」コマンドを最初に実行せずに「インストール」コマンドを実行すると404が発生する理由です。ローカルパッケージマネージャが知っている最新バージョンが置き換えられました。あなたが提案したものと同じことが起こるには、以前のバージョンのパッケージを維持するためにイメージのディスク使用量を大幅に増やす必要があります。
ほとんどのディストリビューションはそのバージョンの最新パッケージでもテストされているため、パッチが適用されていないシステムではサポートされていない領域に入ります。
セキュリティの観点から見ると、ディストリビューションは常に最新の状態を維持したいと思います。
全体的に最新情報を維持する必要があります。何かが邪魔になったら、もう一度考えてみてください。それ状況を確認し、解決できることを確認してください。
答え2
すべてのパッケージ(依存関係を含む)を最新の状態に保つことをお勧めします。あなたの要件は、次の方法で達成できると思います。これは茂みの周りを走っている可能性があります。
コマンドの実行apt-get --print-uris --yes install package
これにより、aptがインストールしたすべてのパッケージのURLが提供されます。
メインパッケージ(.deb)ファイルを個別に手動でダウンロードしてください。そしてdpkgコマンドを使ってインストールしてください。
dpkg -i package.deb
これは、依存パッケージの最小必須バージョンがすでにすべてある限り機能します。
それでも失敗したら、--force-all
一緒に使ってみてくださいdpkg
。
警告:アプリのみを試してください。システムパッケージを試さないでください。破損すると問題が発生します。