Amazon Linux 는 세대마다 패키지 관리 방식이 다르다. Amazon Linux 2 의 amazon-linux-extras 는 Amazon Linux 2023 에 존재하지 않는다. 이를 모르고 2 용 문서를 2023 에 그대로 따라 하면 명령을 찾을 수 없다는 오류만 본다.
cat /etc/system-release
cat /etc/os-release
RHEL 7 계열을 바탕으로 하며 yum 을 쓴다. 기본 저장소에는 보수적인 버전만 두고, 새 버전의 런타임·미들웨어는 amazon-linux-extras 라는 별도 토픽으로 제공한다.
# 제공 목록과 사용 가능한 버전
amazon-linux-extras list
# 토픽을 켜서 설치
sudo amazon-linux-extras install -y nginx1
sudo amazon-linux-extras install -y postgresql14
# 토픽만 켜고 설치는 yum 으로
sudo amazon-linux-extras enable docker
sudo yum clean metadata
sudo yum install -y docker
amazon-linux-extras 는 amazon-linux-extras 패키지에 들어 있으며 AMI 에 기본 포함된다. 없다면 설치한다.
sudo yum install -y amazon-linux-extras
EPEL 도 여기서 켠다.
sudo amazon-linux-extras install -y epel
sudo yum repolist | grep -i epel
Amazon Linux 2 는 2026-06-30 로 표준 지원이 끝났다. 신규 구축에는 쓰지 않는다. 최신 상태는 AWS 문서에서 확인한다.
Fedora 를 바탕으로 하며 dnf 를 쓴다. amazon-linux-extras 는 없고 대신 그런 계층이 필요 없도록 설계됐다. 필요한 패키지는 기본 저장소에 버전별 패키지로 들어 있다.
sudo dnf install -y nginx
sudo dnf install -y postgresql15 postgresql15-server
sudo dnf install -y docker
버전을 고르려면 패키지 이름에 붙은 숫자나 모듈을 본다.
dnf search nginx
dnf list available 'postgresql*'
AL2023 은 EPEL 을 공식적으로 지원하지 않는다. EPEL 9 저장소를 억지로 붙일 수는 있으나 의존성이 충돌하거나 시스템 패키지를 밀어낼 수 있으므로 운영 환경에서는 권장하지 않는다. 필요한 소프트웨어가 기본 저장소에 없다면 다음 순서로 검토한다.
굳이 붙여야 한다면 대상 패키지만 설치하고 저장소는 평소에 꺼 둔다.
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
sudo dnf config-manager --set-disabled epel
sudo dnf --enablerepo=epel install -y PACKAGE
이 조합의 동작은 확인 필요. 설치 후 dnf check 와 dnf distro-sync --assumeno 로 시스템 패키지가 바뀌지 않는지 확인한다.
AL2023 은 releasever 를 고정해 같은 패키지 조합을 재현할 수 있다.
dnf --releasever=latest check-update
cat /etc/dnf/vars/releasever