Debian -- 「インストールしない場合」すべて​​の依存関係を更新

Debian -- 「インストールしない場合」すべて​​の依存関係を更新

私はDebian(gasp)サーバーにPercona Toolkitをインストールしようとしました。以下の指示に従ってダウンロードしました。 wget percona.com/get/percona-toolkit.deb

それからインストールしました sudo dpkg -i percona-toolkit.deb

ただし、インストールされていないかインストールされていない欠落している依存関係があることを伝えます。

私はこれらをダウンロードしてきましたが、それぞれは自分の依存関係が欠けているようです。また、ほとんどがインストールされていますが、ツールキットにはより高いバージョンが必要であることがわかりました。場合によっては、私が見つけることができる唯一のバージョンがDebianの次のバージョン用に設計されていたということでした。

これまでダウンロードしました:

libio-socket-ssl-perl_2.002-2_all.deb
libnet-ssleay-perl_1.65-1+b1_amd64.deb
libterm-readkey-perl_2.30-4+b2_amd64.deb

今それが欲しい

perl (>= 5.20.0-4)
perlapi-5.20.0
libc6 (>= 2.14)

システムでこれらすべてを一度にダウンロード/インストールする簡単な方法はありますか?インストールされている基本バージョンより高いバージョンをインストールすると、信頼性の問題が発生する可能性がありますか?


アップデート - 出力apt-get -f install:

sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages will be REMOVED:
  libio-socket-ssl-perl libnet-ssleay-perl percona-toolkit
0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
3 not fully installed or removed.
After this operation, 7,319 kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 26051 files and directories currently installed.)
Removing percona-toolkit ...
Removing libio-socket-ssl-perl ...
Removing libnet-ssleay-perl ...
Processing triggers for man-db ...

答え1

最初にインストールしようとすると失敗します。

dpkg -i percona-toolkit.deb

次に、次の手順を実行して、欠落している依存関係をインストールして修正します。

apt-get install --fix-missing -f

その後、.debパッケージを再インストールしてみてください。

dpkg -i percona-toolkit.deb

答え2

まず、apt-get -f installAPTを実行してシステムの現在の状態を確認します。半分しかインストールされていないか、半分だけが削除されたパッケージまたは破損した依存関係は、APTをユーザーが指示した操作を実行しない状態にする傾向があります。これは、破損したパッケージに影響を与えないため、理論的には可能であっても同様です。

dpkg明示的に指示された操作のみを実行する低レベルのツールです。依存関係を確認しましたが、実装に失敗しました。apt-getその他のAPTツールは、依存関係などを管理するための高度なツールです。たとえば、パッケージのインストールを指示すると、apt-getそのパッケージへの依存関係も自動的にダウンロードされインストールされます。ただし、パッケージ(ローカルファイルに提供する必要があります)をインストールするように指示しましたが、dpkg必要な依存関係がそうでない場合は次のようになります。インストールするとエラー信号のみが表示されます。

サードパーティ製パッケージの手動インストールを使用する場合は、dpkgまず依存関係をインストールする必要があります。次のコマンドを使用して、debファイルが何に依存しているかを確認できます。

dpkg-deb -I percona-toolkit.deb

その行を見て、Depends:そこにリストされているパッケージをインストールしてください。これはカンマ区切りのリストです。一部のパッケージ名がで区切られている場合は、それらの|パッケージのいずれかをインストールするだけです。また、Recommends:誰もが必要とするわけではありませんが、パッケージ機能の1つに非常に役立つか、必要なパッケージを一覧表示するこの行を確認してください。

または、次のコマンドを使用してインストールを開始できます。

dpkg -i percona-toolkit.deb

どのパッケージが欠落していると文句を言うかを確認し(そのパッケージがディストリビューションで提供されていると仮定して)、すぐにインストールapt-get作業を進めます。あなたの場合は次のとおりです。

apt-get install libio-socket-ssl-perl libnet-ssleay-perl libterm-readkey-perl
apt-get -f install

percona-toolkit(2番目のコマンドは、依存関係の欠落によって中断されたインストールを完了するのに役立ちます。)

ディストリビューションで複数の deb ファイルを提供せずにファイル間に依存関係がある場合は、依存関係に応じて指定された順序でインストールするか、単一のコマンドdpkg -iラインにすべて渡します。

関連情報