デプロイメント ストアではなく開発者からパッケージをインストールするときに発生する可能性のある問題

デプロイメント ストアではなく開発者からパッケージをインストールするときに発生する可能性のある問題

これは何人かの人々にとってマイナーな問題のように聞こえるかもしれませんが、私は何年もの間Linuxを使ってきましたが、まだそれを実際には理解していません。

背景情報はほとんどありません。最近システムをMint12からMint14にアップグレードしましたが、Eclipseのインストールを開始したときにSVNを再インストールする必要があることに気づきました。ご存じのとおり、最新バージョンは1.7.8(現在の基準)で、リポジトリからインポートされたバージョンは1.7.5です。今、一部の人々はこれが大きなものかどうかを議論するかもしれませんが、私は個人的にダウンストリームの問題を避けるために現在のバージョンを最新の状態に保ちたいと思います。

リポジトリをスキップして開発者ホームページ(この場合はsubversion.apache)からインストールすると、どのような問題が発生する可能性があるのか​​疑問に思います。

ベストアンサー1

「開発者が提供すると人々が使用します」展開戦略(Windows、参照)を使用する他のシステムとは異なり、UNIXなどのディストリビューションには通常、パッケージマネージャとパッケージを管理するチームがいくつかあります。

これ基本ポイントは、すべてがうまく機能するようにすることです。少なくともWindowsを使用する場合の一般的なシナリオは、プログラムが最新バージョンをインストールしたい場合はDLLを更新しますが、すべてが最新バージョンのライブラリで正しく機能するかどうかを制御できるものはなく、より多くのファイルを追加するだけです。ジャングルで発見でき、壊れたらひどく壊れることがあります。

パッケージ管理を通じて、新しいバージョンは(またはしなければならない公開する前にテストして、ダウンストリームの問題が発生しないようにしてください。 distro以外のパッケージで発生する可能性のある問題は、そのパッケージがディストリビューションに対して実際にテストされていないか、メタデータに依存関係または制限がない可能性があることです。これはおおよそバッグ。ディストリビューションでパッケージがリリースされるのを待たずに開発者からインストールする場合は、パッケージを選択してください。パッケージマネージャを使い続ける限り、システムが複雑になるリスクはありません。

ソースからコンパイルするか、単にtarballを解凍することにした場合は、次のことをmake install行う前に2回考えてください/。ファイルを上書きしたり、パッケージマネージャが追跡しないファイルを追加したりできます。これは互換性のないファイルのインストールによって発生する可能性があります。パッケージマネージャなどを使用してパッケージを削除すると、設定をキャンセルすることはできません。これは、開発者が提供したインストールスクリプト(nVidiaドライバ...)を絶対に使用したくない理由でもあります。

これをエントロピーだと思います。パッケージマネージャは実際にこれを追跡するので、必要に応じて熱力学の第2法則に違反する可能性があります。サードパーティのインストールスクリプトを使用するか、サードパーティのインストールスクリプトのみを使用すると、システムを追跡せずにmake installシステムエントロピーが増加します。これを完了したら、追加したすべてのエントリが削除されたことを確認する唯一の機会は、バックアップを復元するか、システムを再インストールすることです。

長い話を短く:

  • 同じリリースに展開されたソフトウェアに関する問題をキャッチしようとするリリースレベルのテストをバイパスしています。

  • パッケージマネージャをバイパスしていて、問題が発生した場合はシステムを回復できない状態にすることができます。

最後に@jordanmが言ったように、長所と短所を比較してみてください。可能であれば、上記の2番目の項目について少なくとも役立つパッケージマネージャ用のサードパーティパッケージを見つけてください。

おすすめ記事