如何在运行 Amazon Linux 2 的 EC2 实例上安装来自 Extras 库的软件包?

5 分钟阅读
0

我有一个 Amazon Elastic Compute Cloud(Amazon EC2)实例在 Amazon Linux 2 上运行。我想要在该实例上安装来自 amazon-linux-extras 存储库的软件包(称为主题)。

简短描述

若要安装来自 Extras 库的软件包,请首先确认您的实例上已安装 amazon-linux-extras 存储库。列出可用的软件包,然后启用要安装的软件包。然后,使用 yum 安装软件包。

**注意:**此解决方法仅适用于 Amazon Linux 2。这些步骤不适用于 Amazon Linux 1 2018.03 或者 Amazon Linux 2023。

解决方案

  1. 使用 SSH 连接到 EC2 Linux 实例

  2. 使用 rpm 命令确认已安装 amazon-linux-extras 软件包:

    $ rpm -qa |grep -i amazon-linux-extras

    如果未安装 amazon-linux-extras 软件包,请使用 yum 进行安装:

    $ sudo yum install -y amazon-linux-extras
  3. 列出可用的主题。**注意:**存储库会定期更新。您看到的主题和版本可能与以下列表不同:

    $ amazon-linux-extras
      2  httpd_modules            available    [ =1.0  =stable ]
      3  memcached1.5             available    \
            [ =1.5.1  =1.5.16  =1.5.17 ]
      9  R3.4                     available    [ =3.4.3  =stable ]
     10  rust1                    available    \
            [ =1.22.1  =1.26.0  =1.26.1  =1.27.2  =1.31.0  =1.38.0
              =stable ]
     18  libreoffice              available    \
            [ =5.0.6.2_15  =5.3.6.1  =stable ]
     19  gimp                     available    [ =2.8.22 ]
     20 †docker=latest            enabled      \
            [ =17.12.1  =18.03.1  =18.06.1  =18.09.9  =stable ]
     21  mate-desktop1.x          available    \
            [ =1.19.0  =1.20.0  =stable ]
     22  GraphicsMagick1.3        available    \
            [ =1.3.29  =1.3.32  =1.3.34  =stable ]
     23 †tomcat8.5                available    \
            [ =8.5.31  =8.5.32  =8.5.38  =8.5.40  =8.5.42  =8.5.50
              =stable ]
     24  epel                     available    [ =7.11  =stable ]
     25  testing                  available    [ =1.0  =stable ]
     26  ecs                      available    [ =stable ]
     27 †corretto8                available    \
            [ =1.8.0_192  =1.8.0_202  =1.8.0_212  =1.8.0_222  =1.8.0_232
              =1.8.0_242  =stable ]
     32  lustre2.10               available    \
            [ =2.10.5  =2.10.8  =stable ]
     33 †java-openjdk11           available    [ =11  =stable ]
     34  lynis                    available    [ =stable ]
     36  BCC                      available    [ =0.x  =stable ]
     37  mono                     available    [ =5.x  =stable ]
     38  nginx1                   available    [ =stable ]
     40  mock                     available    [ =stable ]
     43  livepatch                available    [ =stable ]
     44 †python3.8                available    [ =stable ]
     45  haproxy2                 available    [ =stable ]
     46  collectd                 available    [ =stable ]
     47  aws-nitro-enclaves-cli   available    [ =stable ]
     48  R4                       available    [ =stable ]
      _  kernel-5.4               available    [ =stable ]
     50  selinux-ng               available    [ =stable ]
     52  tomcat9                  available    [ =stable ]
     53  unbound1.13              available    [ =stable ]
     54 †mariadb10.5              available    [ =stable ]
     55  kernel-5.10=latest       enabled      [ =stable ]
     56  redis6                   available    [ =stable ]
     57 †ruby3.0                  available    [ =stable ]
     58 †postgresql12             available    [ =stable ]
     59 †postgresql13             available    [ =stable ]
     60  mock2                    available    [ =stable ]
     61  dnsmasq2.85=latest       enabled      [ =stable ]
     62  kernel-5.15              available    [ =stable ]
     63 †postgresql14             available    [ =stable ]
     64  firefox                  available    [ =stable ]
     65  lustre                   available    [ =stable ]
     66 †php8.1=latest            enabled      [ =stable ]
     67  awscli1                  available    [ =stable ]
      _ †php8.2                   available    [ =stable ]
      _  dnsmasq                  available    [ =stable ]
     70  unbound1.17              available    [ =stable ]
     72  collectd-python3         available    [ =stable ]
    † Note on end-of-support. Use 'info' subcommand.
  4. 激活所需的主题。输出显示了安装所需的命令。例如,若要激活 PHP 8.1 主题,请使用下面的命令:

    $ sudo amazon-linux-extras enable php8.1
    Topic php8.1 has end-of-support date of 2024-11-25
      2  httpd_modules            available    [ =1.0  =stable ]
      3  memcached1.5             available    \
            [ =1.5.1  =1.5.16  =1.5.17 ]
      9  R3.4                     available    [ =3.4.3  =stable ]
     10  rust1                    available    \
            [ =1.22.1  =1.26.0  =1.26.1  =1.27.2  =1.31.0  =1.38.0
              =stable ]
     18  libreoffice              available    \
            [ =5.0.6.2_15  =5.3.6.1  =stable ]
     19  gimp                     available    [ =2.8.22 ]
     20 †docker=latest            enabled      \
            [ =17.12.1  =18.03.1  =18.06.1  =18.09.9  =stable ]
     21  mate-desktop1.x          available    \
            [ =1.19.0  =1.20.0  =stable ]
     22  GraphicsMagick1.3        available    \
            [ =1.3.29  =1.3.32  =1.3.34  =stable ]
     23 †tomcat8.5                available    \
            [ =8.5.31  =8.5.32  =8.5.38  =8.5.40  =8.5.42  =8.5.50
              =stable ]
     24  epel                     available    [ =7.11  =stable ]
     25  testing                  available    [ =1.0  =stable ]
     26  ecs                      available    [ =stable ]
     27 †corretto8                available    \
            [ =1.8.0_192  =1.8.0_202  =1.8.0_212  =1.8.0_222  =1.8.0_232
              =1.8.0_242  =stable ]
     32  lustre2.10               available    \
            [ =2.10.5  =2.10.8  =stable ]
     33 †java-openjdk11           available    [ =11  =stable ]
     34  lynis                    available    [ =stable ]
     36  BCC                      available    [ =0.x  =stable ]
     37  mono                     available    [ =5.x  =stable ]
     38  nginx1                   available    [ =stable ]
     40  mock                     available    [ =stable ]
     43  livepatch                available    [ =stable ]
     44 †python3.8                available    [ =stable ]
     45  haproxy2                 available    [ =stable ]
     46  collectd                 available    [ =stable ]
     47  aws-nitro-enclaves-cli   available    [ =stable ]
     48  R4                       available    [ =stable ]
      _  kernel-5.4               available    [ =stable ]
     50  selinux-ng               available    [ =stable ]
     52  tomcat9                  available    [ =stable ]
     53  unbound1.13              available    [ =stable ]
     54 †mariadb10.5              available    [ =stable ]
     55  kernel-5.10=latest       enabled      [ =stable ]
     56  redis6                   available    [ =stable ]
     57 †ruby3.0                  available    [ =stable ]
     58 †postgresql12             available    [ =stable ]
     59 †postgresql13             available    [ =stable ]
     60  mock2                    available    [ =stable ]
     61  dnsmasq2.85=latest       enabled      [ =stable ]
     62  kernel-5.15              available    [ =stable ]
     63 †postgresql14             available    [ =stable ]
     64  firefox                  available    [ =stable ]
     65  lustre                   available    [ =stable ]
     66 †php8.1=latest            enabled      [ =stable ]
     67  awscli1                  available    [ =stable ]
      _ †php8.2                   available    [ =stable ]
      _  dnsmasq                  available    [ =stable ]
     70  unbound1.17              available    [ =stable ]
     72  collectd-python3         available    [ =stable ]
    † Note on end-of-support. Use 'info' subcommand.
  5. 使用 yum 安装软件包。例如,若要安装 PHP 8.1 主题,请使用下面的命令:

    $ sudo yum clean metadata && sudo yum install php-cli php-pdo php-fpm php-json php-mysqlnd
  6. 使用下面的命令来验证安装并确认软件版本:

    $ sudo yum list installed php-cli php-pdo php-fpm php-json php-mysqlnd
    Loaded plugins: langpacks, priorities, update-motd
    Installed Packages
    php-cli.x86_64                                                8.1.23-1.amzn2                                            @amzn2extra-php8.1
    php-fpm.x86_64                                                8.1.23-1.amzn2                                            @amzn2extra-php8.1
    php-mysqlnd.x86_64                                            8.1.23-1.amzn2                                            @amzn2extra-php8.1
    php-pdo.x86_64                                                8.1.23-1.amzn2                                            @amzn2extra-php8.1
    
    $ php --version
    PHP 8.1.23 (cli) (built: Sep 15 2023 21:56:29) (NTS)
    Copyright (c) The PHP Group
    Zend Engine v4.1.23, Copyright (c) Zend Technologies

相关信息

Amazon Linux 2

在 Amazon Linux 实例上查找并安装软件包

包管理工具

AWS 官方
AWS 官方已更新 3 个月前