Не удается найти или установить amazon-linux-extras

Вопрос или проблема

Я пытаюсь установить nginx на экземпляр AWS EC2. Поскольку это делается с помощью amazon-linux-extras, как указано в документации AWS, я попробовал это. Но я не могу найти пакет или установить его с помощью yum install (он говорит, что пакет уже доступен, но я не могу найти его с помощью ‘which’).

Ниже приведен вывод терминала. Пожалуйста, помогите.

[arjun@ip-172-31-32-27 ~]$ which amazon-linux-extras

/usr/bin/which: no amazon-linux-extras in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/arjun/.local/bin:/home/arjun/bin)

[arjun@ip-172-31-32-27 ~]$ sudo yum -y install amazon-linux-extras

[sudo] password for arjun:

Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
amzn2-core                                                                                                                                                               | 2.4 kB  00:00:00

Package amazon-linux-extras-1.6.9-1.amzn2.noarch already installed and latest version

Nothing to do

Вам нужно просто:

amazon-linux-extras enable nginx

ИЗМЕНИТЬ: Этот ответ был актуален в 2019 году. Похоже, extras был удален в декабре 2022 года.

Таким образом, Nginx предустановлен в Amazon Linux 2022, так что на самом деле, вам следует обновить используемую вами дистрибутив (Amazon Linux 2).

Вообще говоря, если вам нужно установить на Amazon Linux 2, вам следует собирать из исходников. Код ниже – это, как правило, сегодняшний метод, но обычно добавляют/хотят дополнительные модули, которые могут изменить флаги для ./auto/configure, например. Дополнительную информацию о том, как собрать репозиторий Nginx в его исполняемый файл, можно найти в его онлайн-документации http://nginx.org/en/docs/configure.html.

git clone --quiet https://github.com/nginx/nginx.git

cd nginx || exit

./auto/configure --with-http_ssl_module --user=www-data --group=www-data

make

make install

nginx -t

Ответ или решение

Проблема с установкой и использованием пакета amazon-linux-extras на инстансе AWS EC2, связана с установкой nginx, может вызвать смятение, особенно если вы строго следуете документации AWS. Чтобы подробно рассмотреть эту проблему и найти решение, начнем с теоретической части и затем перейдем к практическим рекомендациям.

Теория

Amazon Linux – это дистрибутив операционной системы, созданный Amazon Web Services для оптимального использования в облачной среде AWS. Существуют разные версии Amazon Linux, и большинство пользователей на момент написания используют Amazon Linux 2, на котором и построена данная проблема. Для обеспечения более легкой установки и поддержки приложений, Amazon предложил инструмент amazon-linux-extras, который позволяет пользователям включать дополнительные репозитории для установки пакетов, таких как nginx.

Однако с выходом более новой версии Amazon Linux 2022, некоторые изменения были внесены в процесс работы с такими инструментами, как amazon-linux-extras. В последних версиях дистрибутива, возможность использования amazon-linux-extras для установки nginx может быть исключена или заменена другим, более подходящим инструментом.

Пример

Рассмотрим типичную проблему, с которой сталкивается пользователь. Вы пытаетесь установить nginx на инстансе AWS, но испытываете трудности, поскольку amazon-linux-extras либо не найден, либо, несмотря на его установленность, не позволяет произвести установку nginx. Выше описана ситуация, когда команда which amazon-linux-extras возвращает, что данный инструмент отсутствует в переменной окружения PATH. В то же время, установка через yum сообщает, что amazon-linux-extras уже установлен.

Применение

Шаг 1: Проверка версии ОС

Первым шагом учитывая современные изменения, вы должны убедиться, какая версия Amazon Linux используется. Возможно, стоит обновить ее до версии 2022, которая может предлагать более простую поддержку необходимых пакетов.

Шаг 2: Обновление операционной системы

Если у вас стоит Amazon Linux 2, и если возможно, рассмотрите возможность обновления до Amazon Linux 2022. Это обеспечит вам доступ к более современным пакетам и решениям из коробки.

Шаг 3: Установите nginx вручную

Если обновление невозможно или нежелательно, вам, возможно, придется установить nginx вручную. Это требует больше усилий, но позволяет гибко настроить сервер в соответствии с вашими требованиями.

  1. Клонирование репозитория nginx:

    git clone --quiet https://github.com/nginx/nginx.git
    cd nginx || exit
  2. Настройка и сборка:
    Используйте команду конфигурирования с необходимыми параметрами. Например, для включения модуля SSL:

    ./auto/configure --with-http_ssl_module --user=www-data --group=www-data
    make
    make install
  3. Проверка конфигурации:

    nginx -t

В случае ошибок при конфигурации или сборке, обратитесь к документации nginx для получения дополнительной информации об опциях конфигурации и устранения неполадок.

Заключение

Разумеется, для наилучшей поддержки и удобства лучше всего работать с актуальной версией операционной системы, если это возможно. В случаях, когда обновление ограничено, установка из исходников — превосходное решение, которое не только дает вам контроль над процессом сборки, но и позволяет глубже понять механизмы работы nginx на вашей системе.

Обязательно ознакомьтесь с актуальной документацией AWS и nginx, чтобы учесть все нюансы применения данных решений в конкретной облачной среде. Это поможет избежать возможных проблем и оптимизировать работу вашего приложения.

Оцените материал
Добавить комментарий

Капча загружается...