Amazon Linux 2 の amazon-linux-extras とは

2021/02/02

amazon-linux-extras とは

AWS EC2 の AMI(マシンイメージ) で Amazon Linux 2 を選択してサーバ構築すると amazon-linux-extras コマンドが利用できます。

amazon-linux-extras は Amazon Linux 用のパッケージツールで、主要なソフトウェアをまとめてインストールできます。
ただし、amazon-linux-extras パッケージに含まれないソフトウェアは別途インストールする必要があります。

amazon-linux-extras のコマンドは単純で、以下の4つのコマンドが用意されています。

  • help:ヘルプ
  • info:パッケージ詳細
  • install:パッケージインストール
  • list:パッケージ一覧

トピック一覧確認

amazon-linux-extras でトピック一覧(パッケージ情報)を確認できます。 amazon-linux-extras list でも同様の動作をします。


$ amazon-linux-extras
...
 33  java-openjdk11           available    [ =11  =stable ]
 34  lynis                    available    [ =stable ]
 35  kernel-ng                available    [ =stable ]
 36  BCC                      available    [ =0.x  =stable ]
 37  mono                     available    [ =5.x  =stable ]
 38  nginx1                   available    [ =stable ]
...
 42  php7.4=latest            enabled      [ =stable ]
...

数字の次にの項目が amazon-linux-extras のトピック名(パッケージ名)です。実際にインストールする Linux のパッケージ名とは違うので注意が必要です。

available はインストール可能な状態、enabled は実際にインストールされた状態です。

パッケージの詳細を確認

また、amazon-linux-extras info でパッケージ内容を確認できます。例えば、php7.4 のパッケージを確認してみます。


$ amazon-linux-extras info php7.4
php7.4 recommends php-cli                    # yum install php-cli
php7.4 recommends php-pdo                    # yum install php-pdo
php7.4 recommends php-fpm                    # yum install php-fpm
php7.4 recommends php-json                   # yum install php-json
php7.4 recommends php-mysqlnd                # yum install php-mysqlnd

Amazon Linux 2 の Linux のディストリビューションは RHEL7 / CentOS7 を採用しています。よって、実際のパッケージインストールコマンドは yum install が実行されます。

amazon-linux-extras でインストール

amazon-linux-extras install でパッケージを管理者権限でインストールします。


$ sudo amazon-linux-extras install トピック名

トピック名 php7.4 をインストールする例です。


$ sudo amazon-linux-extras install php7.4

パッケージを無効にする

ヘルプにはありませんが amazon-linux-extras disable でパッケージの動作を無効にすることもできます。


$ sudo amazon-linux-extras disable トピック名

実際にパッケージが削除されるわけでなく yum remove などで削除すると、パッケージ依存の問題が発生する可能性があるので注意が必要です。

amazon-linux-extras はよく利用するパッケージのインストールを少しだけ楽にしてくれるツールであることがわかりました。