Debベースのパッケージ/依存関係を管理する方法

Debベースのパッケージ/依存関係を管理する方法

今日、私はElementary OS Lokiを仮想マシンにインストールしました。

私はこのシステムがどれほど速くて美しいかに驚きました。

しかし、ポイントは次のとおりです。

.debパッケージをインストールしてElementary OSへの依存関係を解決するにはどうすればよいですか?

ベストアンサー1

私は実際にaptitudeパッケージの依存関係をインストール/解決するためにパッケージマネージャを使用することを好みます。次のコマンドを使用してインストールできます。

sudo apt-get install aptitude

aptこのコマンドは/と非常によく似ていますapt-get

aptitude依存関係を処理する他のツールよりもスマートなようです。また、アンインストール/インストールプロセスを処理するための選択肢を含むメニューが表示され、最初の選択を拒否した場合は選択肢がある場合に表示されます。

$sudo aptitude purge libasound2
The following packages will be REMOVED:  
  libasound2{p} libasound2-data{u} 

The following packages have unmet dependencies:
 openjdk-8-jre : Depends: libasound2 (>= 1.0.16) but it is not going to be installed
The following actions will resolve these dependencies:

Remove the following packages:              
1)     openjdk-8-jre [8u111-b14-3 (now, testing)]



Accept this solution? [Y/n/q/?] n
The following actions will resolve these dependencies:

     Keep the following packages at their current version:    
1)     libasound2 [1.1.2-1 (now, testing)]                
2)     libasound2-data [1.1.2-1 (now, testing)]           

Accept this solution? [Y/n/q/?] 

Debian 適性でウィキペディア:

Aptitudeには、次のような便利な機能がたくさんあります。

  • 柔軟な方法でパケットタグを一致させるmuttに似た構文
  • パッケージが不要になったときに自動的に削除されるように、パッケージを「自動インストール」または「手動インストール」に設定してください。
  • スケジュールされたジョブの色のプレビュー
  • dselectに似たユーザー操作の永続性
  • ほとんどのパッケージの Debian 変更ログを検索して表示する機能
  • AptCLIスタイル(= apt-get + apt-cache)コマンドラインモード( "aptitude install foo")
  • (通常)apt-getよりもスマートなスコアベースの依存関係解決プログラム

長年使用されなくなったと記載されており、他のツールも同様の機能を提供しますが、システムの残りの部分をクリーンアップすることをお勧めしdebfosterます。debfoster基本的なインストール/テンプレートとして使用するためにデフォルトのVMを縮小するのに役立つなど、特に興味深いです。

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

sudo apt-get install debfoster

また、テストを実行する前にパッケージの実際の状態を保存するためにプリプロダクションVMで頻繁に使用し、実行する前と同様に、保存された状態を復元して追加されたすべてのパッケージを削除するために使用します。

~からHOWTO:実際にdebfosterを使う

debfoster - 不要な Debian パッケージを削除する

debfosterは、依存関係でインストールされず、明示的に要求されたインストール済みパッケージのリストを維持します。パラメータは完全にオプションであり、dpkgおよび/またはapt-getを実行するたびにdebfoster自体を呼び出すことができます。

または、debfosterを使用してコマンドラインからパッケージを指定して、パッケージをインストールおよび削除することもできます。 - サフィックスの付いたパッケージは削除され、サフィックスのないパッケージはインストールされます。

新しいパッケージが見つかった場合、またはdebfosterが以前に依存していたパッケージが孤立したパッケージであることを発見した場合は、これを行う方法を尋ねます。これを維持することを決定した場合、debfosterはそれを記録して続行します。このパッケージが十分に興味深いと思われる場合は、debfoster がリクエストの後に削除されます。お客様の選択により別のパッケージを取り外すと、より多くの問題が発生する可能性があります。

$sudo debfoster

smem is keeping the following 27 packages installed:
  blt fonts-lyx libglade2-0 libjs-jquery libjs-jquery-ui liblapack3 libtk8.6 libwebp6
  libwebpdemux2 libwebpmux2 libxss1 python-cairo python-cycler python-dateutil
  python-glade2 python-gobject-2 python-gtk2 python-imaging python-matplotlib
  python-matplotlib-data python-numpy python-pil python-pyparsing python-tk python-tz
  tk8.6-blt2.5 ttf-bitstream-vera
Keep smem? [Ynpsiuqx?], [H]elp: Y

imvirt is keeping the following 9 packages installed:
  imvirt-helper libemail-date-format-perl libfile-slurp-perl libfile-which-perl
  libimvirt-perl libmime-lite-perl libmime-types-perl libmodule-find-perl pciutils
Keep imvirt? [Ynpsiuqx?], [H]elp: Y

linux-image-4.8.0-1-amd64-unsigned is keeping the following 9 packages installed:
  busybox firmware-linux-free initramfs-tools initramfs-tools-core irqbalance
  klibc-utils libklibc libnuma1 linux-base
Keep linux-image-4.8.0-1-amd64-unsigned? [Ynpsiuqx?], [H]elp: Y

faketime is keeping the following 1 packages installed:
  libfaketime
Keep faketime? [Ynpsiuqx?], [H]elp: N

haveged is keeping the following 1 packages installed:
  libhavege1
Keep haveged? [Ynpsiuqx?], [H]elp: Y
Keep libfaketime? [Ynpsiuqx?], [H]elp: N
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  faketime* libfaketime*
0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
After this operation, 127 kB disk space will be freed.
Do you want to continue? [Y/n]

おすすめ記事