Advanced Packaging Toolとも呼ばれるAPTは、Ubuntu 16.04、Ubuntu 18.04、Debian 8、Debian9などのDebianベースのディストリビューションでパッケージを管理するためのコマンドラインツールです。 APTは、パッケージのインストール、削除、アップグレードのプロセスを簡素化し、コマンドラインインターフェイスを介してオペレーティングシステム全体をアップグレードするためにも使用されます
このチュートリアルでは、Ubuntu18.04LTSサーバーでAPTコマンドラインツールを使用してパッケージを管理する方法について説明します。
- Ubuntu18.04LTSを実行しているサーバー。
- サーバー上のrootまたはsudoアクセス。
以下のすべてのコマンドはrootユーザーとして実行されます。シェルにrootユーザーとしてログインするか、次のコマンドを実行します。
sudo -s
rootユーザーになります。別の方法として、すべてのコマンドの前に「sudo」を付けることができます。
Apt-getは、さまざまなソースから情報を取得し、ローカルデータベースに保存することで機能します。 updateコマンドは、その場所からパッケージをフェッチし、パッケージを新しいバージョンに更新します。
apt-get update -y
上記のコマンドを実行すると、データベースが最新の状態になります。
upgradeコマンドは、現在インストールされているすべてのソフトウェアパッケージを新しいバージョンにアップグレードするために使用されます。
apt-get upgrade -y
dist-upgradeコマンドを使用してパッケージをアップグレードすることもできますが、スマートな競合解決方法を使用してパッケージの依存関係を変更します。
apt-get dist-upgrade -y
データベースが更新されたら、次のコマンドを実行して任意のパッケージをインストールできます。
apt-get install package1 package2
たとえば、次のコマンドを実行してNginxWebサーバーパッケージをインストールできます。
apt-get install nginx
パッケージファイルのみをダウンロードしてインストールしない場合は、次のコマンドを実行できます。
apt-get install -d package1
上記のコマンドは、/ var / cache / apt/archivesディレクトリにあるパッケージファイルをダウンロードします。
新しいバージョンでパッケージを再インストールするには、次のコマンドを実行します。
apt-get install package1 --reinstall
Aptでパッケージを削除
システムからパッケージを削除するには、次のコマンドを実行するだけです。
apt-get remove package1
上記のコマンドはパッケージを削除するだけで、構成ファイルは保持します。
次のコマンドを使用して構成ファイルを含むパッケージを削除するには:
apt-get purge package1
次のコマンドを使用して、不要なパッケージをすべて削除し、データベースをクリーンアップすることもできます。
apt-get autoremove
apt-get clean
Apt-Cacheを使用したパッケージの検索
コマンドapt-cacheは、ソフトウェアパッケージを検索するために使用されます。
説明からパッケージを見つけるには、次のコマンドを実行します。
apt-cache search proftpd
次の出力が表示されます。
resource-agents - Cluster Resource Agents fail2ban - ban hosts that cause multiple authentication errors ftpd - File Transfer Protocol (FTP) server gadmin-proftpd - GTK+ configuration tool for proftpd gadmin-proftpd-dbg - GTK+ configuration tool for proftpd debug package gadmintools - GTK+ server administration tools (meta-package) proftpd-basic - Versatile, virtual-hosting FTP daemon - binaries proftpd-dev - Versatile, virtual-hosting FTP daemon - development files proftpd-doc - Versatile, virtual-hosting FTP daemon - documentation proftpd-mod-autohost - ProFTPD module mod_autohost proftpd-mod-case - ProFTPD module mod_case proftpd-mod-clamav - ProFTPD module mod_clamav proftpd-mod-dnsbl - ProFTPD module mod_dnsbl proftpd-mod-fsync - ProFTPD module mod_fsync proftpd-mod-geoip - Versatile, virtual-hosting FTP daemon - GeoIP module proftpd-mod-ldap - Versatile, virtual-hosting FTP daemon - LDAP module proftpd-mod-msg - ProFTPD module mod_msg proftpd-mod-mysql - Versatile, virtual-hosting FTP daemon - MySQL module proftpd-mod-odbc - Versatile, virtual-hosting FTP daemon - ODBC module proftpd-mod-pgsql - Versatile, virtual-hosting FTP daemon - PostgreSQL module proftpd-mod-sqlite - Versatile, virtual-hosting FTP daemon - SQLite3 module proftpd-mod-tar - ProFTPD module mod_tar proftpd-mod-vroot - ProFTPD module mod_vroot
次のコマンドを使用してproftpdで始まるすべてのパッケージを検索するには:
apt-cache pkgnames proftpd
次の出力が表示されます。
apt-cache pkgnames proftpd proftpd-mod-dnsbl proftpd-mod-odbc proftpd-mod-pgsql proftpd-doc proftpd-mod-tar proftpd-mod-ldap proftpd-mod-case proftpd-mod-geoip proftpd-mod-mysql proftpd-basic proftpd-mod-vroot proftpd-mod-clamav proftpd-mod-autohost proftpd-mod-fsync proftpd-mod-sqlite proftpd-mod-msg proftpd-dev
次のコマンドを使用して、任意のパッケージ(nano)の完全な情報を確認できます。
apt-cache show nano
出力:
Package: nano Priority: standard Section: editors Installed-Size: 600 Maintainer: Ubuntu Developers <[email protected]> Original-Maintainer: Jordi Mallach <[email protected]> Architecture: amd64 Version: 2.2.6-1ubuntu1 Replaces: pico Provides: editor Depends: libc6 (>= 2.14), libncursesw5 (>= 5.6+20070908), libtinfo5, dpkg (>= 1.15.4) | install-info Suggests: spell Conflicts: pico Breaks: alpine-pico (<= 2.00+dfsg-5) Filename: pool/main/n/nano/nano_2.2.6-1ubuntu1_amd64.deb Size: 194060 MD5sum: c97dc062e9941bfe13b6b303cf8ed639 SHA1: ee93fcfd1f2ecd601b0a8f8932319848043f4f0f SHA256: f20d8cca5c30b90ebf68301d126f86e473ac83e7d6fdc36f59bcd685c2eb4020 Description-en: small, friendly text editor inspired by Pico GNU nano is an easy-to-use text editor originally designed as a replacement for Pico, the ncurses-based editor from the non-free mailer package Pine (itself now available under the Apache License as Alpine). . However, nano also implements many features missing in pico, including: - feature toggles; - interactive search and replace (with regular expression support); - go to line (and column) command; - auto-indentation and color syntax-highlighting; - filename tab-completion and support for multiple buffers; - full internationalization support. Description-md5: b7e1d8c3d831118724cfe8ea3996b595 Homepage: http://www.nano-editor.org/ Bugs: https://bugs.launchpad.net/ubuntu/+filebug Origin: Ubuntu Supported: 5y Task: standard, kubuntu-active, kubuntu-active
次のコマンドを使用して特定のパッケージの依存関係を確認するには:
apt-cache showpkg htop
出力:
Package: htop Versions: 2.1.0-3 (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_main_binary-amd64_Packages) (/var/lib/dpkg/status) Description Language: File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_main_binary-amd64_Packages MD5: 8eb5aa19b3c92a975dc78e2165f6688d Description Language: en File: /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_main_i18n_Translation-en MD5: 8eb5aa19b3c92a975dc78e2165f6688d Reverse Depends: ubuntu-server,htop lubuntu-qt-desktop,htop lubuntu-gtk-desktop,htop lubuntu-desktop,htop util-vserver,htop ubuntu-benchmark-tools,htop lubuntu-qt-desktop,htop lubuntu-gtk-desktop,htop lubuntu-desktop,htop hollywood,htop freedombox-setup,htop Dependencies: 2.1.0-3 - libc6 (2 2.15) libncursesw5 (2 6) libtinfo5 (2 6) lsof (0 (null)) strace (0 (null)) Provides: 2.1.0-3 - Reverse Provides:
次のコマンドを使用して、パッケージがインストールされているかどうか、およびパッケージが属するリポジトリを確認するには:
apt-cache policy apache2
次の出力が表示されます。
apache2: Installed: 2.4.29-1ubuntu4.5 Candidate: 2.4.29-1ubuntu4.5 Version table: *** 2.4.29-1ubuntu4.5 500 500 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages 100 /var/lib/dpkg/status 2.4.29-1ubuntu4.4 500 500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages 2.4.29-1ubuntu4 500 500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages
APTの高度な使用法
次のコマンドを使用して、壊れた依存関係を確認することもできます。
apt-get check
次の出力が表示されます。
Reading package lists... Done Building dependency tree Reading state information... Done
パッケージ(ここではvsftpd)のビルド依存関係を検索してインストールするには、次のコマンドを使用します。
apt-get build-dep vsftpd
次の出力に、vsftpdパッケージに必要なすべての依存関係が表示されます。
Reading package lists... Done Building dependency tree Reading state information... Done Note, selecting 'libcap-dev' instead of 'libcap2-dev' The following NEW packages will be installed: debhelper dh-apparmor dh-apport libcap-dev libpam0g-dev po-debconf The following packages will be upgraded: libpam0g 1 upgraded, 6 newly installed, 0 to remove and 595 not upgraded. 1 not fully installed or removed. Need to get 1,020 kB of archives. After this operation, 2,238 kB of additional disk space will be used. Do you want to continue? [Y/n]
パッケージのソースコードをダウンロードするには、次のコマンドを実行してパッケージを解凍してコンパイルします。
apt-get --compile source htop
次の出力が表示されます。
Reading package lists... Done NOTICE: 'htop' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/debian/htop.git Please use: git clone https://salsa.debian.org/debian/htop.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 314 kB of source archives. Get:1 http://archive.ubuntu.com/ubuntu bionic/main htop 2.1.0-3 (dsc) [1,961 B] Get:2 http://archive.ubuntu.com/ubuntu bionic/main htop 2.1.0-3 (tar) [303 kB] Get:3 http://archive.ubuntu.com/ubuntu bionic/main htop 2.1.0-3 (diff) [8,824 B] Fetched 314 kB in 35s (8,877 B/s) dpkg-source: info: extracting htop in htop-2.1.0 dpkg-source: info: unpacking htop_2.1.0.orig.tar.gz dpkg-source: info: unpacking htop_2.1.0-3.debian.tar.xz dpkg-source: info: applying 601-openvz-new-ctid-vpid.patch dpkg-source: info: applying fix-small-terminals.patch dpkg-source: info: applying fix-ldflags.patch dpkg-source: info: applying fix-isalnum-crash.patch dpkg-buildpackage: info: source package htop dpkg-buildpackage: info: source version 2.1.0-3 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Graham Inggs <[email protected]> dpkg-buildpackage: info: host architecture amd64
次のコマンドでAPTのバージョンを確認するには:
apt-get -v
出力:
apt 1.6.1 (amd64) Supported modules: *Ver: Standard .deb *Pkg: Debian dpkg interface (Priority 30) Pkg: Debian APT solver interface (Priority -1000) Pkg: Debian APT planner interface (Priority -1000) S.L: 'deb' Debian binary tree S.L: 'deb-src' Debian source tree Idx: Debian Source Index Idx: Debian Package Index Idx: Debian Translation Index Idx: Debian dpkg status file Idx: Debian deb file Idx: Debian dsc file Idx: Debian control file Idx: EDSP scenario file Idx: EIPP scenario file
次のコマンドを実行すると、APTで使用可能なすべてのオプションを一覧表示できます。
apt-get -h
出力:
apt 1.6.1 (amd64) Usage: apt-get [options] command apt-get [options] install|remove pkg1 [pkg2 ...] apt-get [options] source pkg1 [pkg2 ...] apt-get is a command line interface for retrieval of packages and information about them from authenticated sources and for installation, upgrade and removal of packages together with their dependencies. Most used commands: update - Retrieve new lists of packages upgrade - Perform an upgrade install - Install new packages (pkg is libc6 not libc6.deb) remove - Remove packages purge - Remove packages and config files autoremove - Remove automatically all unused packages dist-upgrade - Distribution upgrade, see apt-get(8) dselect-upgrade - Follow dselect selections build-dep - Configure build-dependencies for source packages clean - Erase downloaded archive files autoclean - Erase old downloaded archive files check - Verify that there are no broken dependencies source - Download source archives download - Download the binary package into the current directory changelog - Download and display the changelog for the given package See apt-get(8) for more information about the available commands. Configuration options and syntax is detailed in apt.conf(5). Information about how to configure sources can be found in sources.list(5). Package and version choices can be expressed via apt_preferences(5). Security details are available in apt-secure(8). This APT has Super Cow Powers.