View a markdown version of this page

AL2023에서 Linux 커널 업데이트 - Amazon Linux 2023

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AL2023에서 Linux 커널 업데이트

중요

2026년 8월 17일부터 AL2023의 기본 커널이 6.1에서 6.18로 변경됩니다. al2023-ami-kernel-default AMIs는 커널 6.18을 부팅합니다. 이미 실행 중인 인스턴스는 영향을 받지 않으며 해당 인스턴스가 부팅된 커널을 유지합니다. 특정 커널 버전을 유지하려면와 같은 버전별 AMIs에서를 시작합니다al2023-ami-kernel-6.1.

FIPS 워크로드의 경우 기본 커널이 항상 FIPS 검증 커널이 아닐 수 있습니다. FIPS 모드가 필요한 경우 AWS 웹 사이트에서 AL2023 FIPS FAQ를 참조하세요.

AL2023의 Linux 커널 버전

AL2023에는 Linux 커널의 장기 지원(LTS) 버전을 기반으로 하는 새 커널 버전이 정기적으로 포함됩니다.

AL2023은 원래 커널 6.1과 함께 2023년 3월에 릴리스되었습니다.

2025년 4월에 AL2023은 Linux 커널 6.12에 대한 지원을 추가했습니다. 이 커널에는 EEVDF 예약, FUSE 패스스루 I/O 지원, 새로운 Futex API, eBPF 개선 등 새로운 기능이 추가되었습니다. 또한 커널 6.12를 사용하면 사용자 공간 프로그램이 사용자 공간 섀도우 스택 및 메모리 밀봉을 사용하여 런타임 시 자체 보안을 유지할 수 있습니다.

2026년 3월에 AL2023은 Linux 커널 6.18에 대한 지원을 추가했습니다. 업데이트된 커널 6.18은 프로세서 지원, 가상화, 보안 및 성능을 추가로 개선했습니다. 주목할 만한 기능에는 아키텍처 전반의 향상된 IOMMU 기능과 CPU 취약성 완화 관리를 위한 공격 벡터 제어가 포함됩니다. 성능 향상은 더 빠른 FSCRYPT 작업, 메모리 관리 개선, 새로운 옵트인 CPU별 배열 기반 캐싱 계층으로 Sheaves 도입을 통한 암호화 최적화를 통해 이루어집니다.

AL2023을 최신 커널 버전으로 업데이트

AL2023은 이제 기본 커널을 매년 최신 버전으로 업데이트합니다. al2023-ami-kernel-default AMIs는 최신 LTS 커널로 이동합니다. 새로 시작된 인스턴스는 최신 보안 수정 및 성능 개선 사항을 최신 상태로 유지하는 가장 간단한 방법인 새 커널 버전을 자동으로 사용합니다.

이전 커널 버전을 유지하거나 특정 버전을 선택하려면 원하는 커널이 사전 설치된 AMI를 선택하거나 기존 AL2023 EC2 인스턴스를 업그레이드하여 커널 6.1, 6.12 또는 6.18로 AL2023을 실행할 수 있습니다. AL2023 커널의 지원 기간 및 범위에 대한 자세한 내용은 AL2023 커널 수명 주기를 참조하세요.

특정 커널 버전으로 AL2023 AMI 실행

AWS 콘솔을 통해 사전 설치된 특정 커널을 사용하거나 SSM에서 특정 파라미터를 쿼리하여 AL2023 AMI를 실행하도록 선택할 수 있습니다. 쿼리할 SSM 키는 /aws/service/ami-amazon-linux-latest/로 시작하고 다음 중 하나가 뒤따릅니다.

커널 6.18의 경우

  • arm64 아키텍처 al2023-ami-kernel-6.18-arm64

  • arm64 아키텍처 (미니멀 AMI) al2023-ami-minimal-kernel-6.18-arm64

  • x86_64 아키텍처 al2023-ami-kernel-6.18-x86_64

  • x86_64 아키텍처 (미니멀 AMI) al2023-ami-minimal-kernel-6.18-x86_64

커널 6.12의 경우

  • arm64 아키텍처 al2023-ami-kernel-6.12-arm64

  • arm64 아키텍처 (미니멀 AMI) al2023-ami-minimal-kernel-6.12-arm64

  • x86_64 아키텍처 al2023-ami-kernel-6.12-x86_64

  • x86_64 아키텍처 (미니멀 AMI) al2023-ami-minimal-kernel-6.12-x86_64

커널 6.1의 경우

  • arm64 아키텍처 al2023-ami-kernel-6.1-arm64

  • arm64 아키텍처 (미니멀 AMI) al2023-ami-minimal-kernel-6.1-arm64

  • x86_64 아키텍처 al2023-ami-kernel-6.1-x86_64

  • x86_64 아키텍처 (미니멀 AMI) al2023-ami-minimal-kernel-6.1-x86_64

AL2023 AMI 선택에 대한 자세한 내용은 SSM 파라미터 및를 사용하여 AL2023 시작 AWS CLI 섹션을 참조하세요.

AL2023 인스턴스를 최신 커널로 업데이트

다음 단계에 따라 실행 중인 AL2023 인스턴스를 커널 6.1 또는 6.12에서 커널 6.18로 인플레이스 업그레이드할 수 있습니다.

  1. 현재 커널을 감지하고 대상 버전을 설정합니다.

    # Automatically detect current kernel version BEFORE upgrade $ CURRENT_KERNEL=$(uname -r) $ SOURCE_VERSION="" $ if [[ $CURRENT_KERNEL == *"6.12"* ]]; then SOURCE_VERSION="6.12" else SOURCE_VERSION="" fi # Save the source version to a persistent location for use after reboot $ echo "${SOURCE_VERSION}" | sudo tee /var/lib/source_kernel_version > /dev/null
    # Set your target version $ TARGET_VERSION="6.18"
    $ echo "Current kernel: ${SOURCE_VERSION:-6.1}" $ echo "Upgrading to kernel ${TARGET_VERSION}"
  2. 대상 커널 패키지를 설치합니다.

    $ sudo dnf install -y kernel${TARGET_VERSION}
  3. 대상 커널 패키지의 최신 버전을 가져옵니다.

    $ version=$(rpm -q --qf '%{version}-%{release}.%{arch}\n' kernel${TARGET_VERSION} | sort -V | tail -1)
  4. 새 커널을 기본 커널로 설정합니다.

    $ sudo grubby --set-default "/boot/vmlinuz-$version"
  5. 시스템을 재부팅합니다.

    $ sudo reboot
  6. 이전 커널을 제거합니다.

    # Read the source kernel version from the saved file $ SOURCE_VERSION=$(sudo cat /var/lib/source_kernel_version) # Uninstall the source kernel $ sudo dnf remove -y kernel${SOURCE_VERSION}
  7. 추가 커널 패키지를 대상 커널에 상응하는 패키지로 바꿉니다.

    # Set your target version $ TARGET_VERSION="6.18"
    $ for pkg in bpftool kernel-debuginfo kernel-debuginfo-common kernel-headers \ kernel-modules-extra-common perf python3-perf; do case "$pkg" in kernel-*) src="kernel${SOURCE_VERSION}${pkg#kernel}" tgt="kernel${TARGET_VERSION}${pkg#kernel}" ;; *) src="${pkg}${SOURCE_VERSION}" tgt="${pkg}${TARGET_VERSION}" ;; esac rpm -q "$src" && sudo dnf -y swap "$src" "$tgt" done # kernel-tools and kernel-tools-devel must be removed and reinstalled # together due to version dependency requirements $ if rpm -q "kernel${SOURCE_VERSION}-tools"; then sudo dnf -y remove kernel${SOURCE_VERSION}-tools kernel${SOURCE_VERSION}-tools-devel sudo dnf -y install kernel${TARGET_VERSION}-tools kernel${TARGET_VERSION}-tools-devel fi
  8. (선택 사항) 이전 커널 버전의 커널 개발 제거:

    $ rpm -q kernel${SOURCE_VERSION}-devel && sudo dnf remove -y kernel${SOURCE_VERSION}-devel

이전 커널 버전으로 다운그레이드

언제든지 이전 커널 버전으로 다운그레이드해야 하는 경우 다음 단계를 사용합니다.

  1. 현재 커널을 감지하고 대상 버전을 설정합니다.

    # Automatically detect current kernel version BEFORE downgrade $ CURRENT_KERNEL=$(uname -r) $ SOURCE_VERSION="" $ if [[ $CURRENT_KERNEL == *"6.12"* ]]; then SOURCE_VERSION="6.12" elif [[ $CURRENT_KERNEL == *"6.18"* ]]; then SOURCE_VERSION="6.18" fi # Save the source version to a persistent location for use after reboot $ echo "${SOURCE_VERSION}" | sudo tee /var/lib/source_kernel_version > /dev/null
    # Set your target version (change this to your desired kernel) # Use "" for kernel 6.1, "6.12" for kernel 6.12 $ TARGET_VERSION=""
    $ echo "Downgrading from kernel ${SOURCE_VERSION:-6.1} to kernel ${TARGET_VERSION:-6.1}"
  2. 추가 커널 패키지를 대상 커널에 상응하는 패키지로 바꿉니다.

    $ for pkg in bpftool kernel-debuginfo kernel-debuginfo-common kernel-headers \ kernel-modules-extra-common python3-perf; do case "$pkg" in kernel-*) src="kernel${SOURCE_VERSION}${pkg#kernel}" tgt="kernel${TARGET_VERSION}${pkg#kernel}" ;; *) src="${pkg}${SOURCE_VERSION}" tgt="${pkg}${TARGET_VERSION}" ;; esac rpm -q "$src" && sudo dnf -y swap "$src" "$tgt" done # perf requires --allowerasing due to libtraceevent conflicts $ rpm -q "perf${SOURCE_VERSION}" && sudo dnf -y swap "perf${SOURCE_VERSION}" "perf${TARGET_VERSION}" --allowerasing # kernel-tools and kernel-tools-devel must be removed and reinstalled # together due to version dependency requirements $ if rpm -q "kernel${SOURCE_VERSION}-tools"; then sudo dnf -y remove kernel${SOURCE_VERSION}-tools kernel${SOURCE_VERSION}-tools-devel sudo dnf -y install kernel${TARGET_VERSION}-tools kernel${TARGET_VERSION}-tools-devel fi
  3. 대상 커널 패키지를 설치합니다.

    $ sudo dnf install -y kernel${TARGET_VERSION}
  4. 대상 커널 패키지의 최신 버전을 가져옵니다.

    $ version=$(rpm -q --qf '%{version}-%{release}.%{arch}\n' kernel${TARGET_VERSION} | sort -V | tail -1)
  5. 대상 커널을 기본 커널로 설정합니다.

    $ sudo grubby --set-default "/boot/vmlinuz-$version"
  6. 시스템을 재부팅합니다.

    $ sudo reboot
  7. 소스 커널을 제거합니다.

    # Read the source kernel version from the saved file $ SOURCE_VERSION=$(sudo cat /var/lib/source_kernel_version) # Uninstall the source kernel $ sudo dnf remove -y kernel${SOURCE_VERSION}

AL2023 커널 - 자주 묻는 질문

1. 커널 업데이트 후 재부팅해야 하나요?

실행 중인 커널을 변경할 때마다 재부팅해야 합니다.

2. 여러 인스턴스에서 커널을 최신 상태로 유지하려면 어떻게 해야 하나요?

Amazon Linux는 인스턴스 플릿을 관리하는 기능을 제공하지 않습니다. AWS Systems Manager와 같은 도구를 사용하여 대규모 플릿을 패치하는 것이 좋습니다.

3. 현재 실행 중인 커널 버전을 확인하려면 어떻게 해야 하나요?

AL2023 인스턴스에서 다음 명령을 실행합니다.

$ uname -r

4. AL2023은 어떤 커널을 사용하도록 권장하나요?

다른 모든 AL2023 커널은 여전히 지원되지만 최신 AL2023 커널 6.18로 업그레이드하는 것이 좋습니다. 업그레이드하기 전에 워크로드를 테스트합니다.

5. 기존 애플리케이션이 AL2023 커널에서 작동하나요?

예. AL2023은 동일한 사용자 공간 패키지와 호환성으로 사용 가능한 모든 커널(6.1, 6.12 및 6.18)을 지원합니다. 최신 커널로 전환하기 전에 워크로드를 테스트하는 것이 좋습니다.

6. 커널 6.12 또는 6.18용 커널 헤더, 개발 패키지 및 추가 모듈을 설치하려면 어떻게 해야 합니까?

다음을 실행하세요.

$ version=$(uname -r | grep -oP '^\d+\.\d+') $ sudo dnf install -y kernel${version}-modules-extra-$(uname -r) kernel${version}-headers-$(uname -r) kernel${version}-devel-$(uname -r)

7. AL2023 커널은 얼마나 오래 지원되나요?

지원되는 모든 커널(6.1, 6.12 및 6.18)은 정의된 AL2023 커널 수명 주기에 따라 보안 및 유지 관리 업데이트를 계속 수신합니다.

8. 기본 커널이 변경되면 어떻게 되나요?

al2023-ami-kernel-default-* SSM 파라미터는 최신 커널 버전을 실행하는 AMI로 확인됩니다. 이미 실행 중인 인스턴스는 영향을 받지 않습니다. 기본 AMI에서 시작된 새 인스턴스만 새 커널을 부팅합니다. 특정 커널 버전을 유지하려면 기본값 al2023-ami-kernel-6.1-* 대신와 같은 버전별 SSM 파라미터를 사용합니다. 세부 정보는 SSM 파라미터 및를 사용하여 AL2023 시작 AWS CLI 섹션을 참조하세요.

9. FIPS 검증 암호화가 필요한 경우 어떤 커널을 사용해야 합니까?

현재 커널 6.1의 암호화만 FIPS 140-3 검증을 완료했습니다(NIST 암호화 모듈 검증 프로그램 웹 사이트의 인증서 #5369). 커널 6.12 및 6.18에 사용되는 암호화는 FIPS 검증 프로세스를 거치고 있습니다. FIPS 작업에 적합한 커널을 선택하는 방법에 대한 조언은 조직의 보안 팀에 문의하십시오. 현재 검증 상태 및 지침은 AWS 웹 사이트의 AL2023 FIPS FAQ를 참조하세요.