apt コマンドの概要

目次

Linux ソフトウェア リポジトリ

ソフトウェア ソース構成

apt コマンド

一般的なコマンドは次のとおりです。

一般的な使い方

例: apt を使用して redis ソフトウェアをインストールする


Linux ソフトウェア リポジトリ

Ubuntu は、効果的な編成と管理のために、さまざまなソフトウェア パッケージをカテゴリ別にソフトウェア ウェアハウスに格納するための集中型ソフトウェア ウェアハウス メカニズムを採用しています。次に、ソフトウェア ウェアハウスを多くのミラー サーバーに配置し、それらの基本的な一貫性を維持します。このようにして、すべての Ubuntu ユーザーは常にインストール パッケージの最新バージョンを取得できます。したがって、ユーザーにとって、これらのミラー サーバーはソフトウェア ソース (リポジトリ) です。

率直に言って、ここのソフトウェア ウェアハウスは Apple Store に似ています。これの目的は、Linux にインストールされたソフトウェアを安全にすることです。

各ユーザーのネットワーク環境が異なるため、各ミラー サイトに自由にアクセスすることはできません。Ubuntu システムで選択的にアクセスできるようにするには、ソフトウェア ソース構成ファイル /etc/apt/sources.list を使用して、アクセスに最適なミラー サイト アドレスをリストします。

それでも、ソフトウェア ソースの構成ファイルには、Ubuntu システムがアクセスできるミラー サイトのアドレスしか記載されていませんが、これらのミラー サイトにどのようなソフトウェア リソースがあるかは明確ではありません。ソフトウェア パッケージがインストールされるたびにサーバーを検索するのは非常に非効率的です。したがって、これらのソフトウェア リソースのリストを作成 (インデックス ファイルを作成) して、ローカル ホストがクエリできるようにする必要があります。これが APT パッケージ マネージャの仕組みです。

同時に、APT は Ubuntu Linux システムでパッケージの依存関係をチェックできます。これにより、Ubuntu ユーザーのパッケージのインストールとアンインストールのプロセスが大幅に簡素化されます。そのため、APT は Ubuntu Linux で最も人気のあるツールとなり、他のソフトウェア パッケージ管理ツールの基盤となるツールにもなりました.たとえば、グラフィカル インターフェイスを備えたソフトウェア パッケージ管理ツールである Synaptic は、APT に基づいて動作します.

ソフトウェア ソース構成

Ubuntu Linux をインストールすると、システムは、ユーザーが選択した国/タイム ゾーンに応じて、適切なソフトウェア ソース アドレスを推奨します。通常、ユーザーはデフォルトの構成ファイルを使用できます。ただし、ユーザーがより適切なソフトウェア ソース ミラー サイトを見つけた場合は、APT ソースをリセットできます。

APT パッケージ マネージャーは、ソフトウェア パッケージが利用可能なミラー サイトのアドレスをファイルに一覧表示します。ソフトウェア ソース構成ファイルは /etc/apt/sources.list です。このソフトウェア ソース構成ファイルの本質は通常のテキスト ファイルであり、スーパー管理者の権限の下で任意のテキスト エディターで編集できます。このファイルでは、追加されたソフトウェア ソース ミラー サイトを構成アイテムと呼びます。

apt コマンド

apt-get は Linux コマンドであり、deb パッケージ管理オペレーティング システム (Ubuntu システムなど) に適しています。主に、インターネット上のソフトウェア ウェアハウスからソフトウェアまたはオペレーティング システムを自動的に検索、インストール、アップグレード、アンインストールするために使用されます。

apt コマンドは apt-get のアップグレード版で、現在、すべての主要な Linux ディストリビューターは apt コマンドの使用を推奨しています。

一般的なコマンドは次のとおりです。

update
update コマンドは、構成されたソースからパッケージ情報をダウンロードするために使用されます。update コマンドは、パッケージをインストールまたはアップグレードする前に必ず実行する必要があります。

upgrade
upgrade コマンドは、構成されたソースから現在のシステム内のすべてのパッケージの利用可能なアップグレードをインストールするために使用されます。依存関係を満たす必要がある場合は新しいパッケージがインストールされますが、既存のパッケージは削除されません。パッケージのアップグレードでインストール済みパッケージの削除が必要な場合、このパッケージのアップグレードは実行されません。

full-upgrade
full-upgrade コマンドはアップグレード機能を実行し、システムを新しいバージョンにアップグレードする必要がある場合、現在インストールされているパッケージを削除します。

install、remove、purge
install コマンドは、1 つ以上の指定されたパッケージをインストールするために使用されます。remove コマンドを使用してパッケージを削除しますが、パッケージの構成ファイルは保持されます。purge コマンドは、その構成ファイルをパッケージと共に削除します。

autoremove
autoremove コマンドは、他のパッケージの依存関係を満たすために自動的にインストールされ、依存関係が変更されたか、それらを必要とするパッケージが削除されたために不要になった、自動インストールされたパッケージを削除するために使用されます。

search
search コマンドは、指定されたアイテムの利用可能なパッケージのリストを検索し、一致するものを表示します。これは、特定の機能を持つパッケージを探している場合などに便利です。

たとえば、jdk をインストールしたいが、特定のソフトウェア名がわからない場合は、検索コマンドを使用できます。

parallels@ubuntu-linux-20-04-desktop:~$ sudo apt search jdk
Sorting... Done
Full Text Search... Done
crypto-policies/focal 20190816git-1 all
  unify the crypto policies used by different applications and libraries

default-jdk/focal 2:1.11-72 arm64
  Standard Java or Java compatible Development Kit

default-jdk-doc/focal 2:1.11-72 arm64
  Standard Java or Java compatible Development Kit (documentation)

default-jdk-headless/focal 2:1.11-72 arm64
  Standard Java or Java compatible Development Kit (headless)

default-jre/focal 2:1.11-72 arm64
  Standard Java or Java compatible Runtime

default-jre-headless/focal 2:1.11-72 arm64
  Standard Java or Java compatible Runtime (headless)

golang-github-jdkato-prose-dev/focal 1.1.1-1 all
  Golang library for text processing

golang-github-jdkato-syllables-dev/focal 0.1.0+git20170409.10.8961fa0-1 all
  Go syllable counter

japitools/focal 0.9.7-1 all
  Java API compatibility testing tools

jattach/focal 1.5-2 arm64
  JVM Dynamic Attach utility all in one jmap jstack jcmd jinfo

show
show コマンドは、依存関係、インストール サイズとダウンロード サイズ、パッケージのソース、パッケージの内容の説明など、特定のパッケージに関する情報を表示します。たとえば、パッケージを削除したり、インストールする新しいパッケージを検索したりする前に、この情報を確認すると役立ちます。

list
list コマンドは、特定の条件を満たすパッケージのリストを表示でき、デフォルトですべてのパッケージがリストされます。インストールされているパッケージは --installed オプションで一覧表示でき、アップグレード可能なパッケージは --upgrade オプションで一覧表示できます。

edit-sources
edit-sources コマンドは、/etc/apt/source.list ファイルを編集するために使用されます

一般的な使い方

パッケージ インデックス ファイルを更新する

$ sudo apt update

インストールパッケージ

$ sudo apt install nginx

指定されたバージョンのパッケージをインストールします

$ sudo apt install vim=2:8.0.1453-1ubuntu1

ローカル deb パッケージ ファイルをインストールする

$ sudo apt インストール名.deb

このメソッドは、依存パッケージを自動的にダウンロードしてインストールします。

システムに新しいパッケージがインストールされている
upgrade コマンドは、インストールされているパッケージをアップグレードしますが、どのパッケージも削除しません。その目標は、可能性のある侵襲的なアップグレードを最小限に抑えることです。

$ sudo apt update
$ sudo apt アップグレード

パッケージの削除
apt install でインストールされたパッケージは、次の 2 つのコマンドで削除できます。

$ sudo apt remove nmap
$ sudo apt purge nmap

remove コマンドは構成ファイルを保持し、purge コマンドは構成ファイルをまとめて削除します。

パッケージ情報を見る

$ apt show vim

parallels@ubuntu-linux-20-04-desktop:/etc/apt$ sudo apt show vim
Package: vim
Version: 2:8.1.2269-1ubuntu5.7
Priority: optional
Section: editors
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Debian Vim Maintainers <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 3,143 kB
Provides: editor
Depends: vim-common (= 2:8.1.2269-1ubuntu5.7), vim-runtime (= 2:8.1.2269-1ubuntu5.7), libacl1 (>= 2.2.23), libc6 (>= 2.29), libcanberra0 (>= 0.2), libgpm2 (>= 1.20.7), libpython3.8 (>= 3.8.2), libselinux1 (>= 1.32), libtinfo6 (>= 6)
Suggests: ctags, vim-doc, vim-scripts
Homepage: https://www.vim.org/
Task: server, cloud-image, lubuntu-desktop
Download-Size: 1,135 kB
APT-Manual-Installed: yes
APT-Sources: http://ports.ubuntu.com/ubuntu-ports focal-updates/main arm64 Packages
Description: Vi IMproved - enhanced vi editor
 Vim is an almost compatible version of the UNIX editor Vi.
 .
 Many new features have been added: multi level undo, syntax
 highlighting, command line history, on-line help, filename
 completion, block operations, folding, Unicode support, etc.
 .
 This package contains a version of vim compiled with a rather
 standard set of features.  This package does not provide a GUI
 version of Vim.  See the other vim-* packages if you need more
 (or less).

N: There is 1 additional record. Please use the '-a' switch to see it

例: apt を使用して redis ソフトウェアをインストールする

1 最初にコマンド sudo apt update を実行します

parallels@ubuntu-linux-20-04-desktop:/etc/apt$ sudo apt update
Ign:1 https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 InRelease
Hit:2 http://ports.ubuntu.com/ubuntu-ports focal InRelease
Hit:3 https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 Release
Get:5 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease [114 kB]
Get:6 http://ports.ubuntu.com/ubuntu-ports focal-backports InRelease [108 kB]
Get:7 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease [114 kB]                                                                                                
Get:8 http://ports.ubuntu.com/ubuntu-ports focal-updates/main arm64 Packages [1,203 kB]                                                                                     
Get:9 http://ports.ubuntu.com/ubuntu-ports focal-updates/main arm64 DEP-11 Metadata [278 kB]                                                                                
Get:10 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 Packages [868 kB]                                                                                  
Get:11 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 DEP-11 Metadata [389 kB]                                                                           
Get:12 http://ports.ubuntu.com/ubuntu-ports focal-backports/main arm64 DEP-11 Metadata [9,568 B]                                                                            
Get:13 http://ports.ubuntu.com/ubuntu-ports focal-backports/universe arm64 DEP-11 Metadata [30.8 kB]                                                                        
Get:14 http://ports.ubuntu.com/ubuntu-ports focal-security/main arm64 DEP-11 Metadata [40.7 kB]                                                                             
Get:15 http://ports.ubuntu.com/ubuntu-ports focal-security/universe arm64 DEP-11 Metadata [66.3 kB]                                                                         
Fetched 3,222 kB in 1min 3s (51.3 kB/s)                                                                                                                                     
Reading package lists... Done
Building dependency tree       
Reading state information... Done
62 packages can be upgraded. Run 'apt list --upgradable' to see them.
parallels@ubuntu-linux-20-04-desktop:/etc/apt$ sudo apt list --upgradable 
Listing... Done
alsa-ucm-conf/focal-updates 1.2.2-1ubuntu0.13 all [upgradable from: 1.2.2-1ubuntu0.11]
apport-gtk/focal-updates 2.20.11-0ubuntu27.23 all [upgradable from: 2.20.11-0ubuntu27.21]
...

2 クエリ redis ソフトウェア: sudo apt search redis

parallels@ubuntu-linux-20-04-desktop:/etc/apt$ sudo apt search redis
Sorting... Done
Full Text Search... Done
babeld/focal 1.9.1-1 arm64
  loop-free distance-vector routing protocol

bird/focal 1.6.8-1 arm64
  Internet Routing Daemon

bird-bgp/focal 1.6.8-1 all
  Internet Routing Daemon [transitional package]

bird-doc/focal 1.6.8-1 all
  Internet Routing Daemon - documentation

bird2/focal 2.0.7-2 arm64
  Internet Routing Daemon

bird2-doc/focal 2.0.7-2 all
  Internet Routing Daemon - documentation

3 最初に redis ソフトウェアを確認できます: sudo apt show redis

parallels@ubuntu-linux-20-04-desktop:/etc/apt$ sudo apt show redis
Package: redis
Version: 5:5.0.7-2ubuntu0.1
Priority: optional
Section: universe/database
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Chris Lamb <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 63.5 kB
Depends: redis-server (<< 5:5.0.7-2ubuntu0.1.1~), redis-server (>= 5:5.0.7-2ubuntu0.1)
Homepage: https://redis.io/
Download-Size: 3,064 B
APT-Sources: http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 Packages
Description: Persistent key-value database with network interface (metapackage)
 Redis is a key-value database in a similar vein to memcache but the dataset
 is non-volatile. Redis additionally provides native support for atomically
 manipulating and querying data structures such as lists and sets.
 .
 The dataset is stored entirely in memory and periodically flushed to disk.

N: There is 1 additional record. Please use the '-a' switch to see it

 4 ソフトウェアをインストールします: sudo apt install redis

parallels@ubuntu-linux-20-04-desktop:~$ sudo apt install redis
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libhiredis0.14 libjemalloc2 liblua5.1-0 lua-bitop lua-cjson redis-server redis-tools
Suggested packages:
  ruby-redis
The following NEW packages will be installed:
  libhiredis0.14 libjemalloc2 liblua5.1-0 lua-bitop lua-cjson redis redis-server redis-tools
0 upgraded, 8 newly installed, 0 to remove and 62 not upgraded.
Need to get 815 kB of archives.
After this operation, 3,804 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 libhiredis0.14 arm64 0.14.0-6 [28.2 kB]
Get:2 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 libjemalloc2 arm64 5.2.1-1ubuntu1 [172 kB]
Get:3 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 liblua5.1-0 arm64 5.1.5-8.1build4 [92.0 kB]
Get:4 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 lua-bitop arm64 1.0.2-5 [6,196 B]
Get:5 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 lua-cjson arm64 2.1.0+dfsg-2.1 [15.6 kB]                                                                    
Get:6 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 redis-tools arm64 5:5.0.7-2ubuntu0.1 [461 kB]                                                       
Get:7 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 redis-server arm64 5:5.0.7-2ubuntu0.1 [37.4 kB]                                                     
Get:8 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 redis all 5:5.0.7-2ubuntu0.1 [3,064 B]                                                              
Fetched 815 kB in 11s (76.6 kB/s)                                                                                                                                           
Selecting previously unselected package libhiredis0.14:arm64.
(Reading database ... 185226 files and directories currently installed.)
Preparing to unpack .../0-libhiredis0.14_0.14.0-6_arm64.deb ...
Unpacking libhiredis0.14:arm64 (0.14.0-6) ...
Selecting previously unselected package libjemalloc2:arm64.
Preparing to unpack .../1-libjemalloc2_5.2.1-1ubuntu1_arm64.deb ...
Unpacking libjemalloc2:arm64 (5.2.1-1ubuntu1) ...
Selecting previously unselected package liblua5.1-0:arm64.
Preparing to unpack .../2-liblua5.1-0_5.1.5-8.1build4_arm64.deb ...
Unpacking liblua5.1-0:arm64 (5.1.5-8.1build4) ...
Selecting previously unselected package lua-bitop:arm64.
Preparing to unpack .../3-lua-bitop_1.0.2-5_arm64.deb ...
...

5 redis ソフトウェアをもう一度確認します: sudo apt show redis

parallels@ubuntu-linux-20-04-desktop:~$ sudo apt show redis
Package: redis
Version: 5:5.0.7-2ubuntu0.1
Priority: optional
Section: universe/database
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Chris Lamb <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 63.5 kB
Depends: redis-server (<< 5:5.0.7-2ubuntu0.1.1~), redis-server (>= 5:5.0.7-2ubuntu0.1)
Homepage: https://redis.io/
Download-Size: 3,064 B
APT-Manual-Installed: yes
APT-Sources: http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 Packages
Description: Persistent key-value database with network interface (metapackage)
 Redis is a key-value database in a similar vein to memcache but the dataset
 is non-volatile. Redis additionally provides native support for atomically
 manipulating and querying data structures such as lists and sets.
 .
 The dataset is stored entirely in memory and periodically flushed to disk.

N: There is 1 additional record. Please use the '-a' switch to see it

6 この時点で、redis サービスが自動的に開始されます

parallels@ubuntu-linux-20-04-desktop:~$ ps -e | grep redis
 134624 ?        00:00:00 redis-server

7回のテスト

parallels@ubuntu-linux-20-04-desktop:~$ redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> 

×

おすすめ

転載: blog.csdn.net/daida2008/article/details/124641493