GNU/Linux >> Linux の 問題 >  >> Linux

apt-get、apt-cache、apt-file、および dpkg コマンドを使用してパッケージを管理する方法 (13 の実用的な例を含む)

Debian ベースのシステム (Ubuntu を含む) は、コマンドラインからパッケージを管理するために apt-* コマンドを使用します。

この記事では、例として Apache 2 のインストールを使用して、apt-* コマンドを使用してパッケージを表示、インストール、削除、またはアップグレードする方法を確認します。

1. apt-cache search:パッケージ名を使用してリポジトリを検索

Apache 2 をインストールしている場合、パッケージ名は apache2 であると推測できます。有効なパッケージ名であるかどうかを確認するには、以下に示すように、その特定のパッケージ名のリポジトリを検索することをお勧めします。

次の例は、リポジトリで特定のパッケージ名を検索する方法を示しています。

$ apt-cache search ^apache2$
apache2 - Apache HTTP Server metapackage

2. apt-cache search:パッケージの説明を使用してリポジトリを検索

パッケージの正確な名前がわからない場合でも、以下に示すようにパッケージの説明を使用して検索できます。

$ apt-cache search "Apache HTTP Server"
apache2 - Apache HTTP Server metapackage
apache2-doc - Apache HTTP Server documentation
apache2-mpm-event - Apache HTTP Server - event driven model
apache2-mpm-prefork - Apache HTTP Server - traditional non-threaded model
apache2-mpm-worker - Apache HTTP Server - high speed threaded model
apache2.2-common - Apache HTTP Server common files

3. apt-file search:パッケージのファイル名を使用してリポジトリを検索

インストールしたいパッケージの構成ファイル名 (または) 実行可能ファイル名がわかっている場合があります。

次の例は、apache2.conf ファイルが apache2.2-common パッケージの一部であることを示しています。以下に示すように、apt-file コマンドを使用して構成ファイル名でリポジトリを検索します。

$ apt-file search apache2.conf
apache2.2-common: /etc/apache2/apache2.conf
apache2.2-common: /usr/share/doc/apache2.2-common/examples/apache2/apache2.conf.gz

4. apt-cache show:パッケージに関する基本情報

次の例は、apache2 パッケージに関する基本情報を表示します。

$ apt-cache show apache2
Package: apache2
Priority: optional
Maintainer: Ubuntu Core Developers
Original-Maintainer: Debian Apache Maintainers
Version: 2.2.11-2ubuntu2.3
Depends: apache2-mpm-worker (>= 2.2.11-2ubuntu2.3)
 | apache2-mpm-prefork (>= 2.2.11-2ubuntu2.3)
 | apache2-mpm-event (>= 2.2.11-2ubuntu2.3)
Filename: pool/main/a/apache2/apache2_2.2.11-2ubuntu2.3_all.deb
Size: 46350
Description: Apache HTTP Server metapackage
 The Apache Software Foundation's goal is to build a secure, efficient and
 extensible HTTP server as standards-compliant open source software.
Homepage: http://httpd.apache.org/

5. apt-cache showpkg:パッケージに関する詳細情報

「apt-cache show」は、パッケージに関する基本情報を表示します。以下に示すように、パッケージに関する詳細情報を表示するには、「apt-cache showpkg」を使用します。

$ apt-cache showpkg apache2
Package: apache2
Versions:
2.2.11-2ubuntu2.3 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_jaunty-updates_main_binary-i386_Packages) (/var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_jaunty-security_main_binary-i386_Packages)
 Description Language:
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_jaunty-updates_main_binary-i386_Packages
                  MD5: d24f049cd70ccfc178dd8974e4b1ed01
Reverse Depends:
  squirrelmail,apache2
  squid3-cgi,apache2
  phpmyadmin,apache2
  mahara-apache2,apache2
  ipplan,apache2
Dependencies:
  2.2.11-2ubuntu2.3 - apache2-mpm-worker (18 2.2.11-2ubuntu2.3) apache2-mpm-prefork (18 2.2.11-2ubuntu2.3) apache2-mpm-event (2 2.2.11-2ubuntu2.3)
  2.2.11-2ubuntu2 - apache2-mpm-worker (18 2.2.11-2ubuntu2) apache2-mpm-prefork (18 2.2.11-2ubuntu2) apache2-mpm-event (2 2.2.11-2ubuntu2)
Provides:
  2.2.11-2ubuntu2.3 -
  2.2.11-2ubuntu2 -
Reverse Provides:
  apache2-mpm-itk 2.2.6-02-1build4.3
  apache2-mpm-worker 2.2.11-2ubuntu2.3
  apache2-mpm-prefork 2.2.11-2ubuntu2.3
  apache2-mpm-prefork 2.2.11-2ubuntu2
  apache2-mpm-event 2.2.11-2ubuntu2

6. apt-file list:パッケージ内にあるすべてのファイルを一覧表示

以下に示すように、「apt-file list」を使用して、apache2 パッケージ内にあるすべてのファイルを表示します。

$ apt-file list apache2 | more
apache2: /usr/share/bug/apache2/control
apache2: /usr/share/bug/apache2/script
apache2: /usr/share/doc/apache2/NEWS.Debian.gz
apache2: /usr/share/doc/apache2/README.Debian.gz
apache2: /usr/share/doc/apache2/changelog.Debian.gz
...

7. apt-cache depends:すべての依存パッケージを一覧表示

インストールの前に、すべての依存パッケージを表示したい場合は、以下に示すように「apt-cache depends」を使用してください。

$ apt-cache depends apache2
apache2
 |Depends: apache2-mpm-worker
 |Depends: apache2-mpm-prefork
  Depends: apache2-mpm-event

8. dpkg -l:パッケージは既にインストールされていますか?

パッケージをインストールする前に、以下に示すように dpkg -l コマンドを使用して、パッケージがまだインストールされていないことを確認することをお勧めします。

$ dpkg -l | grep -i apache

9. apt-get install:パッケージのインストール

最後に、以下に示すように「apt-get install」を使用してパッケージをインストールします。

$ sudo apt-get install apache2
[sudo] password for ramesh: 

The following NEW packages will be installed:
  apache2 apache2-mpm-worker apache2-utils apache2.2-common libapr1
  libaprutil1 libpq5

0 upgraded, 7 newly installed, 0 to remove and 26 not upgraded.

10. dpkg -l :パッケージが正常にインストールされたかどうかを確認します

パッケージをインストールしたら、「dpkg -l」を使用して、パッケージが正常にインストールされたことを確認してください。

$ dpkg -l | grep apache
ii  apache2             2.2.11-2ubuntu2.3  Apache HTTP Server metapackage
ii  apache2-mpm-worker  2.2.11-2ubuntu2.3  Apache HTTP Server - high speed threaded mod
ii  apache2-utils       2.2.11-2ubuntu2.3  utility programs for webservers
ii  apache2.2-common    2.2.11-2ubuntu2.3  Apache HTTP Server common files

11. apt-get remove:パッケージを削除する

以下に示すように、「apt-get purge」または「apt-get remove」を使用してパッケージを削除します。

$ sudo apt-get purge apache2

(or)

$ sudo apt-get remove apache2

The following packages were automatically installed and are no longer required:
  apache2-utils linux-headers-2.6.28-11 libapr1 apache2.2-common
  linux-headers-2.6.28-11-generic apache2-mpm-worker libpq5 libaprutil1

Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  apache2
0 upgraded, 0 newly installed, 1 to remove and 26 not upgraded.
Removing apache2 ...
  • apt-get remove しません パッケージの構成ファイルを削除
  • apt-get パージ パッケージの構成ファイルを削除します

12. apt-get -u install:特定のパッケージをアップグレードする

次の例は、1 つの特定のパッケージをアップグレードする方法を示しています。

$ sudo apt-get -u install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
apache2 is already the newest version.
The following packages were automatically installed and are no longer required:
  linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 26 not upgraded.

13. apt-get -u upgrade:すべてのパッケージをアップグレード

すべてのパッケージを最新バージョンにアップグレードするには、以下に示すように「apt-get -u upgrade」を使用します。

$ sudo apt-get -u upgrade
The following packages will be upgraded:
  libglib2.0-0 libglib2.0-data libicu38 libsmbclient libwbclient0
  openoffice.org-base-core openoffice.org-calc openoffice.org-common
  openoffice.org-core openoffice.org-draw openoffice.org-emailmerge
  openoffice.org-gnome openoffice.org-gtk openoffice.org-impress
  openoffice.org-math openoffice.org-style-human openoffice.org-writer
  python-uno samba-common smbclient ttf-opensymbol tzdata
26 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Linux
  1. Linuxでの例で「cat」および「tac」コマンドを使用する方法

  2. Raspberry Piファイアウォール:UFWを使用してインストールおよび管理する方法

  3. 例を使用したコマンドチュートリアルの展開と展開解除

  1. 実用的な例でLinuxHexdumpコマンドを使用する方法

  2. Linuxでファイルとディレクトリを圧縮する方法(例付き)

  3. Linuxのヘッドコマンドとテールコマンドを例で説明

  1. Npmを使用してNodeJSパッケージを管理する方法

  2. LinuxでのLogrotateの使用ログファイルの管理(例を含む)

  3. findおよびduコマンドを使用してLinuxで大きなファイルを検索する方法