Ubuntuシステムでdpkgコマンドを使用する方法

dpkgは、Debianのパッケージマネージャーの略です。これは、DebianおよびDebianベースのシステムの主要なパッケージ管理ツールです。deb形式のパッケージのインストール、ビルド、アンインストール、および管理に使用できます。

ソフトウェアをインストールする ####

dpkgコマンドを使用してソフトウェアをインストールする場合、 -iオプションを使用して、debインストールパッケージのパスを指定できます。これは、Ubuntuの別のパッケージ管理ツール apt-get(高度なパッケージツール)とは異なります。
apt-getコマンドは、debインストールパッケージファイルを直接操作しませんが、 / etc / apt / sources.list構成ファイルで定義されたソフトウェアミラーソースからソフトウェアパッケージをダウンロードしてインストールします。使用する場合は、ソフトウェアを指定するだけで済みます。名前(またはバージョン番号も追加できます)。

ソフトウェアをインストールするためのapt-getコマンド:
$ apt-get install

dpkgコマンドは、ソフトウェアをインストールします。
$ dpkg -i

したがって、dpkgは主に、ローカルにダウンロードされたdebソフトウェアパッケージをインストールするため、またはインストールされたソフトウェアを管理するために使用されます。また、apt-getは、リモートソフトウェアウェアハウスから直接ソフトウェアをダウンロードしてインストールできます。

$ sudo apt-get install emacs
パッケージリストを読む...実施する
パッケージの依存関係ツリーを分析する
ステータス情報の読み取り...実施する
次のソフトウェアが同時にインストールされます:emacs-bin-common emacs-common emacs-el emacs-gtk libm17n-0
 libotf0 m17n-db
推奨されるインストール:mailutils emacs-common-non-dfsg m17n-docs gawk
次の[新しい]ソフトウェアパッケージがインストールされます:emacs emacs-bin-common emacs-common emacs-el emacs-gtk libm17n-0
 libotf0 m17n-db
0個のパッケージがアップグレードされ、8個のパッケージが新しくインストールされ、0個のパッケージをアンインストールする必要があります。115個のパッケージはアップグレードされていません。 34をダウンロードする必要があります.4
$ sudo dpkg -i fping_4.2-1_amd64.deb(データベースの読み取り...現在、システムには252654個のファイルとディレクトリがインストールされています。)
fpingを解凍する準備ができました_4.2-1_amd64.deb  ...
fpingの開梱(4.2-1)そして上書き(4.2-1)...
fpingの設定(4.2-1)...
人のための処理-db(2.8.5-2)引き金...
インストールされているソフトウェアのリスト

dpkg -lコマンドを使用して、現在のシステムにインストールされているソフトウェアとソフトウェアパッケージのステータスを一覧表示できます。といった:

$ dpkg -l
望ましい状態=わからない(u)/インストール(i)/削除(r)/晴れ(p)/維持する(h)|状態=未インストール(n)/已インストール(i)/構成を保存する(c)/解凍のみ(U)/構成に失敗しました(F)/不完全インストール(H)/トリガー待機(W)/トリガー保留中(T)|/エラー?=(番号)/再インストール(R)(ステータス、エラー:大文字=故障)||/名前バージョンアーキテクチャの説明
+++-=============================================-===================================-============-===============================================================================
ii  2048-qt                                       0.1.6-1build1                       amd64        mathematics based puzzle game
ii  accountsservice                               0.6.50-0ubuntu1                     amd64        query and manipulate user account information
ii  acl                                           2.2.53-4                            amd64        access control list - utilities
ii  acpi-support                                  0.143                               amd64        scripts for handling many ACPI events
ii  acpid                                         1:2.0.31-1ubuntu2                   amd64        Advanced Configuration and Power Interface event daemon
ii  adduser                                       3.118ubuntu1                        all          add and remove users and groups
ii  adwaita-icon-theme                            3.32.0-1ubuntu1                     all          default icon theme ofGNOME(small subset)
ii  alsa-base                                     1.0.25+dfsg-0ubuntu5                all          ALSA driver configuration files
ii  alsa-utils                                    1.1.8-1ubuntu1                      amd64        Utilities for configuring and using ALSA
...

このコマンドの各行の出力の最初の列 iiは、ソフトウェアパッケージのインストールと構成のステータスを示し、その形式は次のとおりです。
期待される状態|現在の状態|エラー
期待される状態には次のものがあります

現在の状況は次のとおりです。

いくつかのエラー状態があります

したがって、「ii」は、ソフトウェアをインストールする必要があり、エラーなしでインストールされたことを意味します。
iuは、ソフトウェアがインストールされているが、正しく構成されていないことを意味します。
rcは、ソフトウェアが削除されたが、構成ファイルがクリーンアップされていないことを意味します。

rc状態のパッケージを表示します。

$ dpkg -l | grep ^rc
rc  libmhash2:amd64                               0.9.9.9-7                           amd64        Library for cryptographic hashing and message authentication
rc  linux-image-5.0.0-13-generic                  5.0.0-13.14                         amd64        Signed kernel image generic
rc  linux-modules-5.0.0-13-generic                5.0.0-13.14                         amd64        Linux kernel extra modules for version 5.0.0 on 64 bit x86 SMP
rc  linux-modules-extra-5.0.0-13-generic          5.0.0-13.14                         amd64        Linux kernel extra modules for version 5.0.0 on 64 bit x86 SMP
rc  zabbix-proxy-mysql                            1:4.0.4+dfsg-1                      amd64        network monitoring solution -proxy(using MySQL)

さらに、 dpkg -lコマンドを使用して、名前に指定されたパターンが含まれているパッケージを除外できます。


$ dpkg -l "nginx*"
望ましい状態=わからない(u)/インストール(i)/削除(r)/晴れ(p)/維持する(h)|状態=未インストール(n)/已インストール(i)/構成を保存する(c)/解凍のみ(U)/構成に失敗しました(F)/不完全インストール(H)/トリガー待機(W)/トリガー保留中(T)|/エラー?=(番号)/再インストール(R)(ステータス、エラー:大文字=故障)||/名前バージョンアーキテクチャの説明
+++-==============-===============-============-=========================================================
ii  nginx          1.15.9-0ubuntu1 all          small, powerful, scalable web/proxy server
ii  nginx-common   1.15.9-0ubuntu1 all          small, powerful, scalable web/proxy server - common files
ii  nginx-core     1.15.9-0ubuntu1 amd64        nginx web/proxy server(standard version)
un  nginx-doc      <番号><番号>(番号描述)
un  nginx-extras   <番号><番号>(番号描述)
un  nginx-full     <番号><番号>(番号描述)
un  nginx-light    <番号><番号>(番号描述)

ソフトウェアのアンインストール

dpkgコマンドの -rオプションを使用して、インストールされているソフトウェアパッケージをアンインストールできます。この場合、指定する必要があるのはソフトウェアの名前だけです。


$ sudo dpkg -r vim(データベースの読み取り...現在、システムには252653個のファイルとディレクトリがインストールされています。)
vimのアンインストール(2:8.1.0320-1ubuntu3.1)...
update-alternatives:使用する/usr/bin/vim.自動モードで提供する小さな/usr/bin/vi(vi)
update-alternatives:使用する/usr/bin/vim.自動モードで提供する小さな/usr/bin/view(view)
update-alternatives:使用する/usr/bin/vim.自動モードで提供する小さな/usr/bin/ex(ex)
update-alternatives:使用する/usr/bin/vim.自動モードで提供する小さな/usr/bin/rview(rview)
知っておく必要があるのは、-rオプションは、構成ファイルに影響を与えることなく、指定されたパッケージのみを削除します。

その他のパッケージ管理操作

パッケージの内容を表示
dpkg -c <package_file_path>

$ dpkg -c fping_4.2-1_amd64.deb
drwxr-xr-x root/root         0 2019-02-20 06:27 ./
drwxr-xr-x root/root         02019-02-2006:27./usr/
drwxr-xr-x root/root         02019-02-2006:27./usr/bin/-rwxr-xr-x root/root     521282019-02-2006:27./usr/bin/fping
drwxr-xr-x root/root         02019-02-2006:27./usr/share/
drwxr-xr-x root/root         02019-02-2006:27./usr/share/bug/-rwxr-xr-x root/root       1182017-06-1905:19./usr/share/bug/fping
drwxr-xr-x root/root         02019-02-2006:27./usr/share/doc/
drwxr-xr-x root/root         02019-02-2006:27./usr/share/doc/fping/-rw-r--r-- root/root       4952017-09-0608:00./usr/share/doc/fping/NEWS.Debian.gz
- rw-r--r-- root/root      16152019-02-2006:27./usr/share/doc/fping/changelog.Debian.gz
- rw-r--r-- root/root      34452017-12-0704:09./usr/share/doc/fping/copyright
drwxr-xr-x root/root         02019-02-2006:27./usr/share/lintian/
drwxr-xr-x root/root         02019-02-2006:27./usr/share/lintian/overrides/-rw-r--r-- root/root        412017-06-1905:19./usr/share/lintian/overrides/fping
drwxr-xr-x root/root         02019-02-2006:27./usr/share/man/
drwxr-xr-x root/root         02019-02-2006:27./usr/share/man/man8/-rw-r--r-- root/root      57332019-02-2006:27./usr/share/man/man8/fping.8.gz
- rw-r--r-- root/root      15122019-02-2006:27./usr/share/man/man8/fping6.8.gz
lrwxrwxrwx root/root         02019-02-2006:27./usr/bin/fping6 -> fping

パッケージの詳細を表示(インストール済み)

dpkg -s <package>またはdpkg--status <package>
$ dpkg -s fping
Package: fping
Status: deinstall ok installed
Priority: optional
Section: net
Installed-Size:87
Maintainer: Ubuntu Developers <[email protected]>
Architecture: amd64
Version:4.2-1
Depends: libcap2-bin, netbase,libc6(>=2.15)
Enhances:netdata(>=1.5)
Description: sends ICMP ECHO_REQUEST packets to network hosts
 fping is a ping like program which uses the Internet Control Message Protocol(ICMP) echo request to determine if a target host is responding.  fping
 differs from ping in that you can specify any number of targets on the command
 line, or specify a file containing the lists of targets to ping.  Instead of
 sending to one target until it times out or replies, fping will send out a
 ping packet and move on to the next target in a round-robin fashion.
Original-Maintainer: Axel Beckert <[email protected]>
Homepage: https://www.fping.org/
パッケージのインストール場所を表示します#####
dpkg -L <package>またはdpkg--list-files <package>
$ dpkg -L fping
/./usr
/usr/bin
/usr/bin/fping
/usr/share
/usr/share/bug
/usr/share/bug/fping
/usr/share/doc
/usr/share/doc/fping
/usr/share/doc/fping/NEWS.Debian.gz
/usr/share/doc/fping/changelog.Debian.gz
/usr/share/doc/fping/copyright
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/fping
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/fping.8.gz
/usr/share/man/man8/fping6.8.gz
/usr/bin/fping6

指定されたファイル(パターン)を含むパッケージを除外します#####
dpkg -S <filename_pattern>またはdpkg--search <filename_pattern>
$ dpkg -S sites-available
apache2:/etc/apache2/sites-available/default-ssl.conf
apache2:/etc/apache2/sites-available/000-default.conf
nginx-common:/etc/nginx/sites-available
nginx-common:/etc/nginx/sites-available/default
apache2:/etc/apache2/sites-available

Recommended Posts

Ubuntuシステムでdpkgコマンドを使用する方法
ubuntuでhanlpを使用する方法
UbuntuでTensorFlow使用環境を構成する方法
win10でubuntuシステムを開く方法
Ubuntuシステムログで/ var / log / messagesを構成する方法
Puttyを使用してVirtualBoxにインストールされているubuntuにログインする方法
ubuntuシステムでタイムゾーンと時間を変更する方法
UbuntuにHelmをインストールする方法
Ubuntu14.04にmysqlをインストールする方法
Ubuntu14.04にmysqlをインストールする方法
PythonでSQLiteを使用する方法
sshを介してwin10でubuntuシステムを制御する方法
Ubuntuでスワップパーティションを追加する方法
UbuntuでopenJDKを簡単にコンパイルする方法
およびおよびまたはPythonでの使用方法
Ubuntuにcuda10.1ドライバーをインストールする方法
UbuntuでSudoersにユーザーを追加する方法
Ubuntuで冗長カーネルを削除する方法
Ubuntuで冗長カーネルを削除する方法
Ubuntu16.04でSambaサーバーを使用する方法
Ubuntu20.04にROSNoeticをインストールする方法
ubuntu14.04で静的IPを設定する方法
Ubuntu7.10でソフトウェアソースを変更する方法
Ubuntu20.04でルートアカウントを開く方法
Ubuntu Dashでアプリケーションを非表示にする方法は?
Prometheusを使用してUbuntu14.04サーバーを監視する方法
Pythonでzip関数を使用する方法
Ubuntu20.04にアップグレードする方法
Ubuntu16.04でNginxのマップモジュールを使用する方法
次のコマンドを使用して、Ubuntuプロジェクターの問題を解決します。
Ubuntu20.04にDockerをインストールして使用する方法
ubuntuでスーパーバイザーを使用する
Ubuntu18.04にCurlをインストールして使用する方法
Ubuntu18.04にComposerをインストールして使用する方法
Ubuntu18.04にWineをインストールして使用する方法
pythonでformat関数を使用する方法
Ubuntu14.04でDockerデータボリュームを使用する方法
仮想マシンでUbuntuとWindowsシステムを使用する
pythonでアシスタントを実行するコードを使用する方法
Ubuntu20.04にComposerをインストールして使用する方法
[練習] Ubuntuシステムにpython3.6をインストールする方法
Ubuntu14.04にBaasBoxをインストールして使用する方法
Jenkinsを使用してUbuntuで自動的にビルドする方法
Ubuntu16.04にPostgreSQLをインストールして使用する方法
ubuntuでのHanlpの使用の概要
コマンドを使用して、CentOS7の特定のホスト名をクリアします
Ubuntu20.04にアップグレードする方法
Ubuntu16.04にDockerをインストールして使用する方法
Ubuntu18.04にスタンドアロンモードでHadoopをインストールする方法
LVMを使用してUbuntu18.04でストレージデバイスを管理する方法
Ubuntu14.04でMongoDBバックアップを作成して使用する方法
コマンドラインを使用して、Ubuntuバージョンメソッドを検出します
Ubuntu18.04にMySQLWorkbenchをインストールして使用する方法
Ubuntuで詳細なネットワークルーティングテーブルを表示する方法
Ubuntu20.04でIPアドレスを変更する方法の例
ubuntuシステムにtheanoとkerasをインストールする方法
Ubuntu14.04でPython仮想環境を作成する方法
再インストールせずに損傷したUbuntuシステムを修復する方法
Ubuntuシステム拡張ツールのインストール方法を教えてください
UbuntuでのAnacondaの使用
パイソンタプルの使い方