dpkg Debian系の.debパッケージを直接インストール、調査する
dpkg [オプション] アクション試してみる
dpkg -l bashパッケージがインストールされているかを調べます。先頭の ii は、正常にインストール済みという意味です。
dpkg -S /bin/lsこのファイルが、どのパッケージに入っているかを調べます。
dpkg -I /usr/local/share/utte/hello_2.10-3_i386.deb | head -8インストール前の .deb ファイルの情報(名前、バージョンなど)を表示します。
sudo dpkg -i /usr/local/share/utte/hello_2.10-3_i386.deb.deb ファイルをインストールします。管理者権限が必要です。
dpkg -L helloインストールしたパッケージが置いたファイルの一覧を表示します。
sudo dpkg -r helloパッケージを削除します。設定ファイルは残ります。
主なオプション
-i ファイル.deb | パッケージをインストールする |
|---|---|
-r パッケージ | パッケージを削除する(設定ファイルは残る) |
-P パッケージ | 設定ファイルも含めて完全に削除する |
-l [パターン] | インストール済みのパッケージを一覧表示する |
-L パッケージ | パッケージに含まれるファイルを一覧表示する |
-S ファイル | ファイルを含むパッケージを調べる |
-s パッケージ | パッケージの状態と詳細情報を表示する |
-I / -c ファイル.deb | .deb ファイルの情報 / 含まれるファイルを表示する |
解説
dpkg は .deb ファイルを扱う
dpkg は、Debian 系のパッケージ管理の土台となるコマンドです。1つ1つの .deb ファイルを、インストール、削除、調査できます。ただし、依存するパッケージを自動で取得しません。依存が足りないと、インストールが途中で止まります。依存まで面倒を見てほしいときは、apt を使います。
調べるときの使い分け
インストール済みのパッケージについて調べるものと、.deb ファイルそのものを調べるものがあります。
| やりたいこと | コマンド |
|---|---|
| 入っているパッケージの一覧 | dpkg -l |
| パッケージの詳細 | dpkg -s パッケージ |
| パッケージのファイル一覧 | dpkg -L パッケージ |
| ファイルがどのパッケージのものか | dpkg -S ファイル |
| .deb ファイルの情報 | dpkg -I ファイル.deb |
| .deb ファイルの中身 | dpkg -c ファイル.deb |
-l の読み方
dpkg -l の先頭の2文字は状態を表します。1文字目が希望する状態、2文字目が現在の状態です。ii は、インストール済みです。rc は、削除済みで設定ファイルだけが残っていることを表します。
remove と purge
-r はプログラムを消し、設定ファイルは残します。-P は設定ファイルも消します。apt remove と apt purge の違いと同じです。
関連する設定
Debian 系では、dpkg-reconfigure パッケージ でパッケージの設定をやり直せます。dpkg の記録は /var/lib/dpkg/ にあります。