9.4 릴리스 노트
Red Hat Enterprise Linux 9.4 릴리스 정보
초록
Red Hat 문서에 관한 피드백 제공 링크 복사링크가 클립보드에 복사되었습니다!
문서 개선을 위한 의견에 감사드립니다. 어떻게 개선할 수 있는지 알려주십시오.
Jira를 통해 피드백 제출 (등록 필요)
- Jira 웹 사이트에 로그인합니다.
- 상단 탐색 모음에서 생성 을 클릭합니다.
- 요약 필드에 설명 제목을 입력합니다.
- 설명 필드에 개선을 위한 제안을 입력합니다. 문서의 관련 부분에 대한 링크를 포함합니다.
- 대화 상자 하단에서 생성 을 클릭합니다.
1장. 개요 링크 복사링크가 클립보드에 복사되었습니다!
1.1. RHEL 9.4의 주요 변경 사항 링크 복사링크가 클립보드에 복사되었습니다!
설치 프로그램 및 이미지 생성
RHEL 이미지 빌더의 주요 주요 주요 사항:
- RHEL 9.4 릴리스 배포 및 이후 버전에서는 운영 체제용으로 예약된 특정 경로를 제외하고 임의의 사용자 지정 마운트 지점을 지정할 수 있습니다.
-
auto-lvm
,lvm
,raw
와 같은 다양한 파티션 모드를 생성할 수 있습니다. - 프로필에 대한 맞춤 옵션을 사용자 지정하고 선택한 옵션과 선택되지 않은 옵션을 사용하여 블루프린트 사용자 지정에 추가하여 규칙을 추가 및 제거할 수 있습니다.
자세한 내용은 새로운 기능 - 설치 프로그램 및 이미지 생성 을 참조하십시오.
RHEL for Edge
RHEL for Edge의 주요 주요 사항:
- FIPS 호환 RHEL for Edge 이미지를 생성할 수 있습니다.
- 이 기술 프리뷰를 사용하면 FDO 온보딩 프로세스를 사용하여 192.0.2.ite 또는 Postgresql 데이터베이스에서 소유자인uchers를 저장하고 쿼리할 수 있습니다.
자세한 내용은 새로운 기능 - RHEL for Edge를 참조하십시오.
보안
SELinux 사용자 공간 릴리스 3.6에는 SELinux 정책을 추가로 사용자 지정하기 위한 규칙이 도입되었습니다.
Keylime 서버 구성 요소, 검증자 및 등록 기관은 컨테이너로 사용할 수 있습니다.
Rsyslog 로그 처리 시스템은 사용자 정의 가능한 TLS/SSL 암호화 설정 및 기능 삭제와 관련된 추가 옵션을 도입합니다.
OpenSSL TLS 툴킷은 공급자별 구성 파일을 위한 드롭인 디렉터리를 추가합니다.
Linux 커널 암호화 API(libkcapi) 1.4.0에는 새로운 툴과 옵션이 도입되었습니다. 특히 새로운 -T
옵션을 사용하면 해시 계산에 대상 파일 이름을 지정할 수 있습니다.
stunnel TLS/SSL 터널링 서비스 5.71은 FIPS 모드에서 OpenSSL 1.1 이상 버전의 동작을 변경합니다. 이러한 변경 외에도 버전 5.71은 최신 PostgreSQL 클라이언트 지원과 같은 많은 새로운 기능을 제공합니다.
자세한 내용은 새 기능 - 보안 을 참조하십시오.
동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버
다음 Application Streams의 최신 버전을 사용할 수 있습니다.
- Python 3.12
- Ruby 3.3
- PHP 8.2
- nginx 1.24
- MariaDB 10.11
- PostgreSQL 16
다음 구성 요소가 업그레이드되었습니다.
- Git 에서 2.43.0 버전으로
- Git LFS 에서 버전 3.4.1로
자세한 내용은 새로운 기능 - 동적 프로그래밍 언어, 웹 및 데이터베이스 서버를 참조하십시오.
컴파일러 및 개발 도구
업데이트된 성능 도구 및 디버거
RHEL 9.4에서 다음 성능 도구 및 디버거가 업데이트되었습니다.
- Valgrind 3.22
- SystemTap 5.0
- elfutils 0.190
업데이트된 성능 모니터링 툴
RHEL 9.4에서는 다음과 같은 성능 모니터링 도구가 업데이트되었습니다.
- PCP 6.2.0
업데이트된 컴파일러 툴셋
RHEL 9.4에서 다음 컴파일러 툴셋이 업데이트되었습니다.
- GCC Toolset 13
- LLVM Toolset 17.0.6
- rust Toolset 1.75.1
- Go Toolset 1.21.7
자세한 변경 사항은 새로운 기능 - 컴파일러 및 개발 도구를 참조하십시오.
IdM (Identity Management)
Identity Management의 주요 하이라이트는 다음과 같습니다.
- FIDO2 사양(예: YubiKey)과 호환되는 생체 인식 장치를 사용하도록 SSSD에서 암호 없는 인증을 활성화하고 구성할 수 있습니다.
자세한 내용은 새로운 기능 - ID 관리를 참조하십시오.
가상화
RHEL 9.4에서는 64비트 ARM 아키텍처에서 KVM 가상 머신을 완전히 지원합니다.
또한 가상 머신의 외부 스냅샷이 완전히 지원되며 여러 스냅샷 작업의 기본 메커니즘이 되었습니다.
이 릴리스에 도입된 가상화 기능에 대한 자세한 내용은 새로운 기능 - 가상화를 참조하십시오.
컨테이너
주요 변경 사항은 다음과 같습니다.
-
다중 아키텍처 컨테이너 이미지를 생성하기 위한
podman 6.0 빌드
명령은 기술 프리뷰로 사용할 수 있습니다. -
Podman에서 이제
container.conf
모듈을 지원하여 사전 정의된 구성 세트를 로드합니다. - 컨테이너 툴 패키지가 업데이트되었습니다.
- 이제 이미지를 레지스트리로 가져오거나 푸시할 때 podman v4.9 RESTful API에서 진행 중인 데이터를 표시합니다.
- SQLite는 이제 Podman의 기본 데이터베이스 백엔드로 완전히 지원됩니다.
-
Containerfile
은 이제 여러 줄 hereDoc 명령을 지원합니다. -
네트워크 이름으로
파스타
가 더 이상 사용되지 않습니다. - BoltDB 데이터베이스 백엔드는 더 이상 사용되지 않습니다.
-
container-tools:4.0
모듈이 더 이상 사용되지 않습니다. - CNI(Container Network Interface) 네트워크 스택은 더 이상 사용되지 않으며 향후 릴리스에서 제거됩니다.
자세한 내용은 새 기능 - 컨테이너를 참조하십시오.
1.2. 인플레이스 업그레이드 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 8에서 RHEL 9로 인플레이스 업그레이드
지원되는 인플레이스 업그레이드 경로는 현재 다음과 같습니다.
다음 아키텍처에서 RHEL 8.8에서 RHEL 9.2로, RHEL 8.10에서 RHEL 9.4로 이동합니다.
- 64비트 Intel
- 64비트 AMD
- 64비트 ARM
- IBM POWER 9 (little endian) 이상
- IBM Z 아키텍처, z13 제외
- SAP HANA가 있는 시스템에서 RHEL 8.8에서 RHEL 9.2 및 RHEL 8.10에서 RHEL 9.4로
인플레이스 업그레이드를 수행하는 방법은 RHEL 8에서 RHEL 9로 업그레이드 를 참조하십시오.
SAP 환경에서 시스템에서 인플레이스 업그레이드를 수행하는 방법은 RHEL 8에서 RHEL 9로 SAP 환경을 인플레이스 업그레이드하는 방법을 참조하십시오.
Red Hat이 인플레이스 업그레이드 프로세스를 지원하는 방법에 대한 자세한 내용은 인플레이스 업그레이드 지원 정책을 참조하십시오.
주요 개선 사항은 다음과 같습니다.
-
업그레이드 후
systemd
서비스의 예상 상태를 확인하기 위해 새 논리가 구현되었습니다. - 이제 로컬에 저장된 DNF 리포지토리를 인플레이스 업그레이드에 사용할 수 있습니다.
- 이제 프록시를 사용하여 업그레이드할 수 있도록 DNF를 구성할 수 있습니다.
- HTTPS를 사용하여 액세스한 사용자 정의 DNF 리포지토리에서 인플레이스 업그레이드를 수행하는 문제가 수정되었습니다.
-
/etc/pki/tls/openssl.cnf
구성 파일이 수정된 경우 업그레이드 중에 파일이 대상 기본 OpenSSL 구성 파일로 교체되어 업그레이드 후 문제가 발생하지 않습니다. 자세한 내용은 업그레이드 전 보고서를 참조하십시오.
RHEL 7에서 RHEL 9로 인플레이스 업그레이드
RHEL 7에서 RHEL 9로 직접 인플레이스 업그레이드를 수행할 수 없습니다. 그러나 RHEL 7에서 RHEL 8로 인플레이스 업그레이드를 수행한 다음 RHEL 9로 두 번째 인플레이스 업그레이드를 수행할 수 있습니다. 자세한 내용은 RHEL 7에서 RHEL 8로 업그레이드 를 참조하십시오.
1.3. Red Hat Customer Portal 랩 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Customer Portal 랩 은 https://access.redhat.com/labs/ 에서 제공되는 고객 포털 섹션에 있는 툴 세트입니다. Red Hat 고객 포털 랩의 애플리케이션은 성능을 개선하고, 문제를 신속하게 해결하고, 보안 문제를 식별하고, 복잡한 애플리케이션을 신속하게 배포 및 구성할 수 있도록 지원합니다. 가장 널리 사용되는 애플리케이션 중 일부는 다음과 같습니다.
- registration Assistant
- Kickstart 생성기
- Red Hat 제품 인증서
- Red Hat CVE Checker
- 커널 Oops Analyzer
- Red Hat Code Browser
- VNC 구성기
- Red Hat OpenShift Container Platform 업데이트 그래프
- Red Hat Satellite Upgrade Helper
- JVM 옵션 구성 도구
- 로드 밸런서 구성 도구
- Red Hat OpenShift Data Foundation 지원 및 상호 운용성 검사기
- Ansible Automation Platform Upgrade Assistant
- 풀 계산기당 Ceph PG(배치 그룹)
- yum Repository Configuration Helper
- Red Hat Out of Memory Analyzer
1.4. 추가 리소스 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 9의 기능 및 제한사항 은 지식 베이스 문서 Red Hat Enterprise Linux 기술 기능 및 제한 에서 확인할 수 있습니다.
Red Hat Enterprise Linux 라이프 사이클 정보는 Red Hat Enterprise Linux 라이프 사이클 문서에서 확인할 수 있습니다.
패키지 매니페스트 문서에서는 라이센스 및 애플리케이션 호환성 수준을 포함하여 RHEL 9용 패키지 목록을 제공합니다.
애플리케이션 호환성 수준은 Red Hat Enterprise Linux 9: 애플리케이션 호환성 가이드 문서에서 설명합니다.
RHEL 8과 RHEL 9의 주요 차이점은 RHEL 9 채택에 대한 고려 사항에 설명되어 있습니다.
RHEL 8 에서 RHEL 9로의 인플레이스 업그레이드를 수행하는 방법에 대한 지침은 RHEL 8 에서 RHEL 9 로의 업그레이드 문서를 통해 제공됩니다.
알려진 기술 문제를 사전에 확인, 검사 및 해결할 수 있는 Red Hat Insights 서비스는 모든 RHEL 서브스크립션을 통해 사용할 수 있습니다. Red Hat Insights 클라이언트를 설치하고 시스템을 서비스에 등록하는 방법에 대한 자세한 내용은 Red Hat Insights 가져오기 시작 페이지를 참조하십시오.
공개 릴리스 노트에는 원래 추적 티켓에 액세스할 수 있는 링크가 포함되어 있지만 비공개 추적 티켓은 볼 수 없으므로 링크가 포함되지 않습니다.[1]
2장. 아키텍처 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 9.4는 커널 버전 5.14.0-427.13.1과 함께 배포됩니다. 이 버전은 최소 필수 버전에서 다음 아키텍처에 대한 지원을 제공합니다.
- AMD 및 Intel 64비트 아키텍처(x86-64-v2)
- 64비트 ARM 아키텍처(ARMv8.0-A)
- IBM Power Systems, Little Endian (POWER9)
- 64비트 IBM Z(z14)
각 아키텍처에 적합한 서브스크립션을 구매해야 합니다.
3장. RHEL 9의 콘텐츠 배포 링크 복사링크가 클립보드에 복사되었습니다!
3.1. 설치 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 9는 ISO 이미지를 사용하여 설치됩니다. AMD64, Intel 64비트, 64비트 ARM, IBM Power Systems, IBM Z 아키텍처에서는 두 가지 유형의 ISO 이미지를 사용할 수 있습니다.
설치 ISO: BaseOS 및 AppStream 리포지토리가 포함된 전체 설치 이미지이며 추가 리포지토리 없이 설치를 완료할 수 있습니다. 제품 다운로드 페이지에서
설치 ISO
를바이너리 DVD
라고 합니다.참고설치 ISO 이미지는 여러 GB 크기이므로 광 미디어 형식에 적합하지 않을 수 있습니다. 설치 ISO 이미지를 사용하여 부팅 가능한 설치 미디어를 생성할 때 USB 키 또는 USB 하드 드라이브를 사용하는 것이 좋습니다. 이미지 빌더 툴을 사용하여 사용자 지정 RHEL 이미지를 생성할 수도 있습니다. 이미지 빌더에 대한 자세한 내용은 사용자 지정 RHEL 시스템 이미지 구성 문서를 참조하십시오.
- 부트 ISO: 설치 프로그램으로 부팅하는 데 사용하는 최소 부트 ISO 이미지입니다. 리포지토리는 설치 ISO 이미지의 일부입니다. 설치 중에 Red Hat CDN 또는 Satellite의 최신 BaseOS 및 AppStream 콘텐츠를 사용하기 위해 Red Hat CDN 또는 Satellite에 등록할 수도 있습니다.
ISO 이미지 다운로드, 설치 미디어 생성 및 RHEL 설치 완료에 대한 지침은 설치 미디어에서 RHEL을 대화형으로 설치하는 방법을 참조하십시오. 자동화된 Kickstart 설치 및 기타 고급 주제는 RHEL 자동 설치 문서를 참조하십시오.
3.2. 리포지토리 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 9는 다음 두 가지 주요 리포지토리를 통해 배포됩니다.
- BaseOS
- AppStream
두 리포지토리 모두 기본 RHEL 설치에 필요하며 모든 RHEL 서브스크립션을 통해 사용할 수 있습니다.
BaseOS 리포지토리의 콘텐츠는 모든 설치의 기반을 제공하는 기본 운영 체제 기능의 코어 세트를 제공하기 위한 것입니다. 이 콘텐츠는 RPM 형식으로 사용 가능하며 이전 RHEL 릴리스와 비슷한 지원 조건이 적용됩니다. 자세한 내용은 적용 범위 세부 정보 문서를 참조하십시오.
AppStream 리포지토리의 콘텐츠에는 다양한 워크로드 및 사용 사례를 지원하는 추가 사용자 공간 애플리케이션, 런타임 언어 및 데이터베이스가 포함되어 있습니다.
또한 CodeReady Linux Builder 리포지토리는 모든 RHEL 서브스크립션을 통해 사용할 수 있습니다. 이는 개발자가 사용할 수 있는 추가 패키지를 제공합니다. CodeReady Linux Builder 리포지토리에 포함된 패키지는 지원되지 않습니다.
RHEL 9 리포지토리 및 제공하는 패키지에 대한 자세한 내용은 패키지 매니페스트 를 참조하십시오.
3.3. Application Streams 링크 복사링크가 클립보드에 복사되었습니다!
여러 버전의 사용자 공간 구성 요소는 Application Streams로 제공되며 핵심 운영 체제 패키지보다 더 자주 업데이트됩니다. 따라서 플랫폼 또는 특정 배포의 기본 안정성에 영향을 주지 않고 RHEL을 사용자 지정할 수 있는 유연성이 향상됩니다.
Application Streams는 친숙한 RPM 형식으로, 모듈이라는 RPM 형식의 확장, Software Collections 또는 Flatpaks로 사용할 수 있습니다.
각 Application Stream 구성 요소에는 RHEL 9과 동일하거나 더 짧은 라이프 사이클이 있습니다. RHEL 라이프 사이클 정보는 Red Hat Enterprise Linux 라이프 사이클 을 참조하십시오.
RHEL 9는 기존 dnf install
명령을 사용하여 RPM 패키지로 설치할 수 있는 초기 Application Stream 버전을 제공하여 Application Streams 환경을 향상시킵니다.
RPM 형식의 특정 초기 Application Streams는 Red Hat Enterprise Linux 9보다 라이프 사이클이 짧습니다.
일부 추가 Application Stream 버전은 향후 마이너 RHEL 9 릴리스에서 라이프 사이클이 짧은 모듈로 배포됩니다. 모듈은 논리 단위, 애플리케이션, 언어 스택, 데이터베이스 또는 툴 세트를 나타내는 패키지 컬렉션입니다. 이러한 패키지는 함께 빌드, 테스트, 릴리스됩니다.
항상 설치하려는 애플리케이션 스트림 버전을 결정하고 Red Hat Enterprise Linux Application Stream 라이프사이클을 먼저 검토하십시오.
대체 컴파일러 및 컨테이너 툴과 같은 빠른 업데이트가 필요한 콘텐츠는 동시에 대체 버전을 제공하지 않는 Rolling Streams에서 사용할 수 있습니다. Rolling Streams는 RPM 또는 모듈로 패키징될 수 있습니다.
RHEL 9에서 사용할 수 있는 Application Streams 및 애플리케이션 호환성 수준에 대한 자세한 내용은 패키지 매니페스트 를 참조하십시오. 애플리케이션 호환성 수준은 Red Hat Enterprise Linux 9: 애플리케이션 호환성 가이드 문서에서 설명합니다.
3.4. YUM/DNF를 사용한 패키지 관리 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 9에서 소프트웨어 설치는 DNF 에 의해 보장됩니다. Red Hat은 이전 주요 RHEL 버전과의 일관성을 위해 yum
용어 사용을 계속 지원합니다. yum
대신 dnf
를 입력하면 둘 다 호환성을 위한 별칭이므로 명령이 예상대로 작동합니다.
RHEL 8 및 RHEL 9는 DNF 를 기반으로 하지만 RHEL 7에서 사용되는 YUM 과 호환됩니다.
자세한 내용은 DNF 툴을 사용하여 소프트웨어 관리를 참조하십시오.
4장. 새로운 기능 링크 복사링크가 클립보드에 복사되었습니다!
이 부분에서는 Red Hat Enterprise Linux 9.4에 도입된 새로운 기능 및 주요 개선 사항에 대해 설명합니다.
4.1. 설치 프로그램 및 이미지 생성 링크 복사링크가 클립보드에 복사되었습니다!
SCAP 보안 프로필에 대한 사용자 지정 파일 추가 지원
이번 개선된 기능을 통해 다음 옵션을 사용하여 프로필의 사용자 지정 맞춤 옵션을 osbuild-composer
블루프린트 사용자 지정에 추가할 수 있습니다.
-
추가할 규칙 목록에 대해 선택합니다.
-
제거할 규칙 목록에 대해
선택되지
않음
기본 org.ssgproject.content
규칙 네임스페이스를 사용하면 이 네임스페이스에서 규칙의 접두사를 생략할 수 있습니다. 예를 들어 org.ssgproject.content_grub2_password
및 grub2_password
는 기능적으로 동일합니다.
해당 블루프린트에서 이미지를 빌드할 때 새 맞춤 프로필 ID를 사용하여 맞춤형 파일을 생성하여 이미지에 /usr/share/xml/osbuild-oscap-tailoring/tailoring.xml
으로 저장합니다. 새 프로필 ID에는 기본 프로필에 접미사로 추가된 _osbuild_tailoring
이 있습니다. 예를 들어 cis
기본 프로필인 xccdf_org.ssgproject.content_profile_cis_osbuild_tailoring
.
Jira:RHELDOCS-17792[1]
최소 RHEL 설치에서는 s390utils-core
패키지만 설치합니다.
RHEL 8.4 이상에서 s390utils-base
패키지는 s390utils-core
패키지와 보조 s390utils-base
패키지로 나뉩니다. 결과적으로 RHEL 설치를 최소 환경
설정으로 설정하면 보조 s390utils-base
패키지가 아닌 필요한 s390utils-core
패키지만 설치됩니다. 최소 RHEL 설치와 함께 s390utils-base
패키지를 사용하려면 RHEL 설치를 완료한 후 수동으로 패키지를 설치하거나 Kickstart 파일을 사용하여 s390utils-base
를 명시적으로 설치해야 합니다.
Bugzilla:1932480[1]
4.2. 보안 링크 복사링크가 클립보드에 복사되었습니다!
Keylime 검증기 및 등록 기관 컨테이너 사용 가능
이제 Keylime 서버 구성 요소, 검증자 및 등록 기관을 컨테이너로 구성할 수 있습니다. 컨테이너 내에서 실행되도록 구성된 경우 Keylime 등록 기관은 호스트의 바이너리 없이 컨테이너에서 테넌트 시스템을 모니터링합니다. 컨테이너 배포로 Keylime 구성 요소의 격리, 모듈성 및 재현성을 개선할 수 있습니다.
Jira:RHELDOCS-16721[1]
libkcapi
에서 해시 계산에 대상 파일 이름을 지정하는 옵션을 제공합니다.
libkcapi
(Linux 커널 암호화 API) 패키지의 이번 업데이트에서는 해시 계산에 대상 파일 이름을 지정하는 새로운 옵션 -T
가 도입되었습니다. 이 옵션의 값은 처리된 HMAC 파일에 지정된 파일 이름을 재정의합니다. 이 옵션은 -c
옵션에서만 사용할 수 있습니다. 예를 들면 다음과 같습니다.
sha256hmac -c <hmac_file> -T <target_file>
$ sha256hmac -c <hmac_file> -T <target_file>
Jira:RHEL-15298[1]
암호화 정책을
사용하여 SSH에서 MAC을 미세 제어
이제 시스템 전체 암호화 정책(암호
정책)에서 SSH 프로토콜에 대한 메시지 인증 코드(MAC)에 대한 추가 옵션을 설정할 수 있습니다. 이번 업데이트를 통해 crypto-policies
옵션 ssh_etm
이 tri-state etm@SSH
옵션으로 변환되었습니다. 이전 ssh_etm
옵션이 더 이상 사용되지 않습니다.
이제 ssh_etm
을 다음 값 중 하나로 설정할 수 있습니다.
ANY
-
encrypt-mac 및
encrypt-and-mac
DISABLE_ETM
-
encrypt-mac-macs를
허용하지 않습니다. DISABLE_NON_ETM
-
encrypt-ctlplane-mac를 사용하지 않는 MAC을
허용하지 않습니다.
암시적 MAC을 사용하는 암호는 인증된 암호화를 사용하므로 항상 허용됩니다.
semanage fcontext
명령에서 더 이상 로컬 수정 순서를 다시 정렬하지 않음
semanage fcontext -l -C
명령은 file_contexts.local
파일에 저장된 로컬 파일 컨텍스트 수정 사항을 나열합니다. restorecon
유틸리티는 file_contexts.local
의 항목을 가장 최근 항목에서 가장 오래된 항목으로 처리합니다. 이전에는 semanage fcontext -l -C
가 항목을 잘못된 순서로 나열했습니다. 이러한 처리 순서와 나열 순서가 일치하지 않아 SELinux 규칙을 관리할 때 문제가 발생했습니다. 이번 업데이트를 통해 semanage fcontext -l -C
는 가장 오래된 것부터 최신까지 올바른 순서로 규칙을 표시합니다.
Jira:RHEL-24462[1]
SELinux 정책에 제한된 추가 서비스
이번 업데이트에서는 다음 systemd
서비스를 제한하는 SELinux 정책에 추가 규칙이 추가되었습니다.
-
NVMe-stas
-
rust-afterburn
-
rust-coreos-installer
-
bootc
결과적으로 이러한 서비스는 더 이상 unconfined_service_t
SELinux 레이블로 실행되지 않으며 SELinux 강제 모드에서 성공적으로 실행됩니다.
Jira:RHEL-12591[1]
SAP HANA 서비스를 위한 새로운 SELinux 정책 모듈
이번 업데이트에서는 SAP HANA 서비스에 대한 SELinux 정책에 추가 규칙이 추가되었습니다. 결과적으로 sap_unconfined_t
도메인의 SELinux 강제 모드에서 서비스가 성공적으로 실행됩니다.
glusterd
SELinux 모듈이 별도의 glusterfs-selinux
패키지로 이동
이번 업데이트를 통해 glusterd
SELinux 모듈이 별도의 glusterfs-selinux
패키지에서 유지 관리됩니다. 따라서 모듈은 더 이상 selinux-policy
패키지에 포함되지 않습니다. glusterd
모듈과 관련된 모든 작업의 경우 glusterfs-selinux
패키지를 설치하고 사용합니다.
별도의 패키지로 제공되는 OpenSSL의 fips.so
라이브러리
OpenSSL은 fips.so
공유 라이브러리를 FIPS 공급자로 사용합니다. 이번 업데이트를 통해 인증을 위해 NIST(National Institute of Standards and Technology)에 제출된 fips.so
의 최신 버전은 향후 OpenSSL 버전이 인증 코드 또는 코드를 사용하도록 별도의 패키지에 있습니다.
Jira:RHEL-23474[1]
chronyd 제한
서비스는 SELinux 정책에 의해 제한됩니다.
이번 업데이트에서는 새 chronyd 제한
서비스를 제한하는 SELinux 정책에 추가 규칙이 추가되었습니다. 결과적으로 이제 서비스가 SELinux에서 성공적으로 실행됩니다.
OpenSSL은 공급자 구성을 위한 드롭인 디렉터리 추가
OpenSSL TLS 툴킷은 암호화 알고리즘을 제공하는 모듈의 설치 및 구성을 위한 공급자 API를 지원합니다. 이번 업데이트를 통해 기본 OpenSSL 구성 파일을 수정하지 않고 /etc/pki/tls/openssl.d
디렉터리에 공급자별 구성을 별도의 .conf
파일에 배치할 수 있습니다.
SELinux 사용자 공간 구성 요소가 3.6으로 업데이트됨
SELinux 사용자 공간 구성 요소 libsepol
,libselinux
,libsemanage
,policycoreutils
,checkpolicy
, mcstrans
라이브러리 패키지가 3.6로 변경되었습니다. 이 버전은 다양한 버그 수정, 최적화 및 개선 사항을 제공합니다.
-
CIL에서
거부
규칙에 대한 지원이 추가되었습니다. -
CIL에서
자체
및기타
키워드에 대한 지원이 추가되었습니다. -
현재 시스템에서 수행한 정책 재로드 횟수를 출력하는
getpolicyload
바이너리를 추가합니다.
GnuTLS가 3.8.3으로 업데이트됨
GnuTLS 패키지는 업스트림 버전 3.8.3 이 버전에 따라 다양한 버그 수정 및 개선 사항을 제공합니다.
-
이제
gnutls_hkdf_expand
함수는 RFC 5869 2.3을 준수하기 위해 255 시간 해시 다이제스트 크기보다 작거나 같은 인수만 허용합니다. -
TLS PSK
사용자 이름의 길이 제한이 65535자로 증가했습니다. -
gnutls_session_channel_binding
API 기능은 RFC 9622 4.2에 따라GNUTLS_CB_TLS_EXPORTER
를 요청할 때 추가 검사를 수행합니다. -
클라이언트 측에서
status_request
TLS 확장을 비활성화할 수 있도록GNUTLS
우선순위 한정자가 추가되었습니다._NO_STATUS_REQUEST
- GnuTLS는 TLS 버전이 1.3 이전인 경우 Change Cipher Spec 메시지의 내용을 1과 같은지 확인합니다.
- ClientHello 확장 순서는 기본적으로 임의화됩니다.
- GnuTLS는 이전에 작동하지 않은 PKCS #11 토큰에서 EdDSA 키 생성을 지원합니다.
Jira:RHEL-14891[1]
nettle
rebased to 3.9.1
nettle
라이브러리 패키지는 3.9.1로 변경되었습니다. 이 버전은 다양한 버그 수정, 최적화 및 개선 사항을 제공합니다.
- balloon 암호 해시 추가
- SIV-GCM 인증 암호화 모드 추가
- Offset Codebook Mode 인증 암호화 모드 추가
- 64비트 IBM Z, AMD 및 Intel 64비트 아키텍처에서 SHA-256 해시 함수의 성능 향상
- IBM Power Systems, Little Endian, AMD 및 Intel 64비트 아키텍처에서 Poly1305 해시 함수의 성능 향상
Jira:RHEL-14890[1]
0.25.3을 기반으로 하는 p11-kit
p11-kit
패키지가 업스트림 버전 0.25.3으로 업데이트되었습니다. 패키지에는 PKCS #11 모듈을 관리하기 위한 p11-kit
툴, 신뢰
정책 저장소에 대한 신뢰 도구, p11-kit
라이브러리가 포함되어 있습니다. 주요 개선 사항은 다음과 같습니다.
- PKCS #11 버전 3.0에 대한 지원 추가
pkcs11.h
헤더 파일:- heldCha20/Salsa20, poly1305 및 IBM 관련 메커니즘 및 속성 추가
- 메시지 기반 암호화를 위한 AES-GCM 메커니즘 매개변수 추가
p11-kit
툴:-
토큰 오브젝트를 나열하고 관리하기 위한 유틸리티 명령(
list-tokens
,list-mechanisms
,list-objects
,import-object
,delete-object
,generate-keypair
) -
토큰의 PKCS#11 프로필을 관리하기 위한 유틸리티 명령 추가 (
list-profiles
,add-profile
,delete-profile
) -
인쇄 병합 구성을 위해
print-config
명령 추가
-
토큰 오브젝트를 나열하고 관리하기 위한 유틸리티 명령(
신뢰
도구:-
check-format
명령을 추가하여.p11-kit
파일의 형식을 검증합니다.
-
Jira:RHEL-14834[1]
1.4.0에 기반 libkcapi
rebased
Linux 커널 암호화 API에 대한 액세스를 제공하는 libkcapi
라이브러리는 업스트림 버전 1.4.0에 따라 변경되었습니다. 이 업데이트에는 다양한 개선 사항 및 버그 수정이 포함되어 있습니다.
-
sm3sum
및sm3hmac
툴을 추가했습니다. -
kcapi_md_sm3
및kcapi_md_hmac_sm3
API를 추가했습니다. - SM4 편의성 기능이 추가되었습니다.
- LTO(link-time optimization)에 대한 지원이 수정되었습니다.
- LTO 회귀 테스트를 수정했습니다.
-
kcapi-enc
를 사용하여 임의의 크기의 AEAD 암호화를 수정했습니다.
Jira:RHEL-5367[1]
OpenSSH의 사용자 및 그룹 생성에서는 sysusers.d
형식을 사용합니다.
이전에는 OpenSSH에서 정적 useradd
스크립트를 사용했습니다. 이번 업데이트를 통해 OpenSSH는 sysusers.d
형식을 사용하여 시스템 사용자를 선언하므로 시스템 사용자를 세부 검사할 수 있습니다.
OpenSSH는 인증의 인위 지연 제한
로그인 실패 후 OpenSSH의 응답은 사용자 열거 공격을 방지하기 위해 인위적으로 지연됩니다. 이번 업데이트에서는 원격 인증이 너무 오래 걸리는 경우(예: 권한 액세스 관리(PAM) 처리의 경우 이러한 지연에 대한 상한이 도입되었습니다.
Jira:RHEL-2469[1]
Stunnel은
5.71로 다시 기반
stunnel
TLS/SSL 터널링 서비스는 업스트림 버전 5.71로 변경되었습니다.
주요 새로운 기능은 다음과 같습니다.
- 최신 PostgreSQL 클라이언트에 대한 지원이 추가되었습니다.
-
protocolHeader
서비스 수준 옵션을 사용하여 사용자 지정연결
프로토콜 협상 헤더를 삽입할 수 있습니다. -
protocolHost
옵션을 사용하여 HELO/EHLO 값의 클라이언트 SMTP 프로토콜 협상을 제어할 수 있습니다. -
클라이언트 측 프로토콜에 대한 클라이언트 측 지원이 추가되었습니다.
ldap
. -
이제 service-level
sessionResume
옵션을 사용하여 세션 재개를 구성할 수 있습니다. -
CApath
를 사용하여 서버 모드에서 클라이언트 인증서를 요청하는 데 지원이 추가되었습니다(이전에는CAfile
만 지원됨). - 파일 읽기 및 로깅 성능 개선
-
재시도
옵션에 대한 구성 가능한 지연에 대한 지원이 추가되었습니다. -
클라이언트 모드에서
verify
Cryostat가 설정된 경우 OCSP 스타일링이 요청되고 검증됩니다. - 서버 모드에서 OCSP 스타일링은 항상 사용할 수 있습니다.
-
OCSP 확인으로 인해 TLS 협상이 중단됩니다.
OCSPrequire = no
를 설정하여 이 기능을 비활성화할 수 있습니다.
Jira:RHEL-2468[1]
Rsyslog의 기능을 삭제하는 새로운 옵션
다음 글로벌 옵션을 사용하여 기능을 삭제할 때 Rsyslog 동작을 구성할 수 있습니다.
libcapng.default
-
기능을 삭제하는 동안 오류가 발생할 때 Rsyslog의 작업을 결정합니다. 기본값은
on
이므로libcapng 관련
오류가 발생하는 경우 Rsyslog가 종료되었습니다. libcapng.enable
-
시작 중에 Rsyslog가 기능을 삭제하는지 여부를 결정합니다. 이 옵션을 비활성화하면
libcapng.default
에 영향을 미치지 않습니다.
Jira:RHEL-943[1]
3.1.2에서 감사
기반 감사
Linux 감사 시스템이 버전 3.1.2로 업데이트되어 이전에 릴리스된 버전 3.0.7에 비해 버그 수정, 개선 사항 및 성능 향상을 제공합니다. 주요 개선 사항은 다음과 같습니다.
-
이제
auparse
라이브러리에서 이름이 지정되지 않은 소켓과 익명 소켓을 해석합니다. -
new 키워드는
ausearch
및aureport
도구의시작
및종료
옵션에서 사용할 수 있습니다. -
io_uring
비동기 I/O API에 대한 지원이 추가되었습니다. -
신호에 대한 사용자 친화적인 키워드가
auditctl
프로그램에 추가되었습니다. -
손상된 로그를
auparse
에서 처리하는 기능이 향상되었습니다. -
이제
auditd
서비스에서protectControlGroups
옵션이 기본적으로 비활성화되어 있습니다. - exclude 필터에 대한 규칙 검사가 수정되었습니다.
-
OPENAT2
필드 해석이 향상되었습니다. -
audispd af_unix
플러그인이 독립 실행형 프로그램으로 이동되었습니다. - Python API에서 감사 규칙을 설정하지 않도록 Python 바인딩이 변경되었습니다. 이러한 변경은 SWIG(Simplified Wrapper and Interface Generator)의 버그로 인해 발생했습니다.
Jira:RHEL-14896[1]
rsyslog가 8.2310으로 업데이트됨
Rsyslog 로그 처리 시스템은 업스트림 버전 8.2310으로 변경되었습니다. 이번 업데이트에서는 중요한 개선 사항 및 버그 수정이 도입되었습니다. 주요 개선 사항은 다음과 같습니다.
- 사용자 지정 가능한 TLS/SSL 암호화 설정
-
이전 버전에서는 별도의 연결에 대한 TLS/SSL 암호화 설정을 구성하는 것이 글로벌 설정으로 제한되었습니다. 최신 버전으로 Rsyslog의 각 개별 연결에 대한 고유한 TLS/SSL 설정을 정의할 수 있습니다. 여기에는 보안 및 유연성 향상을 위해 다양한 CA 인증서, 개인 키, 공개 키 및 CRL 파일을 지정하는 작업이 포함됩니다. 자세한 정보 및 사용법은
rsyslog-doc
패키지에 제공된 설명서를 참조하십시오. - 개선된 기능 삭제 기능
-
이제 기능 삭제와 관련된 추가 옵션을 설정할 수 있습니다.
libcapng.enable
글로벌 옵션을off
로 설정하여 기능 삭제를 비활성화할 수 있습니다. 자세한 내용은 RHEL-943 을 참조하십시오.
Jira:RHEL-937, Jira:RHEL-943
SCAP 보안 가이드 0.1.72에 기반
SCAP Security Guide (SSG) 패키지는 업스트림 버전 0.1.72로 변경되었습니다. 이 버전은 버그 수정 및 다양한 개선 사항을 제공합니다.
- CIS 프로필은 최신 벤치마크에 맞게 업데이트됩니다.
- PCI DSS 프로필은 PCI DSS 정책 버전 4.0과 일치합니다.
- STIG 프로필은 최신 DISA STIG 정책과 일치합니다.
자세한 내용은 SCAP 보안 가이드 릴리스 노트를 참조하십시오.
4.3. RHEL for Edge 링크 복사링크가 클립보드에 복사되었습니다!
FIPS가 활성화된 RHEL for Edge 이미지 빌드 지원
이번 개선된 기능에는 다음 이미지 유형에 대해 FIPS가 활성화된 RHEL for Edge 이미지 빌드 지원이 추가되었습니다.
-
edge-installer
-
edge-simplified-installer
-
edge-raw-image
-
edge-ami
-
edge-vsphere
이미지 프로비저닝 프로세스 중에만 FIPS 모드를 활성화할 수 있습니다. FIPS 이미지 빌드가 시작된 후에는 FIPS 모드로 변경할 수 없습니다.
Jira:RHELDOCS-17263[1]
4.4. 쉘 및 명령행 툴 링크 복사링크가 클립보드에 복사되었습니다!
OpenCryptoki 버전 3.22.0에 기반
opencryptoki
패키지가 3.22.0 버전으로 업데이트되었습니다. 주요 변경 사항은 다음과 같습니다.
-
CPACF
보호 키를 사용하여AES-XTS
키 유형에 대한 지원이 추가되었습니다. - 인증서 오브젝트 관리에 대한 지원이 추가되었습니다.
-
no-login
옵션을 사용하여 공개 세션에 대한 지원이 추가되었습니다. - SO(Security Officer)로 로그인 지원이 추가되었습니다.
-
Cryostat 및
Montgomery
키를 가져오고 내보낼수
있는 지원이 추가되었습니다. -
RSA-PSS
키와 인증서 가져오기에 대한 지원이 추가되었습니다. - 보안상의 이유로 AES-XTS 키의 두 가지 주요 부분은 동일하지 않아야 합니다. 이번 업데이트에서는 키 생성 및 가져오기 프로세스에 검사를 추가하여 이를 확인합니다.
- 다양한 버그 수정이 구현되어 있습니다.
Jira:RHEL-11412[1]
4.5. 인프라 서비스 링크 복사링크가 클립보드에 복사되었습니다!
버전 1.0.0 에 동기화4l
업데이트
synce4l
프로토콜이 버전 1.0.0으로 업데이트되었습니다. 이번 업데이트에서는 커널 Digital Phase Locked Cryostat (DPLL) 인터페이스에 대한 지원이 추가되었습니다.
Jira:RHEL-10089[1]
chrony
버전 4.5로 업데이트
chrony
제품군이 버전 4.5로 업데이트되었습니다. 주요 변경 사항은 다음과 같습니다.
- AES-GCM-SIV 암호를 사용하여 NTS(Network Time Security) 쿠키를 단축하여 인터넷상의 NTS의 신뢰성을 개선하여 일부 공급자가 NTP(Network Time Protocol) 메시지 속도를 차단하거나 제한합니다.
-
호스트 이름으로 지정된 NTP 소스의 IP 주소를 주기적으로 새로 고침했습니다. 기본 간격은 2주이며
refresh 0
매개변수를chrony.conf
파일에 추가하여 비활성화할 수 있습니다. - 연결할 수 없는 NTP 소스의 자동 교체가 개선되었습니다.
-
chronyc
유틸리티의 중요한 변경 사항 로깅이 개선되었습니다. - 소스 선택 실패 및 falsetickers 로깅이 개선되었습니다.
-
최근 하드웨어 전송 타임스탬프에 대한 시간 초과를 구성하기 위해
hwtstimeout
지시문을 추가했습니다. - 하드웨어 타임스탬프를 사용하여 PTP의 정확성에 도달하기 위해 PTP(Precision Time Protocol) 투명 클럭에서 제공하는 수정 사항에 대한 실험적인 지원이 추가되었습니다.
-
chronyd 제한
서비스를루트
권한 없이chronyd
서비스를 시작할 수 있는 최소 클라이언트 전용 구성에 대한 대체 서비스로 추가했습니다. -
presend
옵션을interleaved
모드에서 수정했습니다. -
sourcedir
디렉터리에서 IP 주소로 지정된 수정된 소스를 다시 로드합니다.
linuxptp
버전 4.2로 업데이트
linuxptp
프로토콜이 버전 4.2로 업데이트되었습니다. 주요 변경 사항은 다음과 같습니다.
-
phc2sys
유틸리티에서 여러 도메인에 대한 지원이 추가되었습니다. - 클럭 업데이트 및 PTP(Precision Time Protocol) 상위 데이터 세트(예: 클럭 클래스)의 변경 사항에 대한 알림 지원이 추가되었습니다.
- PTP Power Profile, 즉 IEEE C37.238-2011 및 IEEE C37.238-2017에 대한 지원이 추가되었습니다.
4.6. 네트워킹 링크 복사링크가 클립보드에 복사되었습니다!
nft
유틸리티는 nftables
규칙 포함 상태를 재설정할 수 있습니다.
이번 개선된 기능을 통해 nft reset
명령을 사용하여 nftables
규칙 포함 상태를 재설정할 수 있습니다. 예를 들어 이 기능을 사용하여 카운터 및 할당량 문 값을 재설정합니다.
Jira:RHEL-5980[1]
Marvell Octeon PCIe Endpoint Network Interface Controller 드라이버 사용 가능
이번 개선된 기능에는 octeon_ep
드라이버가 추가되었습니다. Marvell의 Octeon PCIe Endpoint 네트워크 인터페이스 카드의 네트워킹에 사용할 수 있습니다. 호스트 드라이버는 PCIe(PCIe) 엔드포인트 네트워크 인터페이스(NIC) 역할을 하여 24개의 N2 코어 인프라 프로세서 제품군인 Marvell OCTEON TX2 CN106XX를 지원합니다. PCIe NIC로 OCTEON TX2 드라이버를 사용하면 OCTEON TX2를 다양한 제품의 PCIe 엔드포인트로 사용할 수 있습니다: 보안 방화벽, 5G ORAN(Open radio Access Network) 및 VRAN(Virtual RAN) 애플리케이션 및 데이터 처리 오프로드 애플리케이션.
현재 다음 장치에서 사용할 수 있습니다.
- 네트워크 컨트롤러: Cavium, Inc. 장치 b100
- 네트워크 컨트롤러: Cavium, Inc. 장치 b200
- 네트워크 컨트롤러: Cavium, Inc. 장치 b400
- 네트워크 컨트롤러: Cavium, Inc. 장치 b900
- 네트워크 컨트롤러: Cavium, Inc. 장치 ba00
- 네트워크 컨트롤러: Cavium, Inc. 장치 bc00
- 네트워크 컨트롤러: Cavium, Inc. 장치 bd00
Jira:RHEL-9308[1]
NetworkManager에서 고급 하드웨어 오프로드를 위한 switchdev
모드 구성 지원
이번 개선된 기능을 통해 NetworkManager 연결 프로필에서 다음과 같은 새 속성을 구성할 수 있습니다.
-
sriov.eswitch-mode
-
sriov.eswitch-inline-mode
-
sriov.eswitch-encap-mode
이러한 속성을 사용하면 스마트 네트워크 인터페이스 컨트롤러(Smart NIC)의 eSwitch를 구성할 수 있습니다. 예를 들어 sriov.eswitch-mode
설정을 사용하여 고급 하드웨어 오프로드 기능을 사용하려면 기존 SR-IOV
에서 모드를 switchdev
로 변경합니다.
NetworkManager에서 ethtool
채널 설정 변경 지원
네트워크 인터페이스는 여러 개의 인터럽트 요청(IRQ) 및 채널이라는 관련 패킷 큐를 가질 수 있습니다
. 이번 개선된 기능을 통해 NetworkManager 연결 프로필은 연결 속성 ethtool.channels-rx
,ethtool.channels-tx
,ethtool.channels-other
, ethtool.channels-combined
를 통해 인터페이스에 할당할 채널 수를 지정할 수 있습니다.
Jira:RHEL-1471[1]
NMState에서 YAML 파일을 생성하여 설정을 되돌릴 수 있음
이번 개선된 기능을 통해 Nmstate는 현재 네트워크 설정과 적용하려는 새 구성을 사용하여 YAML 파일의 차이점이 포함된 "상위 구성 파일"을 생성할 수 있습니다. YAML 파일을 적용한 후 설정이 예상대로 작동하지 않는 경우 revert 구성 파일을 사용하여 이전 설정을 복원할 수 있습니다.
-
적용할 구성을 사용하여 YAML 파일(예:
new.yml
)을 만듭니다. new.yml
의 설정과 현재 상태 간의 차이가 포함된 되돌리기 구성 파일을 만듭니다.nmstatectl gr new.yml > revert.yml
# nmstatectl gr new.yml > revert.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
new.yml
의 구성을 적용합니다. -
이제 이전 상태로 다시 전환하려면
revert.yml
을 적용합니다.
또는 Nmstate API를 사용하여 되돌리기 구성을 생성하는 경우 NetworkState::generate_revert(current)
호출을 사용할 수 있습니다.
NMState API는 IPsec 구성을 기반으로 VPN 연결 구성
Libreswan 유틸리티는 VPN을 구성하기 위한 IPsec을 구현한 것입니다. 이번 업데이트를 통해 nmstatectl
을 사용하여 구성 모드(tunnel 및 transport) 및 네트워크 레이아웃(
)과 함께 IPsec 기반 인증 유형을 구성할 수 있습니다.
host-to-host
,subnet-to-subnet
NMState
에서 우선순위
본딩 속성 지원
이번 업데이트를 통해 구성 파일의 ports-config
섹션에서 priority
속성을 사용하여 nmstate
프레임워크에서 본딩 포트의 우선 순위를 설정할 수 있습니다. YAML 파일의 예는 다음과 같습니다.
결합된 인터페이스 내의 활성 포트가 다운되면 RHEL 커널은 모든 백업 포트 풀에서 우선순위
속성에서 가장 높은 숫자 값이 있는 다음 활성 포트를 선택합니다.
priority
속성은 다음 본딩 인터페이스 모드와 관련이 있습니다.
-
active-backup
-
balance-tlb
-
balance-alb
Jira:RHEL-1438[1]
NetworkManager Cryostat 연결은 새로운 MAC 주소 기반 개인 정보 보호 옵션을 지원합니다.
이번 개선된 기능을 통해 임의의 MAC 주소를SSID(Service Set Identifier)와 연결하도록 NetworkManager를 구성할 수 있습니다. 이를 통해 연결 프로필을 삭제하고 다시 생성하더라도 임의의 MAC 주소를 영구적으로 사용할 수 있습니다. 이 새로운 기능을 사용하려면 Cryostat 연결 프로필의 802-11-wireless.cloned-mac-address
속성을 stable-ssid
로 설정합니다.
VLAN 인터페이스에 대한 새로운 nmstate
속성 도입
이 nmstate
프레임워크 업데이트를 통해 다음 VLAN 속성이 도입되었습니다.
-
등록 프로토콜
: VLAN 등록 프로토콜. 유효한 값은gvrp
(GARP VLAN 등록 프로토콜),mvrp
(Multiple VLAN Registration Protocol) 및none
입니다. -
reorder-headers
: 출력 패킷 헤더를 다시 정렬합니다. 유효한 값은true
및false
입니다. -
loose-binding
: 인터페이스가 기본 장치의 작동 상태에 대한 느슨한 바인딩입니다. 유효한 값은true
및false
입니다.
YAML 구성 파일은 다음 예와 유사할 수 있습니다.
ipv4.dhcp-client-id
를 none
으로 설정하면 client-identifier
가 전송되지 않습니다.
client-identifier
옵션이 NetworkManager에 설정되지 않은 경우 실제 값은 NetworkManager 내부
DHCP 클라이언트 또는 dhclient
와 같이 사용 중인 DHCP 클라이언트 유형에 따라 다릅니다. 일반적으로 DHCP 클라이언트는 클라이언트 ID를 전송합니다
. 따라서 거의 모든 경우에 none
옵션을 설정할 필요가 없습니다. 결과적으로 이 옵션은 클라이언트가 클라이언트 ID를 보내지 않아야 하는 일부 비정상적인 DHCP 서버 구성의 경우에만 유용합니다
.
NMState
에서 MACsec 인터페이스 생성 지원
이번 업데이트를 통해 nmstate
프레임워크 사용자는 OSI(Open Systems Interconnection) 모델의 계층 2에서 통신을 보호하도록 MACsec 인터페이스를 구성할 수 있습니다. 따라서 나중에 계층 7에서 개별 서비스를 암호화할 필요가 없습니다. 또한 이 기능을 사용하면 각 끝점에 대한 대량의 인증서 관리와 같은 관련 문제가 제거됩니다.
자세한 내용은 nmstatectl을 사용하여 MACsec 연결 구성 을 참조하십시오.
Netfilter
업데이트
커널
패키지가 RHEL 9의 5.14.0-405 버전으로 업그레이드되었습니다. 결과적으로 리베이스는 RHEL 커널의 netfilter
구성 요소에 여러 개선 사항 및 버그 수정 사항도 제공했습니다. 주요 변경 사항은 다음과 같습니다.
-
nftables
하위 시스템은 터널 패킷의 다양한 내부 헤더 필드와 일치할 수 있습니다. 이를 통해 특히 터널링 프로토콜이 사용되는 환경에서 네트워크 트래픽을 보다 세밀하고 효과적으로 제어할 수 있습니다.
Jira:RHEL-16630[1]
이제 firewalld
에서 불필요한 방화벽 규칙 플러시 방지
firewalld
서비스는 다음 두 조건이 모두 충족되면 iptables
구성에서 기존 규칙을 모두 제거하지 않습니다.
-
firewalld
는nftables
백엔드를 사용하고 있습니다. -
--direct
옵션을 사용하여 생성된 방화벽 규칙은 없습니다.
이 변경으로 불필요한 작업(firewall 규칙 플러시)을 줄이고 다른 소프트웨어와의 통합을 개선하는 것을 목표로 합니다.
Jira:RHEL-427[1]
ss
유틸리티는 TCP 경계 소켓에 가시성 향상 기능 추가
iproute2
제품군은 TCP/IP 네트워킹 트래픽을 제어하는 유틸리티 컬렉션을 제공합니다. TCP 바인딩된 소켓은 IP 주소와 포트 번호에 연결되지만 TCP 포트에서 연결되거나 수신 대기하지 않습니다. 소켓 서비스(ss
) 유틸리티는 커널에 대한 지원을 추가하여 TCP 경계 소켓을 덤프합니다. 다음 명령 옵션을 사용하여 해당 소켓을 볼 수 있습니다.
-
SS --all
: TCP 바인딩된 활성 소켓을 포함한 모든 소켓을 덤프 -
SS --bound-inactive
: 바인딩된 소켓만 덤프
Jira:RHEL-21223[1]
Nmstate API에서 SR-IOV VLAN 802.1ad 태깅 지원
이번 개선된 기능을 통해 이제 Nmstate API를 사용하여 펌웨어가 이 기능을 지원하는 카드에 대해 하드웨어 가속화된 SR-IOV(Single-Root I/O Virtualization) VLAN(Virtual Local Area Network) 802.1ad 태그를 활성화할 수 있습니다.
TCP Illinois 연결 알고리즘 커널 모듈이 다시 활성화되어 있습니다.
TCP Illinois는 TCP 프로토콜의 변형입니다. 인터넷 서비스 공급자 (ISP)와 같은 고객은 TCP Illinois 알고리즘없이 하위 최적의 성능을 경험하며, 대기 시간이 길어지는 BBR (Bandwidth) 및 BBR (Round-trip propagation Time) 알고리즘을 사용하는 경우에도 네트워크 트래픽이 잘 확장되지 않습니다. 결과적으로 TCP Illinois 알고리즘은 평균 처리량이 약간 높고, 더 공정하게 네트워크 리소스 할당 및 호환성을 생성할 수 있습니다.
Jira:RHEL-5736[1]
iptables
유틸리티는 버전 1.8.10으로 재기반
iptables
유틸리티는 방화벽을 관리하기 위한 패킷 필터링 규칙을 정의합니다. 이 유틸리티는 다시 시작되었습니다. 주요 변경 사항은 다음과 같습니다.
주요 기능:
-
sctp
일치에서 최신 청크 유형 지원 추가 -
jc --iptables
로 출력을 파이핑하는 데 도움이 되는 경우 ip6tables 옵트인 열 정렬 -
더 안정적인 출력을 위해
--numeric
로 숫자 프로토콜 번호를 인쇄 -
*tables-translate
유틸리티에 대한 더 많은 번역이 개선된 출력 포맷 - 몇 가지 수동 페이지 개선 사항
주요 수정 사항:
-
COMMIT 행을 잘못 가리키는
iptables-restore
오류 메시지 -
broken
-p Length
match in ebtables -
ebtables-restore
를 통해 복원된 여러 규칙에 사용될 때 일치 항목 간에 중단됨 - 이미 존재하는 체인 수에 따라 체인의 이름을 변경할 때 프로그램이 충돌 할 수 있습니다.
- 중요하지 않은 메모리 누수
- nft-variants로 전환 후 ebtables에서 누락된 broute 테이블 지원
- '-c' 옵션을 사용하여 ip6tables 규칙 카운터 설정
- 존재하지 않는 체인을 나열할 때 예기치 않은 오류 메시지
- 일치 항목이 사용되는 경우 잠재적인 false-positive ebtables 규칙 비교
- 체인의 이름을 잘못된 이름으로 변경 금지
- iptables-restore 입력에서 "chain lines"을 보다 엄격하게 확인하여 잘못된 체인 이름을 감지합니다.
- 작동하지 않는 기본 제공 체인 정책 카운터
nftables
가 버전 1.0.9로 재기반
nftables
유틸리티가 버전 1.0.9로 업그레이드되어 여러 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
-
--optimize
명령 옵션 개선 - Python nftables 클래스 확장
-
iptables-nft
로 생성된 규칙을 처리할 때 동작 개선 - vxlan-encapsulated 헤더의 필드 액세스 지원
- GRE, Geneve 및 GRETAP 프로토콜에 대한 초기 지원
-
규칙 카운터, 할당량을 재설정하
는 새로운 재설정 규칙 -
새로운
destroy
명령은 해당 항목이 있는 경우에만 삭제 -
마지막으로
패킷을 볼 때 새로운 마지막 명령 기록 - netdev-family 체인에서 장치 추가 및 제거
-
ebtables의
broute 기능을 에뮬레이션하는 새로운 메타
broute 표현식 - 잘못된 메모리 누수 수정
- 코너 케이스의 오류 메시지에서 잘못된 위치 수정
- JSON 출력에서 set 및 map 구문이 누락됨
firewalld
버전 1.3으로 업데이트
firewalld
패키지가 버전 1.3으로 업그레이드되어 여러 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
-
새로운
reset-to-defaults
CLI 옵션: 이 옵션은firewalld
서비스의 구성을 기본값으로 재설정합니다. 이를 통해 사용자는firewalld
구성을 지우고 기본 설정으로 다시 시작할 수 있습니다. -
ingress-zone=ZONE
을 사용하는 정책에 대해--add-masquerade
CLI 옵션을 활성화합니다. 여기서ZONE
에는--add-interface
CLI 옵션과 함께 인터페이스가 할당되어 있습니다. 이렇게 하면 제한이 제거되고 공통 시나리오에서 인터페이스(소스 대신)를 사용할 수 있습니다.
이러한 기능을 도입해야 하는 이유:
-
방화벽을 기본 구성으로 재설정하기 위해
reset-to-defaults
가 구현되었습니다. - 인터페이스를 사용하면 방화벽 구성에 영향을 주지 않고 IP 주소를 변경할 수 있습니다.
결과적으로 사용자는 다음 작업을 수행할 수 있습니다.
- 구성 재설정
-
정책을 사용하는 동안
--add-maquerade
와--add-interface
와 결합
4.7. 커널 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9.4의 커널 버전
Red Hat Enterprise Linux 9.4는 커널 버전 5.14.0-427.13.1과 함께 배포됩니다.
rteval
에서는 이제 기본 측정 CPU 목록에서 임의의 CPU 추가 및 제거를 지원합니다.
rteval
유틸리티를 사용하면 전체 새 목록을 지정하지 않고 --measurement-cpulist 매개변수를 사용할 때 --measurement-cpulist
매개변수를 사용할 때 기본 측정 CPU 목록에 (+ 기호를 사용하여) CPU를 추가(+ 기호 사용)할 수 있습니다. 또한 모든 분리된 CPU 세트를 기본 측정 CPU 목록에 추가하기 위해 --measurement-run-on-isolcpus
가 도입되었습니다. 이 옵션은 분리된 CPU에서 실행되는 실시간 애플리케이션의 가장 일반적인 사용 사례를 다룹니다. 기타 사용 사례에는 더 일반적인 기능이 필요합니다. 예를 들어 일부 실시간 애플리케이션은 하우스키핑에 하나의 격리된 CPU를 사용했기 때문에 기본 측정 CPU 목록에서 제외해야 합니다. 결과적으로 이제 기본 측정 CPU 목록에서 임의의 CPU를 유연하게 추가할 수 있습니다. 제거는 추가보다 우선합니다. 이 규칙은 +/- 기호로 지정된 CPU와 --measurement-run-on-isolcpus
로 정의된 CPU 모두에 적용됩니다.
Jira:RHEL-9912[1]
rtla
는 업스트림 커널
소스 코드의 버전 6.6으로 다시 기반
rtla
유틸리티가 최신 업스트림 버전으로 업그레이드되어 여러 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
-
기본
rtla
스레드와 별도로rtla
스레드에 대한 추가 제어 그룹을 지정하려면-C
옵션을 추가했습니다. -
하우스
키핑 옵션을 추가하여 하우스키핑 CPU에rtla
스레드를 배치하고 다른 CPU에 측정 스레드를 배치했습니다. -
사용자 공간의
timerlat
histtimerlat top
threads를 실행할 수 있도록 타이머lat 추적기에 지원이 추가되었습니다.
Jira:RHEL-10079[1]
cyclicdeadline
에서 히스토그램의 대기 시간 생성 지원
이번 릴리스에서는 cyclicdeadline
유틸리티에서 히스토그램의 대기 시간 생성을 지원합니다. 이 기능을 사용하면 하나의 best-case number를 얻는 대신 다양한 크기의 대기 시간 급증 빈도에 대한 더 많은 통찰력을 얻을 수 있습니다.
Jira:RHEL-9910[1]
SGX가 이제 완전히 지원됨
SGX( Software Guard Extensions )는 소프트웨어 코드와 데이터를 공개 및 수정으로부터 보호하는 Intel® 기술입니다.
RHEL 커널은 SGX 버전 1 및 2 기능을 제공합니다. 버전 1은 유연한 시작 제어 메커니즘을 사용하는 플랫폼에서 SGX 기술을 사용할 수 있도록 합니다. 버전 2에는 Enclave Dynamic Memory Management (EDMM)가 추가되었습니다. 주요 기능은 다음과 같습니다.
- 초기화된 enclave에 속하는 일반 enclave 페이지의 EPCM 권한 수정.
- 초기화된 enclave에 일반 enclave 페이지의 동적 추가
- 더 많은 스레드를 수용하기 위해 초기화된 enclave를 확장합니다.
- 초기화된 enclave에서 일반 및 TCS 페이지 제거.
이번 릴리스에서는 SGX가 기술 프리뷰에서 완전히 지원되는 기능으로 이동합니다.
Bugzilla:2041883[1]
Intel 데이터 스트리밍 액셀러레이터 드라이버가 완전히 지원됨
Intel 데이터 스트리밍 액셀러레이터 드라이버(IDXD)는 Intel CPU 통합 액셀러레이터를 제공하는 커널 드라이버입니다. 여기에는 프로세스 주소 공간 ID(pasid
) 제출 및 공유 가상 메모리(SVM)가 있는 공유 작업 큐가 포함됩니다.
이번 릴리스에서는 IDXD가 기술 프리뷰에서 완전히 지원되는 기능으로 이동합니다.
Jira:RHEL-10097[1]
eBPF 시설은 Linux 커널 버전 6.6으로 변경되었습니다.
주요 변경 사항 및 개선 사항은 다음과 같습니다.
-
BPF 프로그램에서 데이터 및 변수 크기의 액세스를 통해 더 포괄적이고 덜 브레이틀 반복할 수 있는
skb
및xdp
유형의 새로운 동적 포인터(dynptrs
)입니다. -
새로운 BPF
netfilter
프로그램 유형 및 BPF 프로그램을 prerouting 또는 forward와 같은netfilter
후크에 후크하는 최소한의 지원. 커널 포인터(
kptrs
)에 대한 여러 개선 사항:-
더 많은 맵 유형에서
kptrs
를 사용할 수 있습니다. -
RCU 의미 체계는 작업
kptrs
에 대해 활성화됩니다. -
새로운 참조 연결 로컬
kptrs
는 BPF목록과
rbtree
둘 다에 노드를 추가하는 데 유용합니다.
-
더 많은 맵 유형에서
-
로드 시 BPF 프로그램은 특정
kfunc
가 존재하는지 여부를 감지할 수 있습니다. -
dynptrs
,cgroups
,소켓
,cpumasks
를 사용한 몇 가지 새로운kfuncs
. -
여러
uprobe
및usdt
프로브를 연결하기 위한 새로운 BPF 링크입니다. 이는 훨씬 더 빠르고 추가 파일 설명자(FD)를 저장합니다. -
BPF
맵
요소 수가 모든 프로그램 유형에 대해 활성화됩니다. -
모든 BPF
맵
유형에 대한 메모리 사용량 보고가 더 정확합니다. -
bpf_fib_lookup
BPF 도우미에는 라우팅 테이블 ID가 포함되어 있습니다. -
BPF_OBJ_PIN
및BPF_OBJ_GET
명령은O_PATH
FD를 지원합니다.
Jira:RHEL-10691[1]
libbpf-tools 패키지는 IBM Z에서 사용 가능
BPF Compiler Collection(BCC)에 대한 명령행 툴을 제공하는 libbpf-tools
패키지는 IBM Z 아키텍처에서 사용할 수 있습니다. 결과적으로 IBM Z의 libbpf-tools
의 명령을 사용할 수 있습니다.
Jira:RHEL-16325[1]
4.8. 부트 로더 링크 복사링크가 클립보드에 복사되었습니다!
사전 부팅 단계에서 DEP/NX 지원
DEP(Data Execution Prevention), No Execute (NX) 또는 Execute Disable(XD)이라고 하는 메모리 보호 기능은 실행 불가능으로 표시된 코드 실행을 차단합니다. DEP/NX는 운영 체제 수준에서 RHEL에서 사용할 수 있습니다.
이번 릴리스에서는 GRUB 및 shim
부트 로더에 DEP/NX 지원이 추가되었습니다. 이렇게 하면 DEP/NX 보호 없이 특정 공격을 시작할 수 있는 악의적인 EFI 드라이버와 같이 사전 부팅 단계에서 특정 취약점을 방지할 수 있습니다.
Jira:RHEL-10288[1]
4.9. 파일 시스템 및 스토리지 링크 복사링크가 클립보드에 복사되었습니다!
이제 파일 시스템 크기 제한 설정이 지원됨
이번 업데이트를 통해 이제 파일 시스템을 생성하거나 수정할 때 파일 시스템 크기 제한을 설정할 수 있습니다. stratisd
서비스는 동적 파일 시스템을 확장할 수 있지만 XFS 파일 시스템을 과도하게 확장하면 성능 문제가 발생할 수 있습니다. 이 기능을 추가하면 특정 임계값을 초과하여 XFS 파일 시스템을 확장할 때 발생할 수 있는 잠재적인 성능 문제가 해결됩니다. 사용자는 파일 시스템 크기 제한을 설정하여 이러한 문제를 방지하고 최적의 성능을 보장할 수 있습니다. 또한 이 기능을 사용하면 사용자가 파일 시스템의 크기에 상한을 적용할 수 있으므로 풀 모니터링 및 유지 관리를 개선하여 리소스 할당을 효율적으로 수행할 수 있습니다.
이제 lvconvert
를 사용하여 표준 LV를 씬 LV로 변환할 수 있습니다.
이제 LV(표준 논리 볼륨)를 씬 풀 데이터로 지정하면 lvconvert
명령을 사용하여 표준 LV를 씬 LV로 변환할 수 있습니다. 이번 업데이트를 통해 기존 LV를 변환하여 씬 프로비저닝 기능을 사용할 수 있습니다.
multipathd
에서 NVMe 장치의 FPIN-Li 이벤트 감지 지원
이전에는 multipathd
명령이 SCSI 장치에서 Integrity Fabric Performance Impact Notification(PFIN-Li) 이벤트만 모니터링했습니다. multipathd
는 파이버 채널 패브릭에서 전송한 Link Integrity 이벤트를 수신하고 이를 사용하여 경로를 경계로 표시할 수 있습니다. 이 기능은 SCSI 장치의 다중 경로 장치에 대해서만 지원되었으며 multipathd
는 이 기능의 사용을 제한하여 NVMe(Non-volatile Memory Express) 장치 경로를 경계로 표시할 수 없었습니다.
이번 업데이트를 통해 multipathd
는 SCSI 및 NVMe 장치 모두에 대해 FPIN-Li 이벤트 감지를 지원합니다. 결과적으로 이제 다중 경로에서는 좋은 패브릭 연결 없이 경로를 사용하지 않고 다른 경로를 사용할 수 있습니다. 이는 이러한 상황에서 IO 지연을 방지하는 데 도움이 됩니다.
max_retries
옵션이 multipath.conf
의 defaults
섹션에 추가되었습니다.
이번 개선된 기능에는 multipath.conf
파일의 defaults
섹션에 max_retries
옵션이 추가되었습니다. 기본적으로 이 옵션은 설정되지 않으며 SCSI 계층의 기본값인 5번 재시도 값을 사용합니다. 이 옵션에 유효한 값은 0
에서 5
사이입니다. 이 옵션을 설정하면 SCSI 장치에 대한 max_retries
sysfs
속성의 기본값을 덮어씁니다. 이 속성은 특정 오류 유형이 발생할 때 실패를 반환하기 전에 SCSI 계층이 I/O 명령을 재시도하는 횟수를 제어합니다.
사용자가 다중 경로의 경로 검사자가 성공을 반환하지만 장치에 대한 I/O가 중단되는 문제가 발생하면 이 옵션을 설정하여 I/O를 다시 시도하기 전의 시간을 줄일 수 있습니다.
Jira:RHEL-1729[1]
이제 multipath.conf
의 defaults
섹션에 auto_resize
옵션이 추가되었습니다.
이전에는 다중 경로 장치의 크기를 조정하려면 multipathd resize map <name
> 명령을 수동으로 실행해야 했습니다. 이번 업데이트를 통해 이제 multipath.conf
파일의 defaults
섹션에 auto_resize
옵션이 추가되었습니다. 이 옵션은 multipathd
명령이 다중 경로 장치의 크기를 자동으로 조정할 수 있는 시기를 제어합니다. 다음은 auto_resize
의 다양한 값입니다.
-
기본적으로
auto_resize
는never
로 설정됩니다. 이 경우multipathd
는 변경 없이 작동합니다. -
auto_resize
가grow_only
로 설정된 경우 장치 경로가 크기가 증가함에 따라multipathd
에서 다중 경로 장치의 크기를 자동으로 조정합니다. -
auto_resize
가grow_shrink
로 설정된 경우 장치 경로가 크기가 줄어들면multipathd
가 다중 경로 장치를 자동으로 축소합니다.
결과적으로 이 옵션이 활성화되면 더 이상 다중 경로 장치의 크기를 수동으로 조정할 필요가 없습니다.
Jira:RHEL-986[1]
이제 Arcus NVMeoFC multipath.conf
설정 변경 사항이 커널에 포함됩니다.
device-mapper-multipath에 HPE Alletra 9000 NVMeFC 어레이에 대한 기본 제공 구성이 있습니다. arcus는 NVMeoFC에 대한 ANA(Asymmetric Namespace Access)에 대한 지원이 추가되었습니다. 이는 SCSI의 ALUA와 유사합니다. RHEL 호스트가 이 기능을 사용하고 사용 가능한 경우 I/O 최적화 경로에만 I/O를 보내려면 multipath.conf
의 변경이 필요합니다. 이러한 변경 없이 장치 매퍼는 ANA 최적화 및 ANA 최적화된 경로로 I/O를 전송했습니다.
이 변경 사항은 NVMeoFC에만 적용됩니다. FCP multipath.conf
콘텐츠에는 이전에 ALUA를 지원하기 위한 이 설정이 이미 있었습니다.
Stratis-cli
버전 3.6.0으로 업데이트
stratis-cli
패키지가 버전 3.6.0으로 업그레이드되었습니다. 주요 버그 수정 및 개선 사항은 다음과 같습니다.
-
stratis-cli
명령줄 인터페이스는 추가 옵션을 지원하여 생성 시 파일 시스템 크기 제한을 설정합니다.set-size-limit
및unset-size-limit
는 파일 시스템을 생성한 후 파일 시스템 크기 제한을 설정하거나 설정 해제하는 두 개의 새 파일 시스템 명령입니다. -
Stratis-cli
는 수동 항목을 사용하여 커널 인증 키에 키를 설정하는 데 사용할 때 암호 확인을 통합합니다. -
Stratis-cli
는 이제 풀을 중지할 때 이름 또는 UUID로 풀을 지정할 수 있습니다. -
Stratis-cli
는 또한 다양한 내부 개선 사항을 업데이트하여 이제 패키지 구성에서 최소 python 3.9 버전의 요구 사항을 적용합니다.
Jira:RHEL-2265[1]
Boom
을 기반으로 버전 1.6.0으로 업데이트
boom
패키지가 버전 3.6.0으로 업그레이드되었습니다. 주요 개선 사항은 다음과 같습니다.
-
systemd
명령에서 지원하는 다중 볼륨 스냅샷 부팅 구문 지원. -
부팅 항목에
마운트할 추가 볼륨을 지정하기 위해 새로운 --
mount 및--no-fstab
옵션이 추가되었습니다.
이제 SAN에서 NVMe-FC 부팅이 완전히 지원됨
Red Hat Enterprise Linux 9.2에서 기술 프리뷰로 도입된 NVMe(Non-volatile Memory Express) over Fibre Channel (NVMe) 부팅이 지원됩니다. 일부 NVMe/FC 호스트 버스 어댑터는 NVMe/FC 부팅 기능을 지원합니다. NVMe/FC 부팅 기능을 활성화하기 위해 HBA(Host Bus Adapter) 프로그래밍에 대한 자세한 내용은 NVMe/FC 호스트 버스 어댑터 제조업체의 설명서를 참조하십시오.
Jira:RHEL-1492[1]
4.10. 고가용성 및 클러스터 링크 복사링크가 클립보드에 복사되었습니다!
시간 속성에 대한 ISO 8601 기간 사양에 대한 PC
지원
pcs
명령줄 인터페이스를 사용하면 ISO 8601 기간 사양 표준에 따라 Pacemaker 시간 속성에 대한 값을 지정할 수 있습니다.
새로운 pscd
웹 UI 기능 지원
pscd
웹 UI는 이제 다음 기능을 지원합니다.
- 클러스터 리소스를 현재 실행 중인 노드에서 이동
- 노드에서 리소스 실행 금지
- 클러스터 상태 및 클러스터 상태가 다시 로드되는 시점을 표시하는 클러스터 상태 표시
- 클러스터 상태 디스플레이 다시 로드 요청
Jira:RHEL-7582, Jira:RHEL-7739
TLS 암호화 목록의 기본값은 시스템 전체 암호화 정책입니다.
이전에는 pcsd
TLS 암호화 목록이 기본적으로 DEFAULT:!RC4:!3DES:@STRENGTH
로 설정되었습니다. 이번 업데이트를 통해 암호화 목록은 기본적으로 시스템 전체 암호화 정책에서 정의됩니다. pcsd
데몬에서 허용하는 TLS 암호는 현재 설정된 암호화 정책에 따라 이 업그레이드로 변경될 수 있습니다. 암호화 정책 프레임워크에 대한 자세한 내용은 crypto-policies
(7) 도움말 페이지를 참조하십시오.
4.11. 동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9에서 Python 3.12 사용 가능
RHEL 9.4에는 새 패키지 python3.12
에서 제공하는 Python 3.12와 이를 위해 빌드된 패키지 모음과 ubi9/python-312
컨테이너 이미지가 도입되었습니다.
이전에 릴리스된 Python 3.11과 비교하여 주요 개선 사항은 다음과 같습니다.
-
Python은 일반 클래스 및 함수에 대한 새로운
type
문 및 새로운 type 매개 변수 구문을 도입합니다. - 포맷된 문자열 리터럴(f-문자열)은 문법으로 공식화되어 이제 구문 분석기에 직접 통합될 수 있습니다.
- Python은 이제 GIL(글로벌 인터프리터 잠금)을 통해 고유한 해석별 인터프리터 잠금을 제공합니다.
- 이제 Python 코드의 버퍼 프로토콜을 사용할 수 있습니다.
-
보안을 개선하기 위해 SHA1, SHA3, SHA2-384, SHA2-512 및 MD5 암호화 알고리즘의 내장
hashlib
구현은 HACL* 프로젝트에서 공식적으로 인증된 코드로 교체되었습니다. OpenSSL이 제공하지 않는 경우 기본 제공 구현은 폴백으로 계속 사용할 수 있습니다. -
CPython
의 사전, 목록 및 설정 이해는 이제 인라인으로 표시됩니다. 이로 인해 이해력 실행 속도가 크게 증가합니다. -
CPython
은 이제 Linuxperf
profiler를 지원합니다. -
CPython
은 이제 지원되는 플랫폼에서 스택 오버플로 보호 기능을 제공합니다.
이를 위해 빌드된 Python 3.12 및 패키지는 동일한 시스템에 Python 3.9 및 Python 3.11과 동시에 설치할 수 있습니다.
python3.12
스택에서 패키지를 설치하려면 다음을 사용합니다. 예를 들면 다음과 같습니다.
dnf install python3.12 dnf install python3.12-pip
# dnf install python3.12
# dnf install python3.12-pip
인터프리터를 실행하려면 다음을 사용합니다. 예를 들면 다음과 같습니다.
python3.12 python3.12 -m pip --help
$ python3.12
$ python3.12 -m pip --help
자세한 내용은 Python 설치 및 사용을 참조하십시오.
Python 3.12 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
이메일 주소 구문 분석을 제어하는 Python의 새로운 환경 변수
CVE-2023-27043 을 완화하기 위해 이메일 주소의 더 엄격한 구문 분석을 Python 3에 도입하기 위한 이전 버전과 호환되지 않는 변경 사항이 추가되었습니다.
이번 업데이트에서는 새로운 PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING
환경 변수가 도입되었습니다. 이 변수를 true
로 설정하면 이전보다 덜 엄격한 구문 분석 동작이 전체 시스템의 기본값입니다.
export PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING=true
export PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING=true
그러나 영향을 받는 함수에 대한 개별 호출은 여전히 더 엄격한 동작을 활성화할 수 있습니다.
다음 콘텐츠를 사용하여 /etc/python/email.cfg
구성 파일을 생성하여 동일한 결과를 얻을 수 있습니다.
[email_addr_parsing] PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING = true
[email_addr_parsing]
PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING = true
자세한 내용은 Knowledgebase 문서 Mitigation of CVE-2023-27043 introduce stricter parsing of email address in Python에서 참조하십시오.
Jira:RHELDOCS-17369[1]
새 모듈 스트림: ruby:3.3
RHEL 9.4에는 새로운 ruby:3.3
모듈 스트림에 Ruby 3.3.0이 도입되었습니다. 이 버전은 RHEL 9.1과 함께 배포된 Ruby 3.1
이상의 몇 가지 성능 개선, 버그 및 보안 수정, 새로운 기능을 제공합니다.
주요 개선 사항은 다음과 같습니다.
-
Ripper
대신 새로운Prism
parser를 사용할 수 있습니다.Prism
은 Ruby 언어의 이식 가능하고 오류 허용 및 유지 관리할 수 있는 재귀 descent 구문 분석기입니다. - Ruby just-in-time (JIT) 컴파일러 구현인 YJIT는 더 이상 실험적이지 않으며 주요 성능 향상을 제공합니다.
-
potential Regular Expression Denial of Service (ReDoS) 취약점의 영향을 줄이기 위해 clevis
p
일치 알고리즘이 개선되었습니다. - 새로운 실험 RJIT( pure-Ruby Cryostat) 컴파일러는 MJIT를 대체합니다. YJIT를 생산에서 사용하십시오.
- 이제 새로운 M:N 스레드 스케줄러를 사용할 수 있습니다.
기타 주요 변경 사항:
-
이제
Bison
.NET 대신Lrama
LALR 구문 분석기 생성기를 사용해야 합니다. - 더 이상 사용되지 않는 몇 가지 메서드 및 상수가 제거되었습니다.
-
Racc
gem은 기본 gem에서 번들 gem으로 승격되었습니다.
ruby:3.3
모듈 스트림을 설치하려면 다음을 사용합니다.
dnf module install ruby:3.3
# dnf module install ruby:3.3
이전 ruby
모듈 스트림에서 업그레이드하려면 이후 스트림으로 전환을 참조하십시오.
Ruby 3.3 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
Jira:RHEL-17089[1]
새로운 모듈 스트림: php:8.2
RHEL 9.4에서는 PHP 8.2를 새 php:8.2
모듈 스트림으로 추가합니다.
이 릴리스의 개선 사항은 다음과 같습니다.
- 읽기 전용 클래스
- 몇 가지 새로운 독립 실행형 유형
-
새로운
Random
확장 - 특성의 제약 조건
php:8.2
모듈 스트림을 설치하려면 다음 명령을 사용합니다.
dnf module install php:8.2
# dnf module install php:8.2
php:8.1
스트림에서 업그레이드하려면 이후 스트림으로 전환을 참조하십시오.
RHEL 9의 PHP 사용법에 대한 자세한 내용은 PHP 스크립팅 언어 사용을 참조하십시오.
php
모듈 스트림에 대한 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
Jira:RHEL-14699[1]
perl-DateTime-TimeZone
모듈의 name()
메서드는 이제 시간대 이름을 반환합니다.
perl-DateTime-TimeZone
모듈이 버전 2.62로 업데이트되어 name()
메서드에서 표준 시간대 별칭에서 기본 시간대 이름으로 반환되는 값을 변경했습니다.
자세한 내용 및 예제는 표준 시간대 이름 및 별칭과 관련된 perl-DateTime-TimeZone API의 지식베이스 문서 변경 을 참조하십시오.
새 모듈 스트림: nginx:1.24
nginx 1.24 웹 및 프록시 서버는 이제 nginx:1.24
모듈 스트림으로 사용할 수 있습니다. 이번 업데이트에서는 이전에 릴리스된 버전 1.22에 비해 여러 가지 버그 수정, 보안 수정, 새로운 기능 및 개선 사항을 제공합니다.
TLS(Transport Layer Security)와 관련된 새로운 기능 및 변경 사항:
-
ssl_session_cache
지시문에서 공유 메모리를 사용할 때 TLS 세션 티켓에 대해 암호화 키가 자동으로 순환됩니다. - 메모리 사용량은 SSL(Secure Sockets Layer) 프록시를 사용한 구성에 최적화되었습니다.
-
이제
resolver
지시문의ipv4=off
매개 변수를 사용하여 확인하는 동안 IPv4 주소 검색을 비활성화할 수 있습니다. -
Nginx는 이제 PROXY v2 TLV 프로토콜에 표시되는 TLV(Type-Length-Value) 필드의 값을 저장하는
$proxy_protocol_tlv_*
변수를 지원합니다. -
ngx_http_gzip_static_module
모듈은 이제 바이트 범위를 지원합니다.
기타 변경 사항:
- 이제 헤더 행이 내부 API에서 연결된 목록으로 표시됩니다.
-
Nginx는 이제
ngx_http_perl_module
의$r->header_in() 메서드와 $http_.. ,
_in()로 전달되는 동일한 이름의 헤더 문자열을 연결합니다.$sent_http_
r->header...
.. . . . . . . . . . . . . . . . . . . ngx_http_in() 메서드의 $$sent_trailer_...
,$upstream_http_...
및$upstream_trailer_...
변수가 있습니다. - 이제 수신 소켓의 프로토콜 매개 변수가 다시 정의되면 Nginx에 경고가 표시됩니다.
- 클라이언트에서 pipelining을 사용한 경우 Nginx는 이제 lingering으로 연결을 닫습니다.
-
예를 들어,
Critical
에서Informational
까지 다양한 SSL 오류의 로깅 수준이 감소되었습니다.
nginx:1.24
스트림을 설치하려면 다음을 사용합니다.
dnf module install nginx:1.24
# dnf module install nginx:1.24
nginx 1.22
스트림에서 업그레이드하려면 이후 스트림으로 전환합니다.
자세한 내용은 NGINX 설정 및 구성을 참조하십시오.
nginx
모듈 스트림에 대한 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
Jira:RHEL-14713[1]
새 모듈 스트림: mariadb:10.11
MariaDB 10.11은 이제 새 모듈 스트림 mariadb:10.11
로 사용할 수 있습니다. 이전에 사용 가능한 버전 10.5에 비해 주요 개선 사항은 다음과 같습니다.
-
새로운
sys_schema
기능 - Atomic Data Definition Language (DDL) 구문
-
새로운
GRANT.. TO PUBLIC
권한. -
ADMIN 권한만 별도로
읽습니다.SUPER
및 READ만 -
새
UUID
데이터베이스 데이터 유형입니다. - SSL(Secure Socket Layer) 프로토콜 버전 3을 지원하려면 MariaDB 서버에 SSL을 올바르게 구성해야 합니다.
-
natural_sort_key()
함수를 통해 자연 정렬 순서를 지원합니다. -
임의의 텍스트 형식을 위한 새로운
SFORMAT
함수입니다. - UTF-8 문자 집합 및 UCA-14 데이터 정렬을 변경합니다.
-
systemd
소켓 활성화 파일은/usr/share/
디렉토리에서 사용할 수 있습니다. 이는 업스트림과 달리 RHEL의 기본 구성의 일부가 아닙니다. -
MySQL
대신MariaDB
문자열이 포함된 오류 메시지입니다. - 중국어로 사용할 수 있는 오류 메시지입니다.
- 기본 logrotate 파일을 변경합니다.
-
MariaDB 및 MySQL 클라이언트의 경우 명령줄에 지정된 연결 속성(예:
--port=3306
)은 이제tcp
,소켓
,파이프
또는메모리
와 같은 클라이언트와 서버 간의 프로토콜 통신 유형을 강제 적용합니다.
MariaDB 10.11의 변경 사항에 대한 자세한 내용은 MariaDB 10.5와 MariaDB 10.11의 주요 차이점 을 참조하십시오.
MariaDB에 대한 자세한 내용은 MariaDB 사용을 참조하십시오.
mariadb:10.11
스트림을 설치하려면 다음을 사용합니다.
dnf module install mariadb:10.11
# dnf module install mariadb:10.11
MariaDB 10.5에서 MariaDB 10.5로 업그레이드하려면 Upgrading from MariaDB 10.5를 참조하십시오.
mariadb
모듈 스트림에 대한 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
새 모듈 스트림: postgresql:16
RHEL 9.4에는 postgresql:16
모듈 스트림으로 PostgreSQL 16이 도입되었습니다. PostgreSQL 16은 버전 15에 비해 몇 가지 새로운 기능 및 향상된 기능을 제공합니다.
주요 개선 사항은 다음과 같습니다.
- 향상된 대량 로드를 통해 성능이 향상됩니다.
-
libpq
라이브러리에서 연결 수준 로드 밸런싱을 지원합니다. 새로운load_balance_hosts
옵션을 사용하여 더 효율적인 로드 밸런싱을 수행할 수 있습니다. -
이제 사용자 지정 구성 파일을 생성하고
pg_hba.conf
및pg_ident.conf
파일에 포함할 수 있습니다. -
PostgreSQL은 이제
pg_hba.conf
파일의 데이터베이스 및 역할 항목에 일치하는 정규식을 지원합니다.
기타 변경 사항은 다음과 같습니다.
-
PostgreSQL은 더 이상
postmaster
바이너리와 함께 배포되지 않습니다. 제공된systemd
장치 파일(systemctl start postgres
명령)을 사용하여postgresql
서버를 시작하는 사용자는 이 변경의 영향을 받지 않습니다. 이전에postmaster
바이너리를 통해postgresql
서버를 직접 시작한 경우 대신postgres
바이너리를 사용해야 합니다. - PostgreSQL은 더 이상 패키지 내에서 PDF 형식으로 문서를 제공하지 않습니다. 대신 온라인 문서를 사용하십시오.
PostgreSQL 사용을 참조하십시오.
postgresql:16
스트림을 설치하려면 다음 명령을 사용합니다.
dnf module install postgresql:16
# dnf module install postgresql:16
RHEL 9 내의 이전 postgresql
스트림에서 업그레이드하려면 이후 스트림으로 전환에 설명된 절차에 따라 RHEL 9 버전의 PostgreSQL으로 마이그레이션에 설명된 대로 PostgreSQL 데이터를 마이그레이션합니다.
postgresql
모듈 스트림의 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
Git 버전 2.43.0으로 업데이트
Git 버전 제어 시스템이 2.43.0 버전으로 업데이트되어 이전에 릴리스된 버전 2.39에 비해 버그 수정, 개선 사항 및 성능 향상을 제공합니다.
주요 개선 사항은 다음과 같습니다.
-
이제
git check-attr
명령과 함께 새--source
옵션을 사용하여 현재 작업 디렉터리 대신 제공된 트리 ish 오브젝트에서.gitattributes
파일을 읽을 수 있습니다. -
이제 Git에서
WWW-Authenticate
response-type 헤더에서 인증 정보 도우미로 정보를 전달할 수 있습니다. -
커밋이 비어 있는 경우
git format-patch
명령은 빈 파일을 생성하는 대신 커밋 헤더가 포함된 출력 파일을 작성합니다. -
이제
git mistake --contents= <file > < revision > -- < path
> 명령을 사용하여 <revision
>으로 이어지는 기록을 통해 <file
> 콘텐츠에서 시작하는 줄의 출처를 찾을 수 있습니다. -
이제
git log --format
명령에서%(decorate)
자리 표시자를 수락하여 추가 사용자 지정을 통해--decorate
옵션에서 제공하는 기능을 확장합니다.
Jira:RHEL-17100[1]
Git LFS 버전 3.4.1로 업데이트
Git Large File Storage(LFS) 확장이 버전 3.4.1로 업데이트되어 이전에 릴리스된 버전 3.2.0에 비해 버그 수정, 개선 사항 및 성능 향상을 제공합니다.
주요 변경 사항은 다음과 같습니다.
-
이제
git lfs push
명령에서 표준 입력에서 참조 및 오브젝트 ID를 읽을 수 있습니다. - Git LFS는 이제 Git에 의존하지 않고 대체 원격을 처리합니다.
-
Git LFS는 이제
WWW-Authenticate
response-type 헤더를 인증 정보 도우미로 지원합니다.
Jira:RHEL-17101[1]
4.12. 컴파일러 및 개발 도구 링크 복사링크가 클립보드에 복사되었습니다!
LLVM Toolset이 17.0.6 버전으로 업데이트됨
LLVM Toolset이 17.0.6 버전으로 업데이트되었습니다.
주요 개선 사항은 다음과 같습니다.
- 이제 불투명 포인터 마이그레이션이 완료되었습니다.
- 중간 단위 최적화에서 레거시 통과 관리자에 대한 지원 삭제
Clang 변경 사항:
- C++20 coroutine은 더 이상 실험적인 것으로 간주되지 않습니다.
-
std::move
함수에 대한 코드 생성이 개선되었으며 최적화되지 않은 빌드에서 비슷합니다.
자세한 내용은 LLVM 및 Clang 업스트림 릴리스 노트를 참조하십시오.
rust Toolset 버전 1.75.0으로 업데이트됨
rust Toolset이 1.75.0 버전으로 업데이트되었습니다.
주요 개선 사항은 다음과 같습니다.
- 지속적인 평가 시간은 무제한입니다.
- Cleaner 패닉 메시지
- 레지스트리 인증
-
특성의
async fn
및 opaque 반환 유형
Go Toolset을 버전 1.21.0으로 업데이트
Go Toolset이 1.21.0 버전으로 업데이트되었습니다.
주요 개선 사항은 다음과 같습니다.
-
min
,max
및clear
built-ins가 추가되었습니다. - 프로필 가이드 최적화에 대한 공식 지원이 추가되었습니다.
- 이제 패키지 초기화 순서가 보다 정확하게 정의됩니다.
- 유형 유추가 향상되었습니다.
- 이전 버전과의 호환성 지원이 향상되었습니다.
자세한 내용은 Go 업스트림 릴리스 노트를 참조하십시오.
Jira:RHEL-11871[1]
Clang 리소스 디렉터리 이동
Clang이 내부 헤더 및 라이브러리를 저장하는 Clang 리소스 디렉터리가 /usr/lib64/clang/17
에서 /usr/lib/clang/17
로 이동되었습니다.
elfutils
버전 0.190으로 업데이트
elfutils
패키지가 버전 0.190으로 업데이트되었습니다. 주요 개선사항은 다음과 같습니다.
-
libelf
라이브러리에서 상대 재배치(RELR)를 지원합니다. -
libdw
라이브러리에서.debug_[ct]u_index
섹션을 인식합니다. -
eu-readelf
유틸리티는 이제 ELF 섹션을 사용하지 않고 동적 세그먼트를 통해 기호를 표시하는 새로운 -D
,--use-dynamic --symbol
옵션을 지원합니다. -
eu-readelf
유틸리티는 이제.gdb_index
버전 9를 표시할 수 있습니다. -
새로운
eu-scrlines
유틸리티는 지정된 DWARF 또는 ELF 파일과 관련된 소스 파일 목록을 컴파일합니다. -
파일 이름 표현에서 60% 압축에 대해
debuginfod
서버 스키마가 변경되었습니다(이를 다시 인덱싱해야 함).
SystemTap
이 버전 5.0으로 업데이트됨
systemtap
패키지가 버전 5.0으로 업데이트되었습니다. 주요 개선 사항은 다음과 같습니다.
- 보다 빠르고 안정적인 커널 사용자 전송.
- 확장된 DWARF5 debuginfo 형식 지원.
GCC Toolset 13 업데이트
GCC Toolset 13은 최신 버전의 개발 도구를 제공하는 컴파일러 툴셋입니다. AppStream 리포지토리에서 소프트웨어 컬렉션 형식으로 Application Stream으로 사용할 수 있습니다.
RHEL 9.4에서 도입된 주요 변경 사항은 다음과 같습니다.
- GCC 컴파일러가 버전 13.2.1로 업데이트되어 업스트림 GCC에서 사용할 수 있는 많은 버그 수정 및 개선 사항을 제공합니다.
-
binutils
는-march=
znver5
컴파일러 스위치를 통해 znver5 코어를 기반으로 AMD CPU를 지원합니다. -
annobin
이 12.32 버전으로 업데이트되었습니다. -
GCC용
annobin
플러그인은 기본적으로 오브젝트 파일에 저장된 노트에 더 압축된 형식을 사용하므로 오브젝트 파일을 더 작고 더 빠른 링크 시간, 특히 대규모의 복잡한 프로그램에서 사용할 수 있습니다.
다음 툴 및 버전은 GCC Toolset 13에서 제공합니다.
툴 | 버전 |
---|---|
GCC | 13.2.1 |
GDB | 12.1 |
binutils | 2.40 |
dwz | 0.14 |
annobin | 12.32 |
GCC Toolset 13을 설치하려면 root로 다음 명령을 실행합니다.
dnf install gcc-toolset-13
# dnf install gcc-toolset-13
GCC Toolset 13에서 툴을 실행하려면 다음을 수행합니다.
scl enable gcc-toolset-13 tool
$ scl enable gcc-toolset-13 tool
GCC Toolset 13의 툴 버전이 다음 툴의 시스템 버전을 재정의하는 쉘 세션을 실행하려면 다음을 수행합니다.
scl enable gcc-toolset-13 bash
$ scl enable gcc-toolset-13 bash
자세한 내용은 GCC Toolset 13 및 GCC Toolset 사용을 참조하십시오.
Jira:RHEL-23798[1]
GCC 및 -fstack-protector
플래그로 컴파일하면 더 이상 64비트 ARM에서 동적 스택 할당을 보호하지 못합니다.
이전 버전에서는 64비트 ARM 아키텍처에서 -fstack-protector
플래그를 사용하는 시스템 GCC 컴파일러에서 C99 변수 길이 배열 또는 alloca()
가 할당된 함수에서 버퍼 오버플로를 감지하지 못했습니다. 결과적으로 공격자는 스택에 저장된 레지스터를 덮어쓸 수 있었습니다. 이번 업데이트를 통해 64비트 ARM의 버퍼 오버플로 탐지가 수정되었습니다. 결과적으로 시스템 GCC로 컴파일된 애플리케이션이 더 안전합니다.
Jira:RHEL-17638[1]
GCC Toolset 13: GCC 및 -fstack-protector
플래그를 사용하여 더 이상 64비트 ARM에서 동적 스택 할당을 보호하지 못합니다.
이전 버전에서는 64비트 ARM 아키텍처에서 -fstack-protector
플래그를 사용하는 GCC 컴파일러에서 C99 변수 길이 배열 또는 할당 개체가 포함된 함수에서 버퍼 오버플로를 감지하지 못했습니다. 결과적으로 공격자는 스택에 저장된 레지스터를 덮어쓸 수 있었습니다. 이번 업데이트를 통해 64비트 ARM의 버퍼 오버플로 탐지가 수정되었습니다. 결과적으로 GCC로 컴파일된 애플리케이션이 더 안전합니다.
PCP가
버전 6.2.0으로 업데이트
pcp
패키지가 버전 6.2.0으로 업데이트되었습니다. 주요 개선사항은 다음과 같습니다.
-
PCP-htop
는 이제 사용자 정의 탭을 지원합니다. -
PCP-atop
는 이제 새로운 막대 그래프 시각화 모드를 지원합니다. - OpenMetrics PMDA 지표 레이블 및 로깅이 향상되었습니다.
- 추가 Linux 커널 가상 메모리 지표가 추가되었습니다.
새로운 툴:
-
pmlogredact
-
pcp-buddyinfo
-
pcp-meminfo
-
pcp-netstat
-
pcp-slabinfo
-
pcp-zoneinfo
-
Jira:RHEL-2317[1]
새 grafana-selinux
패키지
이전에는 grafana-server
의 기본 설치가 unconfined_service_t
SELinux 유형으로 실행되었습니다. 이번 업데이트에서는 grafana-server
에 대한 SELinux 정책이 포함되어 있고 기본적으로 grafana-server
를 사용하여 설치하는 새로운 grafana-selinux
패키지가 추가되었습니다. 그 결과 grafana-server
가 grafana_t
SELinux 유형으로 실행됩니다.
Papi에서
새로운 프로세서 마이크로 아키텍처 지원
이번 개선된 기능을 통해 다음 프로세서 마이크로 아키텍처에서 papi
이벤트를 사전 설정하여 성능 모니터링 하드웨어에 액세스할 수 있습니다.
- AMD Cryostat 4
- 4th Generation Intel® Xeon® Scalable Processors
Jira:RHEL-9333[1], Jira:RHEL-9335, Jira:RHEL-9334
새로운 패키지: maven-openjdk21
maven:3.8
모듈 스트림에는 OpenJDK 21에 대한 Maven JDK 바인딩을 제공하고 시스템 OpenJDK 21을 사용하도록 Maven을 구성하는 maven-openjdk21
하위 패키지가 포함됩니다.
Jira:RHEL-13046[1]
새 패키지: libzip-tools
RHEL 9.4에는 zipcmp
,zipmerge
및 ziptool
과 같은 유틸리티를 제공하는 libzip-tools
패키지가 도입되었습니다.
CMake
버전 3.26로 업데이트
cmake
패키지가 3.26 버전으로 업데이트되었습니다. 주요 개선사항은 다음과 같습니다.
- C17 및 C18 언어 표준에 대한 지원이 추가되었습니다.
-
CMake는 이제 운영 체제 식별 정보를 위해
수 있습니다./etc/os-release
파일을 쿼리할 -
CUDA 20 및
nvtx3
라이브러리에 대한 지원이 추가되었습니다. - Python 안정적인 애플리케이션 바이너리 인터페이스에 대한 지원이 추가되었습니다.
- SWIG(Simplified Wrapper and Interface Generator) 툴에 Perl 5에 대한 지원이 추가되었습니다.
Valgrind
가 3.22로 업데이트됨
valgrind
패키지가 3.22 버전으로 업데이트되었습니다. 주요 개선사항은 다음과 같습니다.
-
Val
grind
memcheck
는 이제 C 함수memalign
,posix_memalign
,aligned_alloc
, C++17 정렬새
연산자에 지정된 값이 유효한 정렬 값인지 확인합니다. -
Valgrind
memcheck
는 이제 C++14 크기d 및 C++17에 대한 불일치 탐지를
지원합니다. -
DWARF 디버깅 정보에 대한 지연 읽기 지원이 추가되어
debuginfo
패키지가 설치될 때 더 빨리 시작됩니다.
libabigail
을 버전 2.4로 업데이트
libabigail
패키지가 버전 2.4로 업데이트되었습니다.
주요 개선 사항은 다음과 같습니다.
-
abidiff
툴에서는 이제 두 개의 바이너리 세트를 비교할 수 있습니다. - 유연한 배열 데이터 멤버와 관련된 무해한 변경 보고서를 억제하는 지원이 추가되었습니다.
-
enum
형식에 대한 무해한 변경 보고서를 억제하는 지원 개선 - 익명의 enum, union 및 struct 유형에 대한 변경 사항을 개선했습니다.
4.13. IdM (Identity Management) 링크 복사링크가 클립보드에 복사되었습니다!
SSSD에서 암호 없는 새로운 인증 방법을 사용할 수 있습니다.
이번 업데이트를 통해 FIDO2 사양과 호환되는 생체 인식 장치를 사용하도록 SSSD에서 암호 없는 인증을 활성화하고 구성할 수 있습니다(예: YubiKey). FIDO2 토큰을 미리 등록하고 RHEL IdM, Active Directory 또는 LDAP 저장소의 사용자 계정에 이 등록 정보를 저장해야 합니다. RHEL은 현재 USB 기반 토큰만 지원하는 libfido2
라이브러리와 FIDO2 호환성을 구현합니다.
Jira:RHELDOCS-17841[1]
ansible-freeipa
ipauser
및 ipagroup
모듈에서 새로운 이름이 변경된
상태를 지원
이번 업데이트를 통해 ansible-freeipa
ipauser
모듈에서 이름 변경 상태를 사용하여 기존 IdM 사용자의 사용자 이름을 변경할 수 있습니다.
ansible-freeipa
ipagroup
모듈에서 이 상태를 사용하여 기존 IdM 그룹의 그룹 이름을 변경할 수도 있습니다.
이제 ID 관리 사용자가 외부 ID 공급자를 사용하여 IdM에 인증할 수 있습니다.
이번 개선된 기능을 통해 OAuth 2 장치 권한 부여 흐름을 지원하는 외부 ID 공급자(IdP)와 IdM(Identity Management) 사용자를 연결할 수 있습니다. 이러한 IdP의 예로는 Red Hat build of Keycloak, Microsoft Entra ID (이전 Azure Active Directory), GitHub 및 Google이 있습니다.
IdP 참조 및 IdM에 연결된 IdP 사용자 ID가 있는 경우 IdM 사용자가 외부 IdP에서 인증할 수 있도록 해당 ID를 사용할 수 있습니다. 외부 IdP에서 인증 및 승인을 수행한 후 IdM 사용자는 Single Sign-On 기능이 있는 Kerberos 티켓을 받습니다. 사용자는 RHEL 9.1 이상에서 사용할 수 있는 SSSD 버전으로 인증해야 합니다.
Jira:RHELPLAN-169666[1]
IPA
버전 4.11로 업데이트
ipa
패키지가 버전 4.10에서 4.11로 업데이트되었습니다. 주요 변경 사항은 다음과 같습니다.
- FIDO2 기반 passkeys 지원
- Kerberos 서비스를 위한 RBCD(리소스 기반 위임)의 초기 구현.
-
ipalib.api
의 컨텍스트 관리자가 자동으로 구성, 연결 및 연결을 해제합니다. - IdM 복제본은 이제 Kerberos 인증뿐만 아니라 모든 IPA API 및 CA 요청에 대해서도 선택한 서버에 대해 설치됩니다.
-
ansible-freeipa
패키지는 버전 1.11에서 1.12.1로 변경되었습니다. -
ipa-healthcheck
패키지는 버전 0.12에서 0.16로 변경되었습니다.
자세한 내용은 업스트림 릴리스 노트 를 참조하십시오.
만료된 KCM Kerberos 티켓 삭제
이전에는 Kerberos Credential Manager(KCM)에 새 인증 정보를 추가하려고 시도했지만 이미 스토리지 공간 제한에 도달한 경우 새 인증 정보가 거부되었습니다. 사용자 스토리지 공간은 기본값이 64인 max_uid_ccaches
구성 옵션에 의해 제한됩니다. 이번 업데이트를 통해 스토리지 공간 제한에 도달한 경우 가장 오래된 만료된 인증 정보가 제거되고 새 인증 정보가 KCM에 추가됩니다. 만료된 인증 정보가 없으면 작업이 실패하고 오류가 반환됩니다. 이 문제를 방지하려면 kdestroy
명령을 사용하여 인증 정보를 제거하여 일부 공간을 확보할 수 있습니다.
IdM에서 idoverrideuser
,idoverridegroup
및 idview
Ansible 모듈 지원
이번 업데이트를 통해 ansible-freeipa
패키지에 다음 모듈이 포함됩니다.
idoverrideuser
- IdM(Identity Management) LDAP 서버에 저장된 사용자의 사용자 속성을 재정의할 수 있습니다(예: 사용자 로그인 이름, 홈 디렉터리, 인증서 또는 SSH 키).
idoverridegroup
- IdM LDAP 서버에 저장된 그룹의 특성(예: 그룹 이름, GID 또는 설명)을 재정의할 수 있습니다.
idview
- 사용자 및 그룹 ID 덮어쓰기를 구성하고 특정 IdM 호스트에 적용할 수 있습니다.
나중에 이러한 모듈을 사용하여 AD 사용자가 스마트 카드를 사용하여 IdM에 로그인할 수 있습니다.
idp
Ansible 모듈을 사용하면 IdM 사용자를 외부 IdP와 연결할 수 있습니다.
이번 업데이트를 통해 idp
ansible-freeipa
모듈을 사용하여 OAuth 2 장치 권한 부여 흐름을 지원하는 IdM(Identity Management) 사용자를 외부 ID 공급자(IdP)와 연결할 수 있습니다. IdM에 IdP 참조 및 관련 IdP 사용자 ID가 있는 경우 이를 사용하여 IdM 사용자에 대한 IdP 인증을 활성화할 수 있습니다.
외부 IdP에서 인증 및 승인을 수행한 후 IdM 사용자는 Single Sign-On 기능이 있는 Kerberos 티켓을 받습니다. 사용자는 RHEL 8.7 이상에서 사용할 수 있는 SSSD 버전으로 인증해야 합니다.
getcert add-ca
는 인증서가 이미 있거나 추적된 경우 새 반환 코드를 반환합니다.
이번 업데이트를 통해 이미 있거나 추적 중인 인증서를 추가하거나 추적하려고 하는 경우 getcert
명령에서 특정 반환 코드 2
를 반환합니다. 이전에는 명령에서 오류 조건에 대해 반환 코드 1
을 반환했습니다.
ansible-freeipa
에서 DNS 영역 관리 위임이 활성화됨
이제 dnszone
ansible-freeipa
모듈을 사용하여 DNS 영역 관리를 위임할 수 있습니다. dnszone
모듈의 permission
또는 managedby
변수를 사용하여 영역별 액세스 위임 권한을 구성합니다.
모든 LDAP 클라이언트에 대해 OTP 사용 적용
RHEL IdM에서 RHBA-2024:2558 권고를 릴리스하면 OTP(two-factor) 인증이 구성된 사용자 계정의 LDAP 서버 인증에 대한 기본 동작을 설정할 수 있습니다. OTP가 적용되면 LDAP 클라이언트는 OTP 토큰을 연결된 사용자에 대해 단일 요소 인증(암호)을 사용하여 LDAP 서버에 대해 인증할 수 없습니다. 이 방법은 데이터 없이 OID 2.16.840.1.113730.3.8.10.7에서 특수 LDAP 제어를 사용하여 Kerberos 백엔드를 통해 이미 시행됩니다.
관리자는 모든 LDAP 클라이언트에 OTP 사용을 적용하기 위해 다음 명령을 사용할 수 있습니다.
ipa config-mod --addattr ipaconfigstring=EnforceLDAPOTP
$ ipa config-mod --addattr ipaconfigstring=EnforceLDAPOTP
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 모든 LDAP 클라이언트의 이전 OTP 동작으로 다시 변경하려면 다음 명령을 사용합니다.
ipa config-mod --delattr ipaconfigstring=EnforceLDAPOTP
$ ipa config-mod --delattr ipaconfigstring=EnforceLDAPOTP
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Jira:RHEL-23377[1]
runasuser_group
매개변수를 ansible-freeipa
ipasudorule
에서 사용할 수 있습니다.
이번 업데이트를 통해 ansible-freeipa ipa
모듈을 사용하여 sudo 규칙에 대해 RunAs Users 그룹을 설정할 수 있습니다. 옵션은 이미 IdM(Identity Management) 명령줄 인터페이스 및 IdM 웹 UI에서 사용할 수 있습니다.
sudo
rule
389-DS-base
버전 2.4.5로 업데이트
389-ds-base
패키지가 버전 2.4.5로 업데이트되었습니다. 버전 2.3.4에 비해 주요 버그 수정 및 개선 사항은 다음과 같습니다.
- https://www.port389.org/docs/389ds/releases/release-2-3-5.html
- https://www.port389.org/docs/389ds/releases/release-2-3-6.html
- https://www.port389.org/docs/389ds/releases/release-2-3-7.html
- https://www.port389.org/docs/389ds/releases/release-2-4-0.html
- https://www.port389.org/docs/389ds/releases/release-2-4-1.html
- https://www.port389.org/docs/389ds/releases/release-2-4-2.html
- https://www.port389.org/docs/389ds/releases/release-2-4-3.html
- https://www.port389.org/docs/389ds/releases/release-2-4-4.html
- https://www.port389.org/docs/389ds/releases/release-2-4-5.html
이제 ns-slapd
프로세스에 대해 투명 대규모 페이지가 기본적으로 비활성화되어 있습니다.
대용량 데이터베이스 캐시를 사용하면 THP(Transparent Huge Pages)가 많은 부하에서 Directory Server 성능에 부정적인 영향을 미칠 수 있습니다(예: 높은 메모리 공간, 높은 CPU 사용량 및 대기 시간 급증). 이번 개선된 기능을 통해 ns-slapd
프로세스의 THP_DISABLE=1
구성 옵션이 /usr/lib/
드롭인 구성 파일에 추가되었습니다.
systemd
/system/ dirsrv
@.service.d/custom.conf
또한 Directory Server 상태 점검 툴에서 THP 설정을 감지합니다. THP 시스템 전체 및 Directory Server 인스턴스에 대해 활성화한 경우 상태 점검 툴에서 활성화된 THP에 대해 알리고 비활성화 방법에 대한 권장 사항을 출력합니다.
계정 정책 플러그인에 새로운 lastLoginHistSize
구성 속성을 사용할 수 있습니다.
이전에는 사용자가 성공적으로 바인딩할 때 마지막 로그인 시간만 사용할 수 있었습니다. 이번 업데이트를 통해 새로운 lastLoginHistSize
구성 속성을 사용하여 성공적인 로그인 기록을 관리할 수 있습니다. 기본적으로 마지막 5개의 성공적인 로그인이 저장됩니다.
성공적인 로그인 통계를 수집하려면 lastLoginHistSize
속성의 경우 계정 정책 플러그인에 대해 alwaysRecordLogin
속성을 활성화해야 합니다.
자세한 내용은 lastLoginHistSize 를 참조하십시오.
Jira:RHEL-5133[1]
MFA 바인딩 식별을 위한 액세스 로그의 새 notes=M
메시지
이번 업데이트를 통해 MFA 플러그인과 같은 사전 바인딩 인증 플러그인을 사용하여 사용자 계정에 대한 2 단계 인증을 구성할 때 Directory Server 로그 파일은 BIND
작업 중에 다음 메시지를 기록합니다.
액세스 로그는 새
notes=M
노트 메시지를 기록합니다.[time_stamp] conn=1 op=0 BIND dn="uid=jdoe,ou=people,dc=example,dc=com" method=128 version=3 [time_stamp] conn=1 op=0 RESULT err=0 tag=97 nentries=0 wtime=0.000111632 optime=0.006612223 etime=0.006722325 notes=M details="Multi-factor Authentication" dn="uid=jdoe,ou=people,dc=example,dc=com"
[time_stamp] conn=1 op=0 BIND dn="uid=jdoe,ou=people,dc=example,dc=com" method=128 version=3 [time_stamp] conn=1 op=0 RESULT err=0 tag=97 nentries=0 wtime=0.000111632 optime=0.006612223 etime=0.006722325 notes=M details="Multi-factor Authentication" dn="uid=jdoe,ou=people,dc=example,dc=com"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 보안 로그는 새로운 ScanSetting
PLE/MFA
바인딩 방법을 기록합니다.{ "date": "[time_stamp] ", "utc_time": "1709327649.232748932", "event": "BIND_SUCCESS", "dn": "uid=djoe,ou=people,dc=example,dc=com", "bind_method": "SIMPLE\/MFA", "root_dn": false, "client_ip": "::1", "server_ip": "::1", "ldap_version": 3, "conn_id": 1, "op_id": 0, "msg": "" }
{ "date": "[time_stamp] ", "utc_time": "1709327649.232748932", "event": "BIND_SUCCESS", "dn": "uid=djoe,ou=people,dc=example,dc=com", "bind_method": "SIMPLE\/MFA", "root_dn": false, "client_ip": "::1", "server_ip": "::1", "ldap_version": 3, "conn_id": 1, "op_id": 0, "msg": "" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
이러한 메시지를 기록하기 위한 액세스 및 보안 로그의 경우 바인딩이 이 플러그인의 일부인 경우 사전 바인딩 인증 플러그인은 SLAPI API를 사용하여 플래그를 설정해야 합니다.
Jira:RHELDOCS-17838[1]
새로운 inchainMatch
일치 규칙을 사용할 수 있음
이번 업데이트를 통해 클라이언트 애플리케이션은 새로운 inchainMatch
일치 규칙을 사용하여 LDAP 항목의 상위 항목을 검색할 수 있습니다. 멤버
,manager
,parentOrganization
및 memberof
속성은 inchainMatch
일치 규칙과 함께 사용할 수 있으며 다음 검색을 수행할 수 있습니다.
- 사용자가 멤버인 모든 직접 또는 간접 그룹을 찾습니다.
- 관리자가 특정 사용자인 모든 직접 또는 간접 사용자를 찾습니다.
- 항목이 속한 모든 직접 또는 간접 조직을 찾습니다.
- 특정 그룹의 모든 직접 또는 간접 멤버를 찾습니다.
성능상의 이유로 클라이언트 애플리케이션이 inchainMatch
일치 규칙을 사용하여 이러한 속성에 대해 검색을 수행하는 경우 멤버 ,manager
,parentOrganization
및
속성을 인덱싱해야 합니다.
member
of
Directory Server는 기본적으로 활성화된 In Chain 플러그인을 사용하여 inchainMatch
일치 규칙을 구현합니다. 그러나 inchainMatch
는 계산에 비용이 많이 들기 때문에 액세스 제어 명령(ACI)은 일치하는 규칙 사용을 제한합니다.
자세한 내용은 inchainMatch
일치 규칙 사용을 참조하여 LDAP 항목의 조상을 찾습니다.
Jira:RHELDOCS-17256[1]
389-ds-base
패키지에서 HAProxy 프로토콜 지원
이전에는 Directory Server에서 프록시와 비 프록시 클라이언트 간의 들어오는 연결을 구분하지 않았습니다. 이번 업데이트를 통해 새로운 nsslapd-haproxy-trusted-ip
다중 값 구성 속성을 사용하여 신뢰할 수 있는 프록시 서버 목록을 구성할 수 있습니다. nsslapd-haproxy-trusted-ip
가 cn=config
항목에서 구성되면 Directory Server는 HAProxy 프로토콜을 사용하여 추가 TCP 헤더를 통해 클라이언트 IP 주소를 수신하여ACI(액세스 제어 지침)를 올바르게 평가하고 클라이언트 트래픽을 로깅할 수 있습니다.
신뢰할 수 없는 프록시 서버가 bind 요청을 시작하면 Directory Server는 요청을 거부하고 오류 로그 파일에 다음 메시지를 기록합니다.
[time_stamp] conn=5 op=-1 fd=64 Disconnect - Protocol error - Unknown Proxy - P4
[time_stamp] conn=5 op=-1 fd=64 Disconnect - Protocol error - Unknown Proxy - P4
자세한 내용은 nsslapd-haproxy-trusted-ip 를 참조하십시오.
Samba
버전 4.19.4로 업데이트
samba
패키지가 업스트림 버전 4.19.4로 업그레이드되어 이전 버전에 대한 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
-
smbget
유틸리티의 명령줄 옵션은 일관된 사용자 환경을 위해 이름이 변경 및 제거되었습니다. 그러나 유틸리티를 사용하는 기존 스크립트 또는 작업이 손상될 수 있습니다. 새 옵션에 대한 자세한 내용은smbget --help
명령 및smbget(1)
도움말 페이지를 참조하십시오. winbind debug traceid
옵션이 활성화된 경우winbind
서비스는 이제 다음 필드를 추가로 기록합니다.-
traceid
: 동일한 요청에 속하는 레코드를 추적합니다. -
깊이
: 요청 중첩 수준을 추적합니다.
-
- Samba는 더 이상 자체 암호화 구현을 사용하지 않으며 대신 GnuTLS 라이브러리에서 제공하는 암호화 기능을 완전히 사용합니다.
-
디렉터리 이름 캐시 크기
옵션이 제거되었습니다.
Samba 4.11 이후 서버 메시지 블록 버전 1(SMB1) 프로토콜은 더 이상 사용되지 않으며 향후 릴리스에서 제거됩니다.
Samba를 시작하기 전에 데이터베이스 파일을 백업합니다. smbd
,nmbd
또는 winbind
서비스가 시작되면 Samba는 tdb
데이터베이스 파일을 자동으로 업데이트합니다. Red Hat은 tdb
데이터베이스 파일 다운그레이드를 지원하지 않습니다.
Samba를 업데이트한 후 testparm
유틸리티를 사용하여 /etc/samba/smb.conf
파일을 확인합니다.
Identity Management API가 완전히 지원됨
IdM(Identity Management) API는 RHEL 9.2에서 기술 프리뷰로 제공되었습니다. RHEL 9.3부터 완전 지원됩니다.
IdM API가 여러 버전의 API 명령을 사용하도록 향상된 경우에도 기존 툴과 스크립트를 사용할 수 있습니다. 이러한 개선 사항은 호환되지 않는 방식으로 명령의 동작을 변경하지 않습니다. 다음과 같은 이점이 있습니다.
- 관리자는 관리 클라이언트보다 서버에서 이전 또는 이후 버전의 IdM을 사용할 수 있습니다.
- 서버에서 IdM 버전이 변경되어도 개발자는 특정 버전의 IdM 호출을 사용할 수 있습니다.
한 측에서 사용하는 경우(예: 기능에 대한 새 옵션을 도입하는 최신 버전)와 관계없이 서버와의 통신이 가능합니다.
- 참고
- IdM API는 JSON-RPC 인터페이스를 제공하지만 이러한 유형의 액세스는 지원되지 않습니다. 대신 Python을 사용하여 API에 액세스하는 것이 좋습니다. Python을 사용하면 서버에서 메타데이터 검색과 같은 중요한 부분을 자동화하여 사용 가능한 모든 명령을 나열할 수 있습니다.
4.14. 웹 콘솔 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 웹 콘솔에서 Ansible 및 쉘 스크립트를 생성할 수 있음
웹 콘솔에서 kdump
구성 페이지에서 자동화 스크립트에 쉽게 액세스하고 복사할 수 있습니다. 그런 다음 생성된 스크립트를 사용하여 여러 시스템에서 특정 kdump
구성을 구현할 수 있습니다.
Jira:RHELDOCS-17060[1]
스토리지 관리 단순화 및 스토리지의 파티션 크기 조정
웹 콘솔의 스토리지 섹션이 다시 설계되었습니다. 새로운 설계는 모든 관점에서 가시성을 개선했습니다. 개요 페이지는 이제 포괄적인 테이블에 모든 스토리지 개체를 표시하므로 작업을 직접 더 쉽게 수행할 수 있습니다. 임의의 행을 클릭하여 자세한 정보 및 보조 작업을 볼 수 있습니다. 또한 스토리지 섹션에서 파티션 크기를 조정할 수 있습니다.
Jira:RHELDOCS-17056[1]
4.15. Red Hat Enterprise Linux 시스템 역할 링크 복사링크가 클립보드에 복사되었습니다!
ad_integration
RHEL 시스템 역할에서 동적 DNS 업데이트 옵션 구성 지원
이번 업데이트를 통해 ad_integration
RHEL 시스템 역할은 AD(Active Directory)와 통합될 때 SSSD를 사용하여 동적 DNS 업데이트 옵션 구성을 지원합니다. 기본적으로 SSSD는 DNS 레코드를 자동으로 새로 고치려고 합니다.
- ID 공급자가 온라인 상태가 되면(항상).
- 지정된 간격(선택 사항 구성)에서 AD 공급자는 24시간마다 DNS 레코드를 업데이트합니다.
ad_integration
의 새 변수를 사용하여 이러한 및 기타 설정을 변경할 수 있습니다. 예를 들어 ad_dyndns_refresh_interval
을 172800
으로 설정하여 DNS 레코드 새로 고침 간격을 48시간으로 변경할 수 있습니다. 역할 변수에 대한 자세한 내용은 /usr/share/doc/rhel-system-roles/ad_integration/
디렉터리의 리소스를 참조하십시오.
Jira:RHELDOCS-17372[1]
스토리지 RHEL 시스템 역할에서 공유 LVM 장치 관리 지원
RHEL 시스템 역할은 공유 논리 볼륨 및 볼륨 그룹을 생성 및 관리할 수 있도록 지원합니다.
RHEL 9에서 Microsoft SQL Server 2022 사용 가능
이제 RHEL 9에서 mssql-server
시스템 역할을 사용할 수 있습니다. 역할은 다음 두 가지 변수를 추가합니다.
-
SQL ServerSQL Server 를 제한된 애플리케이션으로 실행할지 여부를 제어하기 위해
mssql_run_selinux_confined
입니다. mssql_run_selinux_confined to control whether to run SQL ServerSQL Server as a limited application or not.true
로 설정하면 역할이mssql-server-selinux
패키지를 설치합니다.false
로 설정하면 역할이mssql-server-selinux
패키지를 제거합니다. RHEL 9 관리형 노드의 경우 기본 설정은true
이고 다른 관리형 노드의 경우false
입니다. -
mssql_manage_selinux
를 사용하여 SELinux 구성 여부를 제어합니다.true
로 설정하면 변수는mssql_run_selinux_confined
변수 값을 기반으로 강제 또는 허용 모드를 구성합니다.
rhc
시스템 역할에서 RHEL 7 시스템 지원
rhc
시스템 역할을 사용하여 RHEL 7 시스템을 관리할 수 있습니다. RHSM(Red Hat Subscription Management) 및 Insights에 RHEL 7 시스템을 등록하고 rhc
시스템 역할을 사용하여 시스템 관리를 시작합니다.
현재 RHEL 7에서 Insights 수정 기능을 사용할 수 없으므로 rhc_insights.remediation
매개변수를 사용하는 것은 RHEL 7 시스템에 영향을 미치지 않습니다.
fapolicyd
구성을 위한 새로운 RHEL 시스템 역할
새로운 fapolicyd
RHEL 시스템 역할을 사용하면 Ansible 플레이북을 사용하여 fapolicyd
프레임워크를 관리하고 구성할 수 있습니다. fapolicyd
소프트웨어 프레임워크는 사용자 정의 정책을 기반으로 애플리케이션 실행을 제어합니다.
RHEL 시스템 역할에서 LVM 스냅샷 관리 지원
이번 개선된 기능을 통해 새 스냅샷 RHEL 시스템 역할을 사용하여 LVM 스냅샷
을 생성, 구성 및 관리할 수 있습니다.
Nmstate API 및 네트워크
RHEL 시스템 역할에서 새로운 경로 유형을 지원
이번 개선된 기능을 통해 Nmstate API 및 네트워크
RHEL 시스템 역할과 함께 다음 경로 유형을 사용할 수 있습니다.
-
blackhole
-
금지
-
연결할 수 없음
Jira:RHEL-19579[1]
ad_integration
RHEL 시스템 역할에서 사용자 지정 SSSD 도메인 구성 설정 지원
이전에는 ad_integration
RHEL 시스템 역할을 사용할 때 역할을 사용하여 sssd.conf
파일의 도메인 구성 섹션에 사용자 지정 설정을 추가할 수 없었습니다. 이번 개선된 기능을 통해 ad_integration
역할은 이제 sssd.conf
파일을 수정할 수 있으며 결과적으로 사용자 지정 SSSD 설정을 사용할 수 있습니다.
ad_integration
RHEL 시스템 역할에서 사용자 지정 SSSD 설정 지원
이전에는 ad_integration
RHEL 시스템 역할을 사용할 때 역할을 사용하여 sssd.conf
파일의 [sssd]
섹션에 사용자 지정 설정을 추가할 수 없었습니다. 이번 개선된 기능을 통해 ad_integration
역할은 이제 sssd.conf
파일을 수정할 수 있으며 결과적으로 사용자 지정 SSSD 설정을 사용할 수 있습니다.
표시 이름을 설정하기 위해 rhc
역할의 새로운 rhc_insights.display_name
옵션
이제 새로운 rhc_insights.display_name
매개변수를 사용하여 Red Hat Insights에 등록된 시스템의 표시 이름을 구성하거나 업데이트할 수 있습니다. 매개 변수를 사용하면 Insights 인벤토리에서 시스템을 쉽게 관리할 수 있도록 기본 설정에 따라 시스템의 이름을 지정할 수 있습니다. 시스템이 이미 Red Hat Insights에 연결되어 있는 경우 매개 변수를 사용하여 기존 표시 이름을 업데이트합니다. 등록 시 표시 이름이 명시적으로 설정되지 않은 경우 기본적으로 호스트 이름으로 설정됩니다. 표시 이름을 호스트 이름으로 자동 되돌릴 수는 없지만 수동으로 설정할 수 있습니다.
fapolicyd
구성을 위한 새로운 RHEL 시스템 역할
새로운 fapolicyd
RHEL 시스템 역할을 사용하면 Ansible 플레이북을 사용하여 fapolicyd
프레임워크를 관리하고 구성할 수 있습니다. fapolicyd
소프트웨어 프레임워크는 사용자 정의 정책을 기반으로 애플리케이션 실행을 제어합니다.
로깅 RHEL 시스템 역할을 위한 새로운
변수logging
_preserve_fqdn
이전에는 로깅
시스템 역할을 사용하여 FQDN(정규화된 도메인 이름)을 구성할 수 없었습니다. 이번 업데이트에서는 syslog 항목의 짧은 이름 대신 전체 FQDN을 사용하도록 rsyslog
에서 preserveFQDN
구성 옵션을 설정하는 데 사용할 수 있는 선택적 logging_preserve_fqdn
변수를 추가합니다.
로깅
역할은 출력 모듈에서 일반 대기열 및 일반 작업 매개변수를 지원합니다.
이전에는 로깅
역할을 사용하여 일반 대기열 매개변수 및 일반 작업 매개변수를 구성할 수 없었습니다. 이번 업데이트를 통해 로깅
RHEL 시스템 역할은 출력 모듈에서 일반 대기열 매개변수 구성 및 일반 작업 매개변수를 지원합니다.
postgresql
RHEL 시스템 역할에서 PostgreSQL 16 지원
PostgreSQL 서버를 설치, 구성, 관리 및 시작하는 postgresql
RHEL 시스템 역할은 이제 PostgreSQL 16을 지원합니다.
이 시스템 역할에 대한 자세한 내용은 postgresql RHEL 시스템 역할을 사용하여 PostgreSQL 설치 및 구성을 참조하십시오.
파일 시스템을 생성하지 않고 볼륨 생성 지원
이번 개선된 기능을 통해 fs_type=un formatted
옵션을 지정하여 파일 시스템을 생성하지 않고 새 볼륨을 생성할 수 있습니다.
마찬가지로 안전 모드를 비활성화하여 기존 파일 시스템을 동일한 접근 방식을 사용하여 제거할 수 있습니다.
새로운 ha_cluster
시스템 역할 기능 지원
ha_cluster
시스템 역할은 이제 다음 기능을 지원합니다.
-
dlm
또는gfs2
와 같은 탄력적 스토리지 패키지가 포함된 리포지토리 활성화 리포지토리에 액세스하려면 복구 스토리지 서브스크립션이 필요합니다. - 펜싱 수준을 구성하여 클러스터가 여러 장치를 사용하여 노드를 펜싱할 수 있습니다.
- 노드 속성 구성.
이러한 기능을 구현하기 위해 구성한 매개변수에 대한 자세한 내용은 ha_cluster RHEL 시스템 역할을 사용하여 고가용성 클러스터 구성 을 참조하십시오.
Jira:RHEL-15876[1], Jira:RHEL-22106, Jira:RHEL-15910
journald
시스템 역할에서 ForwardToSyslog
플래그가 지원됨
journald
RHEL 시스템 역할에서 journald_forward_to_syslog
변수는 수신된 메시지를 기존 syslog
데몬으로 전달해야 하는지 여부를 제어합니다. 이 변수의 기본값은 false
입니다. 이번 개선된 기능을 통해 인벤토리에서 journald_forward_to_syslog
를 true
로 설정하여 ForwardToSyslog
플래그를 구성할 수 있습니다. 결과적으로 Splunk와 같은 원격 로깅 시스템을 사용하는 경우 /var/log
파일에서 로그를 사용할 수 있습니다.
rhc
역할의 새로운 rhc_insights.ansible_host
옵션을 사용하여 Ansible 호스트 이름을 설정합니다.
이제 새 rhc_insights.ansible_host
매개변수를 사용하여 Red Hat Insights에 등록된 시스템의 Ansible 호스트 이름을 구성하거나 업데이트할 수 있습니다. 설정된 경우 매개 변수는 /etc/insights-client/insights-client.conf
파일의 ansible_host
구성을 선택한 Ansible 호스트 이름으로 변경합니다. 시스템이 이미 Red Hat Insights에 연결되어 있는 경우 이 매개변수는 기존 Ansible 호스트 이름을 업데이트합니다.
new mssql_ha_prep_for_pacemaker
변수
이전에는 Cryo stat.sql.server
RHEL 시스템 역할에 Pacemaker에 대한 SQL Server 구성 여부를 제어하는 변수가 없었습니다. 이번 업데이트에서는 mssql_ha_prep_for_pacemaker
를 추가합니다. Pacemaker에 대한 시스템을 구성하지 않고 다른 HA 솔루션을 사용하려는 경우 변수를 false
로 설정합니다.
sshd
역할은 인증서 기반 SSH 인증을 구성합니다.
sshd
RHEL 시스템 역할을 사용하면 SSH 인증서를 사용하여 인증하도록 여러 SSH 서버를 구성하고 관리할 수 있습니다. 이렇게 하면 인증서가 신뢰할 수 있는 CA에서 서명하고 세분화된 액세스 제어, 만료 날짜 및 중앙 집중식 관리를 제공하므로 SSH 인증이 더 안전합니다.
로깅 시스템 역할에서 rsyslog_max_message_size
대신
매개변수 사용logging
_max_message_size
이전 버전에서는
매개변수가 지원되지 않았지만 로깅 RHEL 시스템 역할은 rsyslog_max_message_size
logging
_max_message_size 매개변수를 사용하는 대신 rsyslog _max_message_size
를 사용했습니다. 이번 개선된 기능을 통해 logging_max_message_size
가 사용되고 rsyslog_max_message_size
가 사용되지 않고 로그 메시지의 최대 크기를 설정할 수 있습니다.
ratelimit_burst
변수는 ratelimit_interval
이 로깅
시스템 역할에 설정된 경우에만 사용됩니다.
이전 버전에서는 로깅
RHEL 시스템 역할에서 ratelimit_interval
변수가 설정되지 않은 경우 역할에서 ratelimit_burst
변수를 사용하여 rsyslog ratelimit.burst
설정을 설정했습니다. 그러나 ratelimit_interval
을 설정하는 데도 필요하기 때문에 효과가 없었습니다.
이번 개선된 기능을 통해 ratelimit_interval
이 설정되지 않은 경우 역할이 ratelimit.burst
를 설정하지 않습니다. ratelimit.burst
를 설정하려면 ratelimit_interval
및 ratelimit_burst
변수를 둘 다 설정해야 합니다.
이제 존재하지 않는 모듈을 지정할 때 SELinux 역할이 메시지를 출력합니다.
이번 릴리스에서는
변수에 존재하지 않는 모듈을 지정할 때 selinux RHEL 시스템 역할이 오류 메시지를 출력합니다.
selinux
_modules.path
SELinux
역할에서 비활성화 모드에서 SELinux 구성 지원
이번 업데이트를 통해 selinux
RHEL 시스템 역할은 SELinux가 비활성화된 노드에서 SELinux 포트, 파일 컨텍스트 및 부울 매핑 구성을 지원합니다. 이 기능은 시스템에서 SELinux를 허용 또는 강제 모드로 활성화하기 전에 구성 시나리오에 유용합니다.
RHEL 시스템 역할 메트릭
에서 PMIE Webhook 구성 지원
이번 업데이트를 통해 메트릭 RHEL 시스템 역할에 대한 metrics_webhook_endpoint
변수를 사용하여'global webhook_endpoint' PMIE 변수를 자동으로 구성할 수 있습니다. 이를 통해 중요한 성능 이벤트에 대한 메시지를 수신하는 환경에 사용자 정의 URL을 제공할 수 있으며 일반적으로 Event-Driven Ansible과 같은 외부 툴과 함께 사용됩니다.
부트로더
RHEL 시스템 역할
이번 업데이트에서는 부트로더
RHEL 시스템 역할이 도입되었습니다. 이 기능을 사용하여 RHEL 시스템에서 부트로더 및 커널의 안정적이고 일관된 구성을 수행할 수 있습니다. 요구 사항, 역할 변수 및 예제 플레이북에 대한 자세한 내용은 /usr/share/doc/rhel-system-roles/bootloader/
디렉터리의 README 리소스를 참조하십시오.
4.16. 가상화 링크 복사링크가 클립보드에 복사되었습니다!
ARM 64에서 가상화 지원
이번 업데이트에서는 ARM 64(AArch64라고도 함) CPU를 사용하는 시스템에서 KVM 가상 머신을 생성할 수 있도록 지원합니다. 그러나 AMD64 및 Intel 64 시스템에서 사용할 수 있는 특정 가상화 기능 및 기능은 다르게 작동하거나 ARM 64에서 지원되지 않을 수 있습니다.
자세한 내용은 How Virtualization on ARM 64 and Intel 64 를 참조하십시오.
가상 머신의 외부 스냅샷
이번 업데이트에서는 이전에 더 이상 사용되지 않는 내부 스냅샷 메커니즘을 대체하는 VM(가상 머신)의 외부 스냅샷 메커니즘이 도입되었습니다. 결과적으로 완전히 지원되는 VM 스냅샷을 생성, 삭제 및 되돌릴 수 있습니다. 외부 스냅샷은 명령줄 인터페이스와 RHEL 웹 콘솔에서 더 안정적으로 작동합니다. 이는 라이브 스냅샷이라는 실행 중인 VM의 스냅샷에도 적용됩니다.
그러나 일부 명령과 유틸리티는 여전히 내부 스냅샷을 생성할 수 있습니다. 스냅샷이 완전히 지원되는지 확인하려면 해당 스냅샷이 외부로
구성되어 있는지 확인합니다. 예를 들면 다음과 같습니다.
virsh snapshot-dumpxml VM-name snapshot-name | grep external
# virsh snapshot-dumpxml VM-name snapshot-name | grep external
<disk name='vda' snapshot='external' type='file'>
RHEL에서 가상 머신의 Multi-FD 마이그레이션 지원
이번 업데이트를 통해 가상 머신의 다중 파일 설명자(multi-FD) 마이그레이션이 지원됩니다. 다중 FD 마이그레이션은 여러 병렬 연결을 사용하여 가상 머신을 마이그레이션하므로 사용 가능한 모든 네트워크 대역폭을 활용하여 프로세스의 속도를 높일 수 있습니다.
고속 네트워크(20Gbps 이상)에서 이 기능을 사용하는 것이 좋습니다.
Jira:RHELDOCS-16970[1]
VM 마이그레이션에서 post-copy preemption 지원
이제 VM(가상 머신)의 실시간 마이그레이션 후 사후 복사 방지
기능을 사용하므로 이러한 마이그레이션의 성능과 안정성이 향상됩니다.
Jira:RHEL-13004[1], Jira:RHEL-7100
IBM Z의 보안 실행 VM에서 암호화 coprocessor 지원
이번 업데이트를 통해 IBM Z에서 IBM Secure Execution를 사용하여 VM(가상 머신)에 중재된 장치로 암호화 coprocessor를 할당할 수 있습니다.
보안 실행 VM에 암호화 coprocessor를 중재된 장치로 할당하면 VM의 보안을 손상시키지 않고 하드웨어 암호화를 사용할 수 있습니다.
Jira:RHEL-11597[1]
KVM 게스트에서 지원되는 4세대 AMD EPYC 프로세서
4세대 AMD EPYC 프로세서( AMDGenoa라고도 함)에 대한 지원이 KVM 하이퍼바이저 및 커널 코드와 libvirt API에 추가되었습니다. 이를 통해 KVM 가상 머신은 4세대 AMD EPYC 프로세서를 사용할 수 있습니다.
RHEL 웹 콘솔의 새로운 가상화 기능
이번 업데이트를 통해 RHEL 웹 콘솔에는 가상 머신 페이지에 새로운 기능이 포함되어 있습니다. 이제 다음을 수행할 수 있습니다.
-
VM(가상 머신) 생성 중에 SSH 공개 키를 추가합니다. 이 공개 키는 새로 생성된 VM에서 지정된 root가 아닌 사용자의
~/.ssh/authorized_keys
파일에 저장되며 지정된 사용자 계정에 대한 SSH 액세스를 제공합니다. -
새 스토리지 풀을 생성할 때
사전 포맷된 블록 장치
유형을 선택합니다. 이는 원시디스크 장치를 의도하지 않게 다시 포맷하는 것을 방지하기 때문에 물리적 디스크 장치
유형에 대한 보다 강력한 대안입니다.
이번 업데이트에서는 가상 머신 페이지의 기본 동작도 변경합니다.
-
이제
디스크 추가
대화 상자에서Always attach
옵션이 기본적으로 설정됩니다. -
이제
스냅샷 생성
작업에서는 RHEL 9에서 더 이상 사용되지 않는 내부 스냅샷으로 설정된 외부 스냅샷을 사용합니다. 외부 스냅샷은 더 안정적이고qcow2
이미지뿐만 아니라원시
이미지에서도 작동합니다. 실행 중인 VM의 메모리 상태를 유지하려면 메모리 스냅샷 파일 위치를 선택할 수도 있습니다.
Jira:RHELDOCS-17000[1]
virtio-mem
이 AMD64 및 Intel 64 시스템에서 지원됨
이번 업데이트를 통해 RHEL 9에서는 AMD64 및 Intel 64 시스템의 virtio-mem
기능을 지원합니다. virtio-mem
을 사용하면 VM(가상 머신)에서 호스트 메모리를 동적으로 추가하거나 제거할 수 있습니다.
virtio-mem 에 대한 자세한 내용은 virtio-mem
을 사용하여 가상 머신 메모리 추가 및 제거를참조하십시오.
Jira:RHELDOCS-17053[1]
이제 웹 콘솔에서 SPICE를 VNC로 교체할 수 있습니다.
이번 업데이트를 통해 웹 콘솔을 사용하여 기존 VM(가상 머신)의 VNC 프로토콜로 SPICE 원격 디스플레이 프로토콜을 교체할 수 있습니다.
RHEL 9에서는 SPICE 프로토콜 지원이 제거되었으므로 SPICE 프로토콜을 사용하는 VM이 RHEL 9 호스트에서 시작되지 않습니다. 예를 들어 RHEL 8 VM은 기본적으로 SPICE를 사용하므로 RHEL 9로 성공적으로 마이그레이션하려면 SPICE에서 VNC로 전환해야 합니다.
virtio-blk
디스크 장치의 I/O 성능 개선
이번 업데이트를 통해 virtio-blk
디스크 장치의 각 virtqueue에 대해 별도의 IOThread를 구성할 수 있습니다. 이 구성은 I/O 집약적 I/O 워크로드에서 여러 CPU가 있는 가상 머신의 성능을 향상시킵니다.
VNC 뷰어에서 ramfb
의 실시간 마이그레이션 후 VM 디스플레이를 올바르게 초기화
이번 업데이트에서는 ramfb
framebuffer 장치가 개선되어 VM(가상 머신)의 기본 디스플레이로 구성할 수 있습니다. 이전에는 ramfb
을 마이그레이션할 수 없어 실시간 마이그레이션 후 ramfb
를 사용하는 VM에 빈 화면이 표시되었습니다. 이제 ramfb
은 실시간 마이그레이션과 호환됩니다. 결과적으로 마이그레이션이 완료되면 VM 데스크탑이 표시됩니다.
4.17. 클라우드 환경의 RHEL 링크 복사링크가 클립보드에 복사되었습니다!
EC2의 RHEL 인스턴스가 IPv6 IMDS 연결 지원
이번 업데이트를 통해 Amazon Elastic Cloud Compute(EC2)의 RHEL 8 및 9 인스턴스는 IPv6 프로토콜을 사용하여 IMDS(인스턴스 메타데이터 서비스)에 연결할 수 있습니다. 결과적으로 듀얼 스택 IPv4 및 IPv6 연결을 사용하여 EC2에서 cloud-init
를 사용하여 RHEL 인스턴스를 구성할 수 있습니다. 또한 IPv6 전용 서브넷에서 cloud-init
를 사용하여 RHEL의 EC2 인스턴스를 시작할 수 있습니다.
생성된 구성 파일을 삭제하기 위한 새로운 cloud-init clean 옵션
cloud-init clean --configs
옵션이 cloud-init
유틸리티에 추가되었습니다. 이 옵션을 사용하여 인스턴스의 cloud-init
에서 생성한 불필요한 구성 파일을 삭제할 수 있습니다. 예를 들어 네트워크 설정을 정의하는 cloud-init
구성 파일을 삭제하려면 다음 명령을 사용합니다.
cloud-init clean --configs network
cloud-init clean --configs network
Jira:RHEL-7311[1]
4.18. 컨테이너 링크 복사링크가 클립보드에 복사되었습니다!
Podman에서 container.conf 모듈 지원
Podman 모듈을 사용하여 사전 정의된 구성 세트를 로드할 수 있습니다. Podman 모듈은 TOML 형식의 containers.conf
파일입니다.
이러한 모듈은 다음 디렉터리 또는 하위 디렉터리에 있습니다.
-
rootless 사용자의 경우:
$HOME/.config/containers/containers.conf.modules
-
root 사용자의 경우:
/etc/containers/containers.conf.modules
또는/usr/share/containers/containers.conf.modules
podman --module <your_module_name> 명령을 사용하여 온디맨드 모듈을
로드하여 시스템 및 사용자 구성 파일을 덮어쓸 수 있습니다. 모듈 작업에는 다음과 같은 사실이 포함됩니다.
-
module
옵션을 사용하여 모듈을 여러 번 지정할 수 있습니다. -
&
lt;your_module_name
>이 절대 경로이면 구성 파일이 직접 로드됩니다. - 상대 경로는 이전에 언급한 세 개의 모듈 디렉터리에 따라 해결됩니다.
-
$HOME
의 모듈은/etc/
및/usr/share/
디렉터리의 모듈을 재정의합니다.
자세한 내용은 업스트림 설명서 를 참조하십시오.
Jira:RHELPLAN-167829[1]
컨테이너 툴 패키지가 업데이트됨
Podman, Buildah, Skopeo, crun, runc 툴이 포함된 업데이트된 컨테이너 툴 RPM 메타 패키지를 사용할 수 있습니다. 이전 버전에 비해 주요 버그 수정 및 개선 사항은 다음과 같습니다.
Podman v4.9에서 주요 변경 사항:
-
podman --module <your_module_name
> 명령을 사용하고 시스템 및 사용자 구성 파일을 재정의하여 Podman을 사용하여 온디맨드로 모듈을 로드할 수 있습니다. -
create
,
set ,remove
하위 명령세트가
포함된 새로운Podman
명령이 추가되었습니다. 이러한 명령을 사용하면 다양한 아키텍처에서 podman을 실행하는 머신에 대한 빌드를 스플릿 아웃할 수 있습니다. -
Docker 구성과 같은 외부 구성 공급자를 사용하여 Compose 워크로드를 실행하는 새로운
podman-compose
명령이 추가되었습니다. -
podman build
명령에서--layer-label
및--cw
옵션을 지원합니다. -
podman generate systemd
명령은 더 이상 사용되지 않습니다. Quadlet을 사용하여systemd
에서 컨테이너 및 Pod를 실행합니다. -
이제
podman build
명령에서hereDoc 구문을 사용하여Containerfiles
를 지원합니다. -
이제
podman kube play
명령에서 새--publish-all
옵션을 지원합니다. 이 옵션을 사용하여 호스트의 모든 containerPorts를 노출합니다.
주요 변경 사항에 대한 자세한 내용은 업스트림 릴리스 노트를 참조하십시오.
Jira:RHELPLAN-167796[1]
Podman v4.9 RESTful API에서 진행 데이터를 표시
이번 개선된 기능을 통해 레지스트리에 이미지를 가져오거나 푸시할 때 Podman v4.9 RESTful API에서 진행 중인 데이터를 표시할 수 있습니다.
Jira:RHELPLAN-167823[1]
Toolbx 사용 가능
Toolbx를 사용하면 기본 운영 체제에 영향을 주지 않고 개발 및 디버깅 도구, 편집기 및 소프트웨어 개발 키트(SDK)를 Toolbx 완전히 변경 가능한 컨테이너에 설치할 수 있습니다. Toolbx 컨테이너는 registry.access.redhat.com/ubi9.4/toolbox:latest
이미지를 기반으로 합니다.
Jira:RHELDOCS-16241[1]
SQLite가 Podman의 기본 데이터베이스 백엔드로 완전히 지원됨
Podman v4.9를 사용하면 이전에 기술 프리뷰로 사용 가능한 Podman의 SQLite 데이터베이스 백엔드가 완전히 지원됩니다. SQLite 데이터베이스는 컨테이너 메타데이터로 작업할 때 더 나은 안정성, 성능 및 일관성을 제공합니다. SQLite 데이터베이스 백엔드는 RHEL 9.4의 새 설치를 위한 기본 백엔드입니다. 이전 RHEL 버전에서 업그레이드하는 경우 기본 백엔드는 BoltDB입니다.
containers.conf
파일에서 database_backend
옵션을 사용하여 데이터베이스 백엔드를 명시적으로 구성한 경우 Podman은 지정된 백엔드를 계속 사용합니다.
Jira:RHELPLAN-168180[1]
관리자는 nftables
를 사용하여 방화벽 규칙에 대한 격리를 설정할 수 있습니다.
iptables
를 설치하지 않은 시스템에서 Podman 컨테이너 네트워킹 스택인 Netavark를 사용할 수 있습니다. 이전에는 컨테이너 네트워킹 인터페이스(CNI) 네트워킹을 사용할 때 Netavark로 간주할 때 iptables
를 설치하지 않은 시스템에서 컨테이너 네트워킹을 설정할 수 없었습니다. 이번 개선된 기능을 통해 Netavark 네트워크 스택은 nftables
가 설치된 시스템에서만 작동하며 자동으로 생성된 방화벽 규칙을 격리할 수 있습니다.
Jira:RHELDOCS-16955[1]
Containerfile
에서 여러 줄 지침을 지원
Containerfile
파일에서 여러 줄hereDoc 명령( here Document notation)을 사용하여 이 파일을 단순화하고 여러 RUN
지시문을 수행하여 이미지 계층 수를 줄일 수 있습니다.
예를 들어 원래 Containerfile
에는 다음 RUN
지시문이 포함될 수 있습니다.
RUN dnf update RUN dnf -y install golang RUN dnf -y install java
RUN dnf update
RUN dnf -y install golang
RUN dnf -y install java
여러 RUN 지시문 대신 hereDoc 표기법을 사용할 수 있습니다.
RUN <<EOF dnf update dnf -y install golang dnf -y install java EOF
RUN <<EOF
dnf update
dnf -y install golang
dnf -y install java
EOF
Jira:RHELPLAN-168185[1]
gvisor-tap-vsock
패키지를 사용할 수 있음
gvisor-tap-vsock
패키지는 libslirp
사용자 모드 네트워킹 라이브러리 및 VPNKit 도구 및 서비스의 대안입니다. Go로 작성되었으며 gVisor의 네트워크 스택을 기반으로 합니다. libslirp
와 비교하여 gvisor-tap-vsock
라이브러리는 구성 가능한 DNS 서버 및 동적 포트 전달을 지원합니다. podman-machine 가상 머신에 gvisor-tap-vsock
네트워킹 라이브러리를 사용할 수 있습니다. 가상 머신을 관리하기 위한 podman machine
명령은 현재 Red Hat Enterprise Linux에서 지원되지 않습니다.
Jira:RHELPLAN-167396[1]
5장. 외부 커널 매개변수에 대한 중요한 변경 사항 링크 복사링크가 클립보드에 복사되었습니다!
이 장에서는 시스템 관리자에게 Red Hat Enterprise Linux 9.4와 함께 배포된 커널의 중요한 변경 사항에 대한 요약을 제공합니다. 이러한 변경으로는 proc
항목, sysctl
및 sysfs
기본값, 부팅 매개 변수, 커널 구성 옵션 또는 눈에 띄는 동작 변경과 같은 추가 또는 업데이트된 동작 변경이 포함될 수 있습니다.
새 커널 매개변수
accept_memory=
[MM]
값:
lazy
(기본값)- 기본적으로 승인되지 않은 메모리는 긴 부팅 시간을 피하기 위해 lazily가 허용됩니다. lazy 옵션은 모든 메모리가 수락될 때까지 일부 런타임 오버헤드를 추가합니다. 대부분의 경우 오버헤드는 무시할 수 있습니다.
eager
-
일부 워크로드 또는 디버깅 용도의 경우
accept_memory=eager
를 사용하여 부팅 중에 한 번에 모든 메모리를 허용할 수 있습니다.
arm64.nomops
[ARM64]
무조건 메모리 복사 및 메모리 세트 지침이 지원됩니다.
cgroup_favordynmods=
[KNL]
favordynmods
를 활성화하거나 비활성화합니다.
값:
-
true
-
false
기본값은 CONFIG_CGROUP_FAVOR_DYNMODS
입니다.
early_page_ext
[KNL]
더 초기 부팅 할당을 처리하기 위해 page_ext
초기화를 이전 단계에 적용합니다.
부작용으로 일부 최적화는 비활성화되어 있을 수 있습니다. 예를 들어 병렬화된 메모리 초기화는 비활성화되어 있습니다. 따라서 특히 메모리가 많은 시스템에서 부팅 프로세스가 더 오래 걸릴 수 있습니다.
CONFIG_PAGE_EXTENSION=y
에서 사용할 수 있습니다.
fw_devlink.sync_state=
[KNL]
프로브할 수 있는 모든 장치가 프로빙을 완료하면 이 매개변수는 아직 sync_state()
호출을 수신하지 않은 장치에서 수행할 작업을 제어합니다.
값:
strict
(기본값)- 소비자가 성공적으로 프로브를 계속 기다립니다.
timeout
-
소비자에서 대기하고
deferred_probe_timeout
이 만료되었거나CONFIG_MODULES
가false
인 경우late_initcall()
후sync_state()
호출을 아직 수신하지 않은 모든 장치에서sync_state()
를 호출합니다.
ia32_emulation=
[X86-64]
값:
true
-
32비트 프로그램을 로드하고 32비트 syscall을 실행할 수 있으므로 기본적으로 부팅 시
IA32_EMULATION_DEFAULT_DISABLED
를 덮어씁니다. false
- 무조건 IA32 에뮬레이션을 비활성화합니다.
kunit.enable=
[KUNIT]
KUnit 테스트 실행을 활성화합니다. CONFIG_KUNIT
을 완전히 활성화하도록 설정해야 합니다.
KUNIT_DEFAULT_ENABLED
를 사용하여 기본값을 재정의할 수 있습니다.
기본값은 1입니다(활성화).
mtrr=debug
[X86]
부팅 시 MTRR 레지스터와 관련된 디버그 정보를 출력할 수 있습니다.
rcupdate.rcu_cpu_stall_cputime=
[KNL]
샘플링 기간 동안 CPU 시간과 인터럽트 및 작업 수에 대한 통계를 제공합니다. 연속 RCU stalls의 경우 모든 샘플링 기간은 첫 번째 RCU의 절반 시간 제한에서 시작됩니다.
rcupdate.rcu_exp_stall_task_details=
[KNL]
빠른 RCU CPU가 경고하는 동안 현재 RCU 유예 기간을 차단하는 모든 작업의 스택 덤프를 출력합니다.
spec_rstack_overflow=
[X86]
AMD Cryostat CPU에서 RAS 오버플로 완화 기능을 제어합니다.
값:
off
- 완화 비활성화
마이크로 코드
- 마이크로 코드 완화만 활성화합니다.
safe-ret
(기본값)- 소프트웨어 전용 보안 RET 완화 기능을 활성화합니다.
ibpb
- 커널 항목에서 IBPB를 실행하여 완화 기능을 활성화합니다.
ibpb-vmexit
- VMEXIT에서만 IBPB를 발행합니다. 이 완화 방법은 클라우드 환경에 따라 다릅니다.
workqueue.unbound_cpus=
[KNL,SMP]
바인딩되지 않은 작업 큐에서 사용할 하나 또는 일부 CPU를 제한하려면 을 지정합니다.
value: CPU 목록입니다.
기본적으로 모든 온라인 CPU는 바인딩되지 않은 작업 큐에 사용할 수 있습니다.
업데이트된 커널 매개변수
amd_iommu=
[HW, X86-64]
시스템의 AMD IOMMU 드라이버에 매개변수를 전달합니다.
값:
fullflush
-
더 이상 사용되지 않는
iommu.strict=1
. off
- 시스템에 있는 AMD IOMMU를 초기화하지 마십시오.
force_isolation
-
모든 장치에 대해 장치 격리를 강제 적용합니다. IOMMU 드라이버는 더 이상 필요에 따라 격리 요구 사항을 대체할 수 없습니다. 이 옵션은
iommu=pt
를 덮어쓰지 않습니다. force_enable
- IOMMU가 활성화된 버그로 알려진 플랫폼에서 IOMMU를 강제로 활성화합니다. 이 옵션을 주의해서 사용하십시오.
- new:
pgtbl_v1
(기본값) - Cryostat-API에 버전 1 페이지 테이블을 사용합니다.
- new:
pgtbl_v2
- Cryostat-API에 버전 2 페이지 테이블을 사용합니다.
- new:
irtcachedis
- IRT(Interrupt Remapping Table) 캐싱을 비활성화합니다.
nosmt
[KNL, PPC, S390]
대칭 멀티스레딩(SMT)을 비활성화합니다. smt=1
과 동일합니다.
[KNL, X86, PPC]
대칭 멀티스레딩(SMT)을 비활성화합니다.
nosmt=force
-
강제 SMT를 비활성화합니다.
sysfs
제어 파일을 사용하여 실행 취소할 수 없습니다.
page_reporting.page_reporting_order=
[KNL]
최소 페이지 보고 순서.
값: integer.
최소 페이지 보고 순서를 조정합니다.
new: 페이지 보고는 MAX_ORDER
를 초과하면 비활성화되어 있습니다.
tsc=
TSC에 대한 클럭 소스 안정성 검사를 비활성화합니다.
값:
- [x86]
신뢰할 수 있는
- tsc 클럭 소스를 신뢰할 수 있음으로 표시합니다. 이렇게 하면 런타임 시 클럭 소스 확인이 비활성화되고 부팅 시 수행되는 안정성 검사가 비활성화됩니다. 이전 하드웨어 및 가상화 환경에서 해상도가 높은 타이머 모드를 활성화하는 데 사용됩니다.
- [x86]
noirqtime
-
irq
계정을 수행하는 데 TSC를 사용하지 마십시오. 시간을 실행하는 데 사용하면 RDTSC가 느리고 이 회계에서 오버헤드가 증가할 수 있는 모든 플랫폼에서IRQ_TIME_ACCOUNTING
을 비활성화합니다. - [x86]
불안정
- TSC 클럭 소스를 불안정으로 표시합니다. 이는 부팅시 TSC가 무조건 불안정하게 표시하며, TSC 워치(TSC 워치)가 명시된 후 추가 허블을 방지할 수 있습니다.
- [x86]
nowatchdog
- 클럭 소스 워치독을 비활성화합니다. 클럭 소스 워치독의 중단이 허용되지 않는 엄격한 대기 시간 요구 사항이 있는 상황에서 사용됩니다.
- [x86]
recalibrate
- TSC 주파수가 MSR 또는 CPUID(0x15)를 사용하여 HW 또는 FW에서 얻은 시스템의 HW 타이머(HPET 또는 PM 타이머)에 대한 강제 재조정. 차이가 500 ppm 이상인 경우 경고합니다.
- 새로운 기능: [x86]
워치독
TSC를 다른 HW 타이머(HPET 또는 PM 타이머)를 확인하기 위해 워치독 클럭소스로 사용하지만 TSC가 신뢰할 수 있는 것으로 간주되는 시스템에서만 사용합니다.
이전
tsc=nowatchdog
은 이를 비활성화합니다. 나중에tsc=nowatchdog
이 이를 재정의합니다. 콘솔 메시지는 이러한 억제 또는 덮어쓰기에 플래그를 지정합니다.
usbcore.authorized_default=
[USB]
기본 USB 장치 권한 부여.
값:
- New:
-1
(기본값) - 권한 부여(동일 1).
0
- 권한이 없습니다.
1
- 권한 부여.
2
- 장치가 내부 포트에 연결된 경우 권한이 부여됩니다.
제거된 커널 매개변수
-
cpu0_hotplug
-
sysfs.deprecated
새로운 sysctl 매개변수
io_uring_group
값:
1
-
io_uring
인스턴스를 생성하려면 프로세스가 권한이 있어야 합니다(CAP_SYS_ADMIN
) 또는io_uring_group
그룹에 있어야 합니다. -1
(기본값)-
CAP_SYS_ADMIN
기능이 있는 프로세스만io_uring
인스턴스를 생성할 수 있습니다.
numa_balancing_promote_rate_limit_MBps
서로 다른 메모리 유형 간의 승격 또는 강등 처리량이 너무 높으면 애플리케이션 대기 시간이 저하될 수 있습니다. 이 매개변수를 사용하여 승격 처리량을 평가할 수 있습니다. 노드당 최대 승격 처리량(MB/s)은 설정된 값 이상으로 제한됩니다.
엄지엄 규칙은 이를 PMEM 노드 쓰기 대역폭의 1/10 미만으로 설정하는 것입니다.
업데이트된 sysctl 매개변수
io_uring_disabled
모든 프로세스에서 새 io_uring
인스턴스를 생성하지 못하도록 합니다. 이를 활성화하면 커널의 공격 면적이 줄어듭니다.
값:
- 새로운 기능:
0
-
모든 프로세스는
io_uring
인스턴스를 정상적으로 생성할 수 있습니다. - 새로운 기능:
1
io_uring
생성은 io_uring_group 그룹에 없는 권한이 없는 프로세스에 대해 비활성화되어 있습니다.io_uring_setup()
은-EPERM
. 기존io_uring
인스턴스를 계속 사용할 수 있습니다.자세한 내용은
io_uring_group
설명서를 참조하십시오.- 새로운 기능:
2
(기본값) -
모든 프로세스에 대해
io_uring
생성이 비활성화됩니다.io_uring_setup()
은 항상-EPERM
. 기존io_uring
인스턴스를 계속 사용할 수 있습니다.
6장. 장치 드라이버 링크 복사링크가 클립보드에 복사되었습니다!
6.1. 새로운 드라이버 링크 복사링크가 클립보드에 복사되었습니다!
설명 | 이름 | 아키텍처로 제한 |
---|---|---|
IAA Compression Accelerator Crypto 드라이버 | iaa_crypto | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | intel_qat | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_4xxx | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_c3xxx | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_c3xxxvf | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_c62x | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_c62xvf | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_dh895xcc | AMD 및 Intel 64비트 아키텍처 |
Intel® QuickAssist Technology - 0.6.0 | qat_dh895xccvf | AMD 및 Intel 64비트 아키텍처 |
설명 | 이름 | 아키텍처로 제한 |
---|---|---|
bcm-phy-ptp | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
mt7925-common | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 | |
mt7925e | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 | |
mt792x-lib | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 | |
PCI 버스의 Bosch M_CAN 컨트롤러를 위한 TM 버스 드라이버 | m_can_pci | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Bosch M_CAN 컨트롤러용TM 버스 드라이버 | m_can | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
8 개의 장치 USB2CAN 인터페이스 용 TM 드라이버 | usb_8dev | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Dr.com을 위한 TM 드라이버입니다. Cryostat Wuensche cannot/USB 인터페이스 | ems_usb | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Kvaser Cryostat/USB 장치용 TM 드라이버 | kvaser_usb | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
PEAK-System USB 어댑터용TM 드라이버 | peak_usb | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Intel® 인프라 데이터 경로 기능 Linux 드라이버 | idpf | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Marvell 88Q2XXX 100/1000BASE-T1 Automotive Ethernet CryostatY 드라이버 | marvell-88q2xxx | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Marvell Octeon EndPoint NIC 드라이버 | octeon_ep | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
마이크로 칩 251x/25625 Cryostat 드라이버 | mcp251x | AMD 및 Intel 64비트 아키텍처 |
Microchip MCP251xFD Family Cryostat 컨트롤러 드라이버 | mcp251xfd | AMD 및 Intel 64비트 아키텍처 |
NXP imx8 DWMAC Specific Glue 레이어 | dwmac-imx | 64비트 ARM 아키텍처 |
bcm-phy-ptp | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
Realtek Cryostatax 무선 8852C 드라이버 | rtw89_8852c | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 |
Realtek Cryostatax 무선 8852CE 드라이버 | rtw89_8852ce | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 |
직렬 라인ight 인터페이스 | slcan | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
PEAK PCAN PCIe/M.2 FD 제품군 카드용 소켓-CAN 드라이버 | peak_pciefd | IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
bcm-phy-ptp | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
mt7925-common | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 | |
mt7925e | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 | |
mt792x-lib | 64비트 ARM 아키텍처, AMD 및 Intel 64비트 아키텍처 |
설명 | 이름 | 아키텍처로 제한 |
---|---|---|
AMD HSMP Platform Interface Driver - 2.0 | amd_hsmp | AMD 및 Intel 64비트 아키텍처 |
AMD 플랫폼 관리 프레임워크 드라이버 | amd-pmf | AMD 및 Intel 64비트 아키텍처 |
Intel TPMI 열거 모듈 | intel_vsec_tpmi | AMD 및 Intel 64비트 아키텍처 |
Intel TPMI SST 드라이버 | isst_tpmi | AMD 및 Intel 64비트 아키텍처 |
Intel TPMI UFS 드라이버 | intel-uncore-frequency-tpmi | AMD 및 Intel 64비트 아키텍처 |
Intel Uncore Frequency Common Module | Intel-uncore-frequency-common | AMD 및 Intel 64비트 아키텍처 |
Intel Uncore Frequency Limits 드라이버 | Intel-uncore-frequency | AMD 및 Intel 64비트 아키텍처 |
Intel Cryostat Thunderbolt force 전원 드라이버 | Intel-wmi-thunderbolt | AMD 및 Intel 64비트 아키텍처 |
Mellanox PMC 드라이버 | mlxbf-pmc | 64비트 ARM 아키텍처 |
intel-hid | AMD 및 Intel 64비트 아키텍처 | |
isst_tpmi_core | AMD 및 Intel 64비트 아키텍처 |
설명 | 이름 | 아키텍처로 제한 |
---|---|---|
AMD XCP 플랫폼 장치 | amdxcp | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Cryostat 실행 컨텍스트 | drm_exec | |
범위 하위 도움말 | drm_suballoc_helper | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
regmap-ram | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
regmap-raw-ram | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
regmap-ram | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
regmap-raw-ram | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
regmap-ram | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
regmap-raw-ram | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 | |
arm FF-A 인터페이스 드라이버 | FFA-module | 64비트 ARM 아키텍처 |
NVIDIA BlueField-3 GPIO Driver | gpio-mlxbf3 | 64비트 ARM 아키텍처 |
패스스루 장치를 위한 I/O 주소 공간 관리 | iommufd | |
CS42L43 핵심 드라이버 | cs42l43 | AMD 및 Intel 64비트 아키텍처 |
CS42L43 SoundWire Driver | cs42l43-sdw | AMD 및 Intel 64비트 아키텍처 |
MEI GSC Proxy | mei_gsc_proxy | AMD 및 Intel 64비트 아키텍처 |
pwrseq_emmc | 64비트 ARM 아키텍처 | |
pwrseq_simple | 64비트 ARM 아키텍처 | |
Synopsys DWC MSHC용 SDHCI 플랫폼 드라이버 | sdhci-of-dwcmshc | 64비트 ARM 아키텍처 |
arm_cspmu_module | 64비트 ARM 아키텍처 | |
NVIDIA pinctrl 드라이버 | pinctrl-mlxbf3 | 64비트 ARM 아키텍처 |
NXP i.MX93 전원 도메인 드라이버 | imx93-pd | 64비트 ARM 아키텍처 |
Intel RAPL TPMI 드라이버 | intel_rapl_tpmi | AMD 및 Intel 64비트 아키텍처 |
Mellanox BlueField 전원 드라이버 | pwr-mlxbf | 64비트 ARM 아키텍처 |
NXP i.MX93 src 드라이버 | imx93-src | 64비트 ARM 아키텍처 |
configfs를 통해 신뢰할 수 있는 보안 모듈 테스트 보고서 제공 | tsm | AMD 및 Intel 64비트 아키텍처 |
6.2. 업데이트된 드라이버 링크 복사링크가 클립보드에 복사되었습니다!
설명 | 이름 | 현재 버전 | 아키텍처로 제한 |
---|---|---|---|
Broadcom MegaRAID SAS 드라이버 | megaraid_sas | 07.727.03.00-rc1 | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Microchip Smart Family Controller 드라이버 | smartpqi | 2.1.24-046 | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
Emulex LightPulse Fibre Channel SCSI 드라이버 | lpfc | 0:14.2.0.16 | 64비트 ARM 아키텍처, IBM Power Systems, AMD 및 Intel 64비트 아키텍처 |
MPI3 스토리지 컨트롤러 장치 드라이버 | mpi3mr | 8.5.0.0.50 |
7장. 사용 가능한 BPF 기능 링크 복사링크가 클립보드에 복사되었습니다!
이 장에서는 Red Hat Enterprise Linux 9의 이 마이너 버전의 커널에서 사용할 수 있는 BPF(Berkeley Packet Filter) 기능의 전체 목록을 제공합니다. 테이블에는 다음과 같은 목록이 포함됩니다.
이 장에서는 bpftool feature
명령의 자동 생성된 출력이 포함되어 있습니다.
옵션 | 현재의 |
---|---|
unprivileged_bpf_disabled | 2 (권한 있는 사용자로 제한 된 BPF() syscall, 관리자가 변경할 수 있음) |
Cryostat 컴파일러 | 1 (활성화) |
Cryostat 컴파일러 강화 | 1 (권한 없는 사용자에 대해 사용 가능) |
Cryostat 컴파일러 kallsyms 내보내기 | 1 (root에 사용) |
권한이 없는 사용자의 메모리 제한 | 528482304 |
CONFIG_BPF | y |
CONFIG_BPF_SYSCALL | y |
CONFIG_HAVE_EBPF_JIT | y |
CONFIG_BPF_JIT | y |
CONFIG_BPF_JIT_ALWAYS_ON | y |
CONFIG_DEBUG_INFO_BTF | y |
CONFIG_DEBUG_INFO_BTF_MODULES | y |
CONFIG_CGROUPS | y |
CONFIG_CGROUP_BPF | y |
CONFIG_CGROUP_NET_CLASSID | y |
CONFIG_SOCK_CGROUP_DATA | y |
CONFIG_BPF_EVENTS | y |
CONFIG_KPROBE_EVENTS | y |
CONFIG_UPROBE_EVENTS | y |
CONFIG_TRACING | y |
CONFIG_FTRACE_SYSCALLS | y |
CONFIG_FUNCTION_ERROR_INJECTION | y |
CONFIG_BPF_KPROBE_OVERRIDE | n |
CONFIG_NET | y |
CONFIG_XDP_SOCKETS | y |
CONFIG_LWTUNNEL_BPF | y |
CONFIG_NET_ACT_BPF | m |
CONFIG_NET_CLS_BPF | m |
CONFIG_NET_CLS_ACT | y |
CONFIG_NET_SCH_INGRESS | m |
CONFIG_XFRM | y |
CONFIG_IP_ROUTE_CLASSID | y |
CONFIG_IPV6_SEG6_BPF | y |
CONFIG_BPF_LIRC_MODE2 | n |
CONFIG_BPF_STREAM_PARSER | y |
CONFIG_NETFILTER_XT_MATCH_BPF | m |
CONFIG_BPFILTER | n |
CONFIG_BPFILTER_UMH | n |
CONFIG_TEST_BPF | m |
CONFIG_HZ | 1000 |
bpf() syscall | 사용 가능 |
대규모 프로그램 크기 제한 | 사용 가능 |
바인딩된 루프 지원 | 사용 가능 |
ISA 확장 v2 | 사용 가능 |
ISA 확장 v3 | 사용 가능 |
프로그램 유형 | 사용 가능한 도우미 |
---|---|
socket_filter | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_perf_event_output, bpf_skb_load_bytes, bpf_get_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_kb_load_bytes_relative, bpf_get_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_spin_unlock, bpf_strtol, bpf_strtol, bpf_strtoul, bpf_map_pop_elem bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_probe_read_kernel_str bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_skc_to_tcp_request_sock bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_discard_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete, bpf_dynptr_delete |
kprobe | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_current_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_read_value, bpf_get_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pidtgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_query bpf_get_task_stack, bpf_copy_from_user, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_delete, bpf_get_current_task_delete, bpf_get_current_task_delete bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_get_get_attach_cookie, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
sched_cls | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_kb_delete_elem bpf_l3_csum_replace, bpf_l4_csum_replace, bpf_tail_call, bpf_clone_redirect, bpf_get_cgroup_classid, bpf_skb_vlan_push, bpf_skb_vlan_pop, bpf_skb_vlan_pop_pop, bpf_skb_get_tunnel_key, bpf_skb_set_tunnel_key, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_get_redirect_key bpf_skb_get_tunnel_opt, bpf_skb_set_tunnel_opt, bpf_skb_change_proto, bpf_skb_change_type, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_csum_update, bpf_set_hash_invalid, bpf_get_numa_node_id, bpf_skb_change_head, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_set_hash, bpf_skb_adjust_room, bpf_skb_get_xfrm_state, bpf_skb_load_bytes_relative, bpf_fib_lookup, bpf_skb_lookup bpf_skb_cgroup_id, bpf_get_cgroup_id, bpf_sk_ancestor_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_release, bpf_sk_lookup_tcp bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_spin_unlock, bpf_sk_fullsock, bpf_tcp_sock, bpf_skb_ecn_set_ce, bpf_get_listener_sock, bpf_skc_lookup_tcp, bpf_tcp_check_syncookie, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_tcp_gen_syncookie, bpf_tcp_gen_syncookie, bpf_strtol bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_current_ancestor_cgroup_id, bpf_get_current_sk_assign, bpf_probe_read_kernel_str bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_csum_level, bpf_sk_to_tcps, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn#159_btf, bpf_skb_cgroup_classid, bpf_redirect_neigh, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_redirect_peer, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_check_mtu, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_skb_set_tstamp, bpf_kptr_xchg, bpf_map_lookup_elem, bpf_skc_to_mptcp_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_tcp_raw_gen_syncookie_ipv4, bpf_tcp_raw_gen_syncookie_ipv6, bpf_tcp_raw_check_syncookie_ipv4, bpf_tcp_raw_check_syncookie_syncookie_ipv6, bpf_tcp_ktime_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv4, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_check_ipv4, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv_ipv6 bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
sched_act | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_kb_delete_elem bpf_l3_csum_replace, bpf_l4_csum_replace, bpf_tail_call, bpf_clone_redirect, bpf_get_cgroup_classid, bpf_skb_vlan_push, bpf_skb_vlan_pop, bpf_skb_vlan_pop_pop, bpf_skb_get_tunnel_key, bpf_skb_set_tunnel_key, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_get_redirect_key bpf_skb_get_tunnel_opt, bpf_skb_set_tunnel_opt, bpf_skb_change_proto, bpf_skb_change_type, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_csum_update, bpf_set_hash_invalid, bpf_get_numa_node_id, bpf_skb_change_head, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_set_hash, bpf_skb_adjust_room, bpf_skb_get_xfrm_state, bpf_skb_load_bytes_relative, bpf_fib_lookup, bpf_skb_lookup bpf_skb_cgroup_id, bpf_get_cgroup_id, bpf_sk_ancestor_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_release, bpf_sk_lookup_tcp bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_spin_unlock, bpf_sk_fullsock, bpf_tcp_sock, bpf_skb_ecn_set_ce, bpf_get_listener_sock, bpf_skc_lookup_tcp, bpf_tcp_check_syncookie, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_tcp_gen_syncookie, bpf_tcp_gen_syncookie, bpf_strtol bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_current_ancestor_cgroup_id, bpf_get_current_sk_assign, bpf_probe_read_kernel_str bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_csum_level, bpf_sk_to_tcps, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn#159_btf, bpf_skb_cgroup_classid, bpf_redirect_neigh, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_redirect_peer, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_check_mtu, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_skb_set_tstamp, bpf_kptr_xchg, bpf_map_lookup_elem, bpf_skc_to_mptcp_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_tcp_raw_gen_syncookie_ipv4, bpf_tcp_raw_gen_syncookie_ipv6, bpf_tcp_raw_check_syncookie_ipv4, bpf_tcp_raw_check_syncookie_syncookie_ipv6, bpf_tcp_ktime_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv4, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_check_ipv4, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv_ipv6 bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
tracepoint | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_current_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_read_value, bpf_get_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pidtgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_query bpf_get_task_stack, bpf_copy_from_user, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_delete, bpf_get_current_task_delete, bpf_get_current_task_delete bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_get_get_attach_cookie, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
xdp | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_redirect, bpf_perf_event_output, bpf_csum_diff, bpf_get_current_task, bpf_get_numa_node_id, bpf_xdp_adjust_head, bpf_redirect_map, bpf_xdp_adjust_map, bpf_xdp_djust_meta, bpf_get_current_task bpf_xdp_adjust_tail, bpf_fib_lookup, bpf_get_current_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_spin_unlock, bpf_skc_lookup_tcp, bpf_tcp_check_syncookie, bpf_strtol, bpf_strtol, bpf_strulto bpf_tcp_gen_syncookie, bpf_probe_read_user, bpf_probe_read_kernel_str, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_kc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn#159_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_task_btf, bpf_ktime_get_coarse_ns, bpf_check_mtu, bpf_for_each_map_elem, bpf_sn 192.0.2., bpf_get_task_btf bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_timer_cancel bpf_xdp_get_buff_len, bpf_xdp_load_bytes, bpf_xdp_store_bytes, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_tcp_raw_gen_syncookie_ipv4, bpf_tcp_raw_gen_syncookie_ipv6, bpf_tcp_raw_check_syncookie_ipv4, bpf_tcp_raw_check_syncookie_syncookie_ipv6, bpf_tcp_ktime_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv4, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv6, bpf_tcp_raw_check_ipv4, bpf_tcp_raw_ipv6, bpf_tcp_raw_ipv_ipv6 bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
perf_event | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_current_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_read_value, bpf_prog_read_value, bpf_get_get_stack, bpf_get_stack, bpf_probe_read_value bpf_get_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_spin_unlock, bpf_strtol, bpf_strtol, bpf_strtoul, bpf_map_pop_elem bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_jiffies64, bpf_read_branch_records, bpf_get_ns_current_pid_tgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_get_task_stack, bpf_copy_from_user, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_per_cpu_ptr, bpf_this_cpu_ptr bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_callback, bpf_timer_callback, bpf_timer_callback bpf_timer_cancel, bpf_get_func_ip, bpf_get_get_attach_cookie, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get bpf_cgrp_storage_delete |
cgroup_skb | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_perf_event_output, bpf_skb_load_bytes, bpf_get_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_kb_load_bytes_relative, bpf_skb_cgroup_id, bpf_get_cgroup_id, bpf_get_local_storage, bpf_skb_ancestor_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_get_local_storage, bpf_sk_lookup_tcp bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_sk_fullsock, bpf_tcp_sock, bpf_skb_ec_set_ce, bpf_get_listener_sock, bpf_skc_lookup_tcp, bpf_strtol, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_sk_cgroup_id, bpf_sk_ancestor_cgroup_id, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn#159_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn 0.0.0.0, bpf_timer_init, bpf_get_task_btf bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_strncmp, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_submit_dynptr, bpf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_ringbuf_discard_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_dynptr bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete, bpf_dynptr_delete |
cgroup_sock | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_pid_tgid, bpf_get_uid_gid, bpf_get_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_get_current_cgroup_id, bpf_get_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtol, bpf_sk_storage_get, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_user_str, bpf_probe_kernel, bpf_probe_kernel bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_submit, bpf_ringbuf_reserve bpf_ringbuf_discard, bpf_ringbuf_query, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_task_pt_regs, bpf_loop, bpf_timer_set_callback, bpf_timer_cancel bpf_strncmp, bpf_get_retval, bpf_set_retval, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
lwt_in | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_cgroup_classid, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_lwt_push_encap, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_push_elem, bpf_map_pop_elem bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_user bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_submit bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_task_pt_regs, bpf_skc_to_unix_ock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
lwt_out | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_cgroup_classid, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_map_peek_elem bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_str, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_reserve bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_ud6_sock, bpf_skc_to_tcp_sock bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn#159, bpf_get_current_task_btf bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_timer_cancel bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_dynptr bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get bpf_cgrp_storage_delete |
lwt_xmit | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_kb_delete_elem bpf_l3_csum_replace, bpf_l4_csum_replace, bpf_tail_call, bpf_clone_redirect, bpf_get_cgroup_classid, bpf_skb_get_tunnel_key, bpf_skb_set_unnn_key, bpf_tail_csum_key, bpf_skb_set_key bpf_redirect, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_get_tunnel_opt, bpf_skb_set_tunnel_opt, bpf_skb_set_tunnel_opt bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_csum_update, bpf_set_hash_invalid, bpf_get_numa_node_id, bpf_skb_change_head, bpf_lwt_push_encap, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_user bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_submit bpf_ringbuf_discard, bpf_ringbuf_query, bpf_c_csum_level, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_timewait_ock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_stf, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
sock_ops | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_setsockopt, bpf_sock_map_update, bpf_getsockopt, bpf_getsockopt, bpf_getsockopt, bpf_getsockopt, bpf_getsock_link_set bpf_sock_hash_update, bpf_get_current_cgroup_id, bpf_get_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_tcp_sock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_get_netns_cookie bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_sock bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_load_hdr_opt, bpf_reserve_hdr_opt, bpf_reserve_hdr_opt, bpf_sn#159_btf, bpf_load_hdr_opt bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn 0.0.0.0, bpf_timer_init, bpf_get_task_btf bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_strncmp, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_submit_dynptr, bpf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_ringbuf_discard_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_dynptr bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete, bpf_dynptr_delete |
sk_skb | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_kb_delete_elem bpf_tail_call, bpf_perf_event_output, bpf_skb_load_bytes, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_skb_change_head, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_sk_adjust_room, bpf_sk_redirect_map, bpf_sk_redirect_hash, bpf_get_current_cgroup_id, bpf_get_current_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_lock, bpf_spin_unlock, bpf_skc_lookup_tcp, bpf_strtol, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_str, bpf_probe_user_str, bpf_probe_kernel bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_reserve bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_ud6_sock, bpf_skc_to_tcp_sock bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn#159, bpf_get_current_task_btf bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_timer_cancel bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_dynptr bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get bpf_cgrp_storage_delete |
cgroup_device | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_pid_tgid, bpf_get_uid_gid, bpf_get_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_group_id, bpf_probe_read_user bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_ringbuf_btf, bpf_ringbuf_bt, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
sk_msg | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_pid_tgid, bpf_get_uid_gid, bpf_get_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_msg_redirect_map, bpf_get_cgroup_classid, bpf_get_current_task bpf_msg_apply_bytes, bpf_msg_cork_bytes, bpf_msg_pull_data, bpf_msg_redirect_hash, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_map_pop_elem, bpf_msg_redirect_data bpf_map_peek_elem, bpf_msg_data, bpf_msg_pop_data, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_query bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn#159, bpf_get_current_task_btf bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_timer_cancel bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_dynptr bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get bpf_cgrp_storage_delete |
raw_tracepoint | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_current_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_read_value, bpf_get_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pidtgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_query bpf_get_task_stack, bpf_copy_from_user, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_delete, bpf_get_current_task_delete, bpf_get_current_task_delete bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_task_pt_regs, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_lookup_elem, bpf_dynptr_from_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
cgroup_sock_addr | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_pid_tgid, bpf_get_uid_gid, bpf_get_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_setsockopt, bpf_getsockopt, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_sk_lookup_tcp, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_skc_lookup_tcp, bpf_skc_tcp, bpf_map_peek_elem bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_user_str, bpf_probe_read_str, bpf_probe_read_str, bpf_probe_read_str bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_submit, bpf_ringbuf_reserve bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_task_pt_regs, bpf_skc_to_unix_ock, bpf_loop, bpf_strncmp, bpf_get_retval, bpf_set_retval, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
lwt_seg6local | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_cgroup_classid, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_lwt_seg6_store_bytes, bpf_lwt_seg6_adjust_srh, bpf_lwt_seg6_srh bpf_get_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_spin_unlock, bpf_strtol, bpf_strtol, bpf_strtoul, bpf_map_pop_elem bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_probe_read_kernel_str bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_skc_to_tcp_request_sock bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_discard_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete, bpf_dynptr_delete |
lirc_mode2 | 지원되지 않음 |
sk_reuseport | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_skb_load_bytes, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_skb_load_bytes_relative, bpf_get_current_cgroup_id, bpf_sk_select_reuse_reuse, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbufreserve_dynpt_from_mem bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
flow_dissector | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_skb_load_bytes, bpf_get_current_task, bpf_get_get_numa_node_id, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_map_peek_elem bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_str, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_reserve bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_ud6_sock, bpf_skc_to_tcp_sock bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn#159, bpf_get_current_task_btf bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_timer_cancel bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_dynptr, bpf_ringbuf_dynptr bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get bpf_cgrp_storage_delete |
cgroup_sysctl | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_pid_tgid, bpf_get_uid_gid, bpf_get_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_sysctl_get_name, bpf_sysctl_get_current_value, bpf_sysctl_get_new_value, bpf_sysctl_set_new_value, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbufreserve_dynpt_from_mem bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
raw_tracepoint_writable | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_current_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_read_value, bpf_get_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pidtgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_query bpf_get_task_stack, bpf_copy_from_user, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_delete, bpf_get_current_task_delete, bpf_get_current_task_delete bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_task_pt_regs, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_lookup_elem, bpf_dynptr_from_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
cgroup_sockopt | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_pid_tgid, bpf_get_uid_gid, bpf_get_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_tcp_sock, bpf_strtol, bpf_strtol, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_user bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_reserve bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_task_pt_regs, bpf_loop, bpf_timer_set_callback, bpf_timer_cancel bpf_strncmp, bpf_get_retval, bpf_set_retval, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
tracing | |
struct_ops | |
ext | |
lsm | |
sk_lookup | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_perf_event_output, bpf_get_current_task, bpf_get_get_numa_node_id, bpf_get_current_cgroup_id, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_kernel, bpf_probe_read_user bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_sk_assign, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_reserve, bpf_ringbuf_reserve bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_stf, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
syscall | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_current_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_get_socket_cookie, bpf_perf_read_value, bpf_get_get_stack, bpf_get_get_stack, bpf_get_get_stack, bpf_get_get_stack bpf_get_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_spin_unlock, bpf_strtol, bpf_strtol, bpf_strtoul, bpf_map_pop_elem bpf_sk_storage_get, bpf_sk_storage_delete, bpf_send_signal, bpf_skb_output, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_str, bpf_probe_read_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_current_tgid, bpf_xdp_output, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_kc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_get_task_stack, bpf_get_task_stack, bpf_d_path, bpf_copy_from_user, bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_delete, bpf_get_current_task_btf, bpf_per_cpu_ptr bpf_sock_from_file, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_sys_bpf, bpf_btf_find_kind, bpf_sys_close, bpf_sys_close, bpf_timer_init, bpf_timer_call_call, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_skc_to_unix_sock, bpf_kallsyms_lookup_name, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_xdp_get_buff_len, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_map_lookup_to_tcp_site, bpf_sk_to_tcp_site bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
Netfilter | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_map_spin_lock, bpf_get_get_cgroup_id, bpf_map_push_elem bpf_spin_unlock, bpf_strtol, bpf_strtol, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_kernel_str, bpf_jiffies64, bpf_probe_read_user bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_discard, bpf_ringbuf_query bpf_sn Cryostat_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_sn Cryostat, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_strncmp, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_lookup_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
맵 유형 | Available |
---|---|
hash | 제공됨 |
array | 제공됨 |
prog_array | 제공됨 |
perf_event_array | 제공됨 |
percpu_hash | 제공됨 |
percpu_array | 제공됨 |
stack_trace | 제공됨 |
cgroup_array | 제공됨 |
lru_hash | 제공됨 |
lru_percpu_hash | 제공됨 |
lpm_trie | 제공됨 |
array_of_maps | 제공됨 |
hash_of_maps | 제공됨 |
devmap | 제공됨 |
sockmap | 제공됨 |
cpumap | 제공됨 |
xskmap | 제공됨 |
sockhash | 제공됨 |
cgroup_storage | 제공됨 |
reuseport_sockarray | 제공됨 |
percpu_cgroup_storage | 제공됨 |
대기열 | 제공됨 |
stack | 제공됨 |
sk_storage | 제공됨 |
devmap_hash | 제공됨 |
struct_ops | 제공됨 |
ringbuf | 제공됨 |
inode_storage | 제공됨 |
task_storage | 제공됨 |
bloom_filter | 제공됨 |
user_ringbuf | 제공됨 |
cgrp_storage | 제공됨 |
8장. 버그 수정 링크 복사링크가 클립보드에 복사되었습니다!
이 부분에서는 사용자에게 상당한 영향을 미치는 Red Hat Enterprise Linux 9.4에서 수정된 버그에 대해 설명합니다.
8.1. 설치 프로그램 및 이미지 생성 링크 복사링크가 클립보드에 복사되었습니다!
Anaconda에서 설치 대상 화면에 다중 경로 스토리지 장치의 WWID 식별자 표시
이전에는 Anaconda에서 다중 경로 스토리지 장치의 장치 번호, WWPN 또는 LUN과 같은 세부 정보를 표시하지 않았습니다. 결과적으로 설치 대상 > 디스크 추가 화면에서 올바른 설치 대상 을 선택하기 어려웠습니다. 이번 업데이트를 통해 Anaconda에 다중 경로 스토리지 장치의 WWID 식별자가 표시됩니다. 결과적으로 고급 스토리지 장치 화면에서 필요한 설치 대상을 쉽게 식별하고 선택할 수 있습니다.
Jira:RHEL-11384[1]
이제 설치 프로그램에서 Kickstart 파일에서 추가 시간대 정의 허용
Anaconda는 시간대 선택을 검증하는 다른 더 제한적인 방법으로 전환되었습니다. 이로 인해 일본과 같은 일부 시간대 정의가 이전 버전에서 수락되어도 더 이상 유효하지 않습니다. 이러한 정의가 포함된 기존 Kickstart 파일을 업데이트해야 했습니다. 그렇지 않으면 Americas/New_York 시간대
가 기본값으로 설정됩니다.
유효한 시간대 목록은 이전에 pytz
.common_timezones의 pytz.common_timezones
에서 가져온 것입니다. 이번 업데이트에서는 common_timezones
목록의 상위 세트인 pytz.all_timezones
를 사용하도록 시간대
Kickstart 명령의 유효성 검사 설정을 변경하고 훨씬 더 많은 시간대를 지정할 수 있습니다. 이러한 변경으로 인해 Red Hat Enterprise Linux 6에 대해 만든 이전 Kickstart 파일은 여전히 유효한 시간대를 지정할 수 있습니다.
참고: 이 변경은 timezone
Kickstart 명령에만 적용됩니다. 그래픽 및 텍스트 기반 대화형 인터페이스에서 시간대 선택 시간은 변경되지 않습니다. 유효한 시간대를 선택할 수 있는 Red Hat Enterprise Linux 9용 기존 Kickstart 파일에는 업데이트가 필요하지 않습니다.
Jira:RHEL-13150[1]
이제 설치 프로그램에서 여러 포트 및 BOOTIF 옵션으로 본딩 장치를 올바르게 생성
이전에는 BOOTIF
부팅 옵션과 함께 여러 포트가 있는 본딩 네트워크 장치를 사용하여 설치를 부팅할 때 설치 프로그램에서 잘못된 연결 프로필을 생성했습니다. 결과적으로 BOOTIF 옵션에서 사용하는 장치는 포트 중 하나로 구성된 경우에도 본딩 장치에 추가되지 않았습니다.
이번 업데이트를 통해 이제 BOOTIF
부팅 옵션을 사용할 때 설치 프로그램에서 initramfs
에서 프로필을 올바르게 생성합니다. 결과적으로 지정된 모든 포트가 설치된 시스템의 본딩 장치에 추가됩니다.
설치 이미지를 부팅하지 못하는 경우 Anaconda에서 잘못된 오류 메시지 교체
이전 버전에서는 설치 프로그램이 설치 이미지를 부팅하지 못한 경우(예: inst.
또는 stage2
inst.repo
에 지정된 stage2의 누락된 소스로 인해 Anaconda에 다음과 같은 잘못된 오류 메시지가 표시되었습니다.
/run/anaconda/initrd_errors.txt: No such file or directory
/run/anaconda/initrd_errors.txt: No such file or directory
이번 업데이트를 통해 Anaconda는 혼동을 최소화하기 위해 적절한 경고 메시지를 표시합니다.
xfsprogs
의 새 버전이 더 이상 /boot
의 크기를 축소하지 않음
이전에는 RHEL 9.3에서 5.19 버전이 있는 xfsprogs
패키지로 인해 /boot
크기가 축소되었습니다. 그 결과 RHEL 9.2 버전과 비교하면 /boot
파티션에서 사용 가능한 공간이 변경되었습니다. 이번 수정을 통해 500MiB가 아닌 모든 이미지의 /boot
파티션을 600MiB로 늘리며 /boot
파티션은 더 이상 공간 문제의 영향을 받지 않습니다.
8.2. 보안 링크 복사링크가 클립보드에 복사되었습니다!
Libreswan은 IPv6 SAN 확장 허용
이전에는 IPv6 주소와 함께 SAN( subjectAltName) 확장이 포함된 인증서로 인증서 기반 인증을 설정할 때 IPsec 연결이 실패했습니다. 이번 업데이트를 통해 pluto
데몬이 IPv6 SAN 및 IPv4를 수락하도록 수정되었습니다. 결과적으로 인증서에 ID로 포함된 IPv6 주소를 사용하여 IPsec 연결이 올바르게 설정됩니다.
ip vrf
를 사용하여 가상 라우팅을 관리하는 규칙이 SELinux 정책에 추가됩니다.
ip vrf
명령을 사용하여 다른 네트워크 서비스의 가상 라우팅을 관리할 수 있습니다. 이전에는 selinux-policy
에 이 사용을 지원하는 규칙이 포함되어 있지 않았습니다. 이번 업데이트를 통해 SELinux 정책 규칙을 사용하면 ip
도메인에서 httpd
,sshd
, named
도메인으로 명시적으로 전환할 수 있습니다. 이러한 전환은 ip
명령에서 setexeccon
라이브러리 호출을 사용하는 경우 적용됩니다.
Jira:RHEL-14246[1]
unconfined_login
이 off
로 설정된 경우 SELinux 정책에서 제한되지 않은 사용자에 대한 SSH 로그인을 거부합니다.
이전에는 unconfined_login
부울이 off
로 설정된 경우 SELinux 정책에 제한되지 않은 사용자를 거부하는 규칙이 없었습니다. 결과적으로 unconfined_login
을 off
로 설정하면 사용자가 SSHD를 사용하여 제한되지 않은 도메인에 로그인할 수 있었습니다. 이번 업데이트에서는 SELinux 정책에 규칙이 추가되어 unconfined_login
이 꺼지면
사용자가 sshd
를 통해 unconfined로 로그인할 수 없습니다.
SELinux 정책을 통해 rsyslogd
는 제한된 명령을 실행할 수 있습니다.
이전에는 SELinux 정책에 rsyslogd
데몬이 systemctl
과 같은 SELinux 제한 명령을 실행할 수 있는 규칙이 누락되었습니다. 결과적으로 omprog
지시문의 인수로 명령이 실행되지 않았습니다. 이번 업데이트에서는 SELinux 정책에 규칙을 추가하여 omprog
의 인수로 실행되는 /usr/libexec/rsyslog
디렉터리의 실행 파일이 syslogd_unconfined_script_t
unconfined 도메인에 있습니다. 결과적으로 omprog
finish 인수로 명령이 성공적으로 실행됩니다.
kmod
는 SELinux MLS 정책에서 실행
이전에는 SELinux에서 /var/run/tmpfiles.d/static-nodes.conf
파일에 개인 유형을 할당하지 않았습니다. 결과적으로 kmod
유틸리티는 SELinux MLS(다중 수준 보안) 정책에서 작동하지 않을 수 있습니다. 이번 업데이트에서는 /var/run/tmpfiles.d/static-nodes.conf
의 kmod_var_run_t
레이블이 SELinux 정책에 추가되어 kmod
가 SELinux MLS 정책에서 성공적으로 실행됩니다.
selinux-autorelabel
은 SELinux MLS 정책에서 실행
이전에는 SELinux 정책에서 /usr/libexec/selinux/selinux-autorelabel
유틸리티에 개인 유형을 할당하지 않았습니다. 결과적으로 selinux-autorelabel.service
가 SELinux MLS(Multi-level security) 정책에서 작동하지 않을 수 있습니다. 이번 업데이트에서는 /usr/libexec/selinux/selinux-autorelabel
에 semanage_exec_t
레이블을 추가하고 결과적으로 SELinux MLS 정책에서 selinux-autorelabel.service
가 성공적으로 실행됩니다.
/bin = /usr/bin
file context equivalency rule added to SELinux policy
이전에는 SELinux 정책에 /bin = /usr/bin
파일 컨텍스트 equivalency 규칙이 포함되지 않았습니다. 그 결과 restorecond
데몬이 올바르게 작동하지 않았습니다. 이번 업데이트에서는 정책에 누락된 규칙이 추가되어 결과적으로 restorecond
가 SELinux 강제 모드에서 올바르게 작동합니다.
- 중요
-
이 변경 사항은
/bin
의 패턴에 대해 파일 컨텍스트 사양을 사용하는 모든 로컬 정책 모듈을 재정의합니다.
SELinux 정책에는 추가 서비스 및 애플리케이션에 대한 규칙이 포함되어 있습니다.
이 버전의 selinux-policy
패키지에는 추가 규칙이 포함되어 있습니다. 특히 sysadm_r
역할의 사용자는 다음 명령을 실행할 수 있습니다.
-
sudo traceroute
(RHEL-14077) -
sudo tcpdump
(RHEL-15432)
SELinux 정책에서 QAT 펌웨어에 대한 권한 추가
이전에는 Intel VT-d
커널 옵션이 활성화된 Intel QuickAssist Technology(QAT)를 업데이트할 때 SELinux 권한이 누락되었습니다. 이번 업데이트에서는 qat
서비스에 대한 추가 권한이 추가되었습니다. 결과적으로 QAT를 올바르게 업데이트할 수 있습니다.
Jira:RHEL-19051[1]
rsyslog는 omprog
를 통해 권한 있는 명령을 실행할 수 있습니다
이전에는 Rsyslog의 omprog
모듈에서는 특정 외부 프로그램, 특히 권한이 있는 명령이 포함된 프로그램을 실행할 수 없었습니다. 그 결과 omprog
를 통해 권한 있는 명령을 포함하는 스크립트 사용이 제한되었습니다. 이번 업데이트를 통해 SELinux 정책이 조정되었습니다. 스크립트를 /usr/libexec/rsyslog
디렉토리에 배치하여 조정된 SELinux 정책과의 호환성을 확인합니다. 결과적으로 Rsyslog는 이제 omprog
모듈을 통해 권한 있는 명령이 있는 스크립트를 실행할 수 있습니다.
semanage fcontext
명령에서 더 이상 로컬 수정 순서를 다시 정렬하지 않음
semanage fcontext -l -C
명령은 file_contexts.local
파일에 저장된 로컬 파일 컨텍스트 수정 사항을 나열합니다. restorecon
유틸리티는 file_contexts.local
의 항목을 가장 최근 항목에서 가장 오래된 항목으로 처리합니다. 이전에는 semanage fcontext -l -C
가 항목을 잘못된 순서로 나열했습니다. 이러한 처리 순서와 나열 순서가 일치하지 않아 SELinux 규칙을 관리할 때 문제가 발생했습니다. 이번 업데이트를 통해 semanage fcontext -l -C
는 가장 오래된 것부터 최신까지 올바른 순서로 규칙을 표시합니다.
Jira:RHEL-25263[1]
오프셋이 있는 CardOS 5.3 카드는 더 이상 OpenSC에서 문제가 발생하지 않음
이전에는 단일 PKCS #15 파일의 다른 오프셋에 인증서를 저장한 일부 CardOS 5.3 카드에서 파일 캐싱이 제대로 작동하지 않았습니다. 이는 파일 캐싱이 파일의 오프셋 부분을 무시했기 때문에 캐시를 반복적으로 재정의하고 파일 캐시에서 유효하지 않은 데이터를 읽기 때문에 발생했습니다. 이 문제는 업스트림에서 확인 및 수정되었으며 이 업데이트 후 CardOS 5.3 카드가 파일 캐시에서 올바르게 작동합니다.
Jira:RHEL-4079[1]
8.3. 서브스크립션 관리 링크 복사링크가 클립보드에 복사되었습니다!
subscription-manager
가 더 이상 터미널에서 중요하지 않은 텍스트를 유지하지 않음
RHEL 9.1부터 subscription-manager
는 모든 작업을 처리하는 동안 진행 정보를 표시합니다. 이전 버전에서는 일부 언어(일반적으로 라틴어 이외의 언어)의 경우 작업이 완료된 후 진행률 메시지가 정리되지 않았습니다. 이번 업데이트를 통해 작업이 완료되면 모든 메시지가 올바르게 정리됩니다.
이전에 진행 중인 메시지를 비활성화한 경우 다음 명령을 입력하여 다시 활성화할 수 있습니다.
subscription-manager config --rhsm.progress_messages=1
# subscription-manager config --rhsm.progress_messages=1
Bugzilla:2136694[1]
8.4. 소프트웨어 관리 링크 복사링크가 클립보드에 복사되었습니다!
이제 librhsm
이 컨테이너에서 실행되는 경우 librhsm
라이브러리에서 올바른 /etc/rhsm-host
접두사를 반환합니다.
이 컨테이너에서 실행되는 경우 librhsm 라이브러리는 librhsm
/etc/rhsm
에서 /etc/rhsm-host
경로로 경로 접두사를 다시 작성합니다. 이전 버전에서는 librhsm
에서 문자열 조작 오류로 인해 잘못된 /etc/rhsm-host
접두사를 반환했습니다. 이번 업데이트를 통해 문제가 해결되었으며 librhsm
라이브러리에서 올바른 /etc/rhsm-host
접두사를 반환합니다.
systemd
에서 librepo
에서 생성한 /run/user/0
디렉토리를 올바르게 관리합니다.
이전에는 root에 로그인하기 전에 Insights 클라이언트에서 librepo
함수를 호출한 경우 잘못된 SELinux 컨텍스트 유형으로 /run/user/0
디렉터리를 생성할 수 있었습니다. 이로 인해 root에서 로그아웃한 후 systemd
가 디렉토리를 정리하지 못했습니다.
이번 업데이트를 통해 librepo
패키지는 이제 SELinux 정책에 정의된 기본 파일 시스템 레이블 지정 규칙에 따라 기본 생성 유형을 설정합니다. 결과적으로 systemd
는 이제 librepo
에서 생성된 /run/user/0
디렉터리를 올바르게 관리합니다.
systemd
에서 libdnf
에서 생성한 /run/user/0
디렉토리를 올바르게 관리
이전 버전에서는 root에 로그인하기 전에 libdnf
함수가 Insights 클라이언트에서 호출된 경우 잘못된 SELinux 컨텍스트 유형으로 /run/user/0
디렉터리를 생성할 수 있었습니다. 이로 인해 root에서 로그아웃한 후 systemd
가 디렉토리를 정리하지 못했습니다.
이번 업데이트를 통해 libdnf
패키지는 이제 SELinux 정책에 정의된 기본 파일 시스템 레이블 지정 규칙에 따라 기본 생성 유형을 설정합니다. 결과적으로 systemd
는 이제 libdnf
에서 생성한 /run/user/0
디렉터리를 올바르게 관리합니다.
dnf needs-restarting --reboothint
명령으로 CPU 마이크로 코드를 업데이트하기 위해 재부팅할 것을 권장합니다.
CPU 마이크로 코드를 완전히 업데이트하려면 시스템을 재부팅해야 합니다. 이전 버전에서는 업데이트된 CPU 마이크로 코드가 포함된 microcode_ctl
패키지를 설치할 때 dnf needs-restarting --reboothint
명령이 재부팅을 권장하지 않았습니다. 이번 업데이트를 통해 문제가 해결되었으며 dnf needs-restarting --reboothint
를 사용하여 CPU 마이크로 코드를 업데이트할 것을 권장합니다.
8.5. 쉘 및 명령행 툴 링크 복사링크가 클립보드에 복사되었습니다!
이제 메모리별로 프로세스를 정렬할 때 top -u
명령이 하나 이상의 프로세스를 표시함
이전 버전에서는 -u < user
> 매개변수를 사용하여 top
명령을 실행할 때 사용자가
명령을 실행하는 것과 다른 경우 M
키를 눌러 메모리별로 프로세스를 정렬할 때 모든 프로세스가 사라졌습니다. 이번 업데이트를 통해 메모리별로 프로세스를 정렬할 때 top
명령이 하나 이상의 프로세스를 표시합니다.
커서의 위치를 유지하기 위해 모든 프로세스가 표시되지 않습니다. 결과를 스크롤하여 나머지 프로세스를 표시할 수 있습니다.
Rear는 BIOS와 UEFI 부트 로더가 모두 설치되어있는 경우 BIOS 부트 로더의 존재를 결정합니다.
이전에는 하이브리드 부트 로더 설정 (UEFI
및 BIOS
)에서 UEFI
를 사용하여 부팅 할 때 Relax-and-Recover (ReaR)는 BIOS
부트 로더가 아닌 UEFI
부트 로더 만 복원했습니다. 이로 인해 BIOS 부팅 파티션이지만 BIOS 부트 로더가 아닌 GUID 파티션 테이블
(GPT
)이 있는 시스템이 생성됩니다. 이 경우 ReaR은 복구 이미지를 생성하지 못했습니다. rear mkbackup
또는 rear mkrescue
명령을 사용하여 백업 또는 복구 이미지를 생성하려고 하면 다음 오류 메시지와 함께 실패합니다.
ERROR: Cannot autodetect what is used as boot loader, see default.conf about 'BOOTLOADER'.
ERROR: Cannot autodetect what is used as boot loader, see default.conf about 'BOOTLOADER'.
이번 업데이트를 통해 ReaR은 UEFI
및
부트 로더의 존재를 확인하고 복원한 후 BIOS
GPT
의 BIOS
부팅 파티션이 있는 시스템의 BIOS 부트 로더가 없으면 실패하지 않습니다. 결과적으로 하이브리드 UEFI
및 BIOS
부트 로더 설정이 있는 시스템을 여러 번 백업 및 복구할 수 있습니다.
Jira:RHEL-16864[1]
Rear는 더 이상 복구 중에 logbsize
,sunit
및 swidth
마운트 옵션을 사용하지 않음
이전 버전에서는 MKFS_XFS_OPTIONS
설정 설정을 사용하여 원래 파일과 다른 매개변수로 XFS
파일 시스템을 복원할 때 Relax-and-Recover(ReaR)는 원래 파일 시스템에 적용 가능한 마운트 옵션으로 이 파일 시스템을 마운트했습니다. 그러나 복원된 파일 시스템에는 적용되지 않습니다. 그 결과 ReaR이 마운트
명령을 실행한 경우 다음과 같은 오류 메시지와 함께 디스크 레이아웃 재생성이 실패했습니다.
wrong fs type, bad option, bad superblock on and missing codepage or helper program, or other error.
wrong fs type, bad option, bad superblock on and missing codepage or helper program, or other error.
커널 로그는 다음 메시지 중 하나를 표시합니다.
logbuf size must be greater than or equal to log stripe size
logbuf size must be greater than or equal to log stripe size
alignment check failed: sunit/swidth vs. agsize
alignment check failed: sunit/swidth vs. agsize
이번 업데이트를 통해 ReaR은 다시 생성된 XFS
파일 시스템을 마운트할 때 logbsize
,sunit
및 swidth
마운트 옵션을 사용하지 않습니다. 결과적으로 MKFS_XFS_OPTIONS
구성 설정을 사용하면 디스크 레이아웃 재생성이 성공합니다.
Jira:RHEL-10478[1]
씬 풀 메타데이터 크기가 작은 시스템에서 복구가 더 이상 실패하지 않음
이전에는 씬 풀이 있는 LVM 볼륨 그룹의 레이아웃을 저장할 때 ReaR에서 풀 메타데이터 볼륨의 크기를 저장하지 않았습니다. 복구 중에 ReaR은 시스템이 기본이 아닌 풀 메타데이터 크기를 사용한 경우에도 기본 크기로 풀을 다시 생성합니다.
결과적으로 원래 풀 메타데이터 크기가 기본 크기보다 작고 볼륨 그룹에서 사용 가능한 공간을 사용할 수 없는 경우 다음 예와 유사한 로그의 메시지와 함께 시스템 복구 중 레이아웃 재생성에 실패했습니다.
Insufficient free space: 230210 extents needed, but only 230026 available
Insufficient free space: 230210 extents needed, but only 230026 available
또는
Volume group "vg" has insufficient free space (16219 extents): 16226 required.
Volume group "vg" has insufficient free space (16219 extents): 16226 required.
이번 업데이트를 통해 복구된 시스템에는 원래 시스템과 동일한 크기의 메타데이터 볼륨이 있습니다. 결과적으로 작은 씬 풀 메타데이터가 있고 볼륨 그룹에서 사용 가능한 추가 공간이 없는 시스템 복구가 성공적으로 완료됩니다.
Rear는 이제 복구 시스템 및 복구 시스템에서 NetBackup 명령의 bprestore
명령의 로그를 보존합니다.
이전 버전에서는 NetBackup 통합 ( Cryostat=NBU
)을 사용할 때 ReaR은 복구 중에 bprestore
명령의 로그를 종료 시 삭제된 디렉터리에 추가했습니다. 또한 ReaR은 복구된 시스템의 /usr/openv/netbackup/logs/bprestore/
디렉터리에 의해 생성된 추가 로그를 저장하지 않았습니다.
결과적으로 복구 중에 bprestore
명령이 실패한 경우 rear recover
명령을 -d
또는 -D
옵션을 사용하여 실행하지 않으면 로그가 삭제되었습니다. 또한 복구가 성공적으로 완료되면 /usr/openv/netbackup/logs/bprestore/
디렉터리에 있는 로그가 재부팅 후 손실되어 검사할 수 없었습니다.
이번 업데이트를 통해 ReaR은 복구 시스템이 재부팅될 때까지 복구 명령이 완료된 후 복구 시스템의
디렉터리에 있는 /var/lib/rear
/restorebprestore
명령의 로그를 유지합니다. 시스템이 복구되면 /usr/openv/netbackup/logs/bprestore/
의 모든 로그가 /var/log/rear/restore
디렉터리에 복사되고 추가 검토 시 /var/lib/rear/restore
의 로그가 필요합니다.
구성 파일에 TMPDIR
변수가 설정된 경우 복구 중에 Rear가 더 이상 실패하지 않음
이전에는 ReaR 기본 구성 파일 /usr/share/rear/conf/default.conf
에 다음 지침이 포함되었습니다.
TMPDIR
변수에 TMPDIR
변수에 지정된 디렉터리가 복구 이미지에 없는 경우 올바르지 않은 경우 위에 언급된 지침이 올바르게 작동하지 않았습니다.
결과적으로 복구 이미지를 부팅했을 때 /etc/rear/local.conf
파일에서 TMPDIR
을 설정하고 내보내면 다음과 같은 오류가 발생했습니다.
mktemp: failed to create file via template '/prefix/for/rear/working/directory/tmp.XXXXXXXXXX': No such file or directory cp: missing destination file operand after '/etc/rear/mappings/mac' Try 'cp --help' for more information. No network interface mapping is specified in /etc/rear/mappings/mac
mktemp: failed to create file via template '/prefix/for/rear/working/directory/tmp.XXXXXXXXXX': No such file or directory
cp: missing destination file operand after '/etc/rear/mappings/mac'
Try 'cp --help' for more information.
No network interface mapping is specified in /etc/rear/mappings/mac
또는 다음 오류가 발생하고 나중에 취소, 후면 복구
실행 시:
ERROR: Could not create build area
ERROR: Could not create build area
이번 업데이트를 통해 ReaR은 복구 환경에서 TMPDIR
변수를 지웁니다. 또한 Rear는 변수가 /etc/rear/local.conf
에 설정된 시기를 감지하고 변수가 설정된 경우 경고를 출력합니다. /usr/share/rear/conf/default.conf
의 주석이 /etc/rear/local.conf
에서 설정하는 대신 rear
를 실행하기 전에 환경에서 TMPDIR
을 설정하고 내보내도록 지시하도록 변경되었습니다.
이제 export TMPDIR=…
명령이 /etc/rear/local.conf
에 사용된 경우 ReaR은 다음 경고를 출력합니다.
Warning: Setting TMPDIR in a configuration file is deprecated. To specify a working area directory prefix, export TMPDIR before executing 'rear'
Warning: Setting TMPDIR in a configuration file is deprecated. To specify a working area directory prefix, export TMPDIR before executing 'rear'
결과적으로 설명된 구성에서 복구에 성공합니다.
/etc/rear/local.conf
와 같은 구성 파일에서 TMPDIR
을 설정하면 더 이상 사용되지 않으며 향후 릴리스에서 기능이 제거됩니다. 대신 ReaR을 호출하기 전에 /etc/rear/local.conf
에서 이러한 설정을 제거하고 환경에서 TMPDIR
을 설정 및 내보내는 것이 좋습니다.
8.6. 네트워킹 링크 복사링크가 클립보드에 복사되었습니다!
wwan_hwsim
이 kernel-modules-internal
패키지에 있습니다.
wwan_hwsim
커널 모듈은 W Cryostat(무선 영역 네트워크) 장치를 사용하는 다양한 네트워킹 시나리오를 시뮬레이션하고 테스트하기 위한 프레임워크를 제공합니다. 이전에는 wwan_hwsim
이 kernel-modules-extra
패키지의 일부였습니다. 그러나 이 릴리스에서는 다른 유사한 지향 유틸리티가 포함된 kernel-modules-internal
패키지로 이동합니다. PCI 마케일의 기능은 여전히 기술 프리뷰입니다.
Jira:RHEL-24618[1]
이제 xdp-loader 기능
명령이 예상대로 작동합니다.
xdp-loader
유틸리티는 이전 버전의 libbpf
에 대해 컴파일되었습니다. 그 결과 xdp-loader 기능이
오류와 함께 실패했습니다.
Cannot display features, because xdp-loader was compiled against an old version of libbpf without support for querying features.
Cannot display features, because xdp-loader was compiled against an old version of libbpf without support for querying features.
이제 유틸리티가 올바른 libbpf
버전에 대해 컴파일됩니다. 결과적으로 이제 명령이 예상대로 작동합니다.
DMFS
모드에서 Mellanox ConnectX-5
어댑터 작동
이전 버전에서는 이더넷 스위치 장치 드라이버 모델(switchdev
) 모드를 사용하는 동안 ConnectX-5
어댑터의DMFS
(Device managed flow steering) 모드에서 mlx5
드라이버가 실패했습니다. 결과적으로 다음 오류 메시지가 표시되었습니다.
mlx5_core 0000:5e:00.0: mlx5_cmd_out_err:780:(pid 980895): DELETE_FLOW_TABLE_ENTRY(0x938) op_mod(0x0) failed, status bad resource(0x5), syndrome (0xabe70a), err(-22)
mlx5_core 0000:5e:00.0: mlx5_cmd_out_err:780:(pid 980895): DELETE_FLOW_TABLE_ENTRY(0x938) op_mod(0x0) failed, status bad resource(0x5), syndrome (0xabe70a), err(-22)
결과적으로 ConnectX-5
어댑터의 펌웨어 버전을 16.35.3006 이상으로 업데이트하면 오류 메시지가 표시되지 않습니다.
Jira:RHEL-9897[1]
8.7. 커널 링크 복사링크가 클립보드에 복사되었습니다!
충돌
은 버전 8.0.4로 재기반
크래시
유틸리티는 여러 버그 수정을 제공하는 버전 8.0.4로 업그레이드되었습니다. 주요 복구는 다음과 같습니다.
- 커널 패닉 중에 일시 중지되지 않은 CPU가 중지되지 않은 경우 세그먼트 오류를 수정했습니다.
-
panic_on_oops
커널 매개변수가 비활성화된 경우 심각한 오류로 인해 커널이 패닉되지 않았습니다. -
크래시
유틸리티에서CONFIG_SLAB_FREELIST_HARDENED=y
구성 옵션으로 컴파일된 커널의 해시된 자유 목록 포인터를 올바르게 확인하지 못했습니다. 커널 모듈 메모리 레이아웃 용어의 변경 변경으로
module_layout
을module_memory
로 교체하여크래시
유틸리티의 메모리 관련 측면을 보다 효과적으로 나타냅니다. 이 변경이 없으면크래시
가 다음과 같은 오류 메시지와 함께 세션을 시작할 수 없습니다.crash: invalid structure member offset: module_core_size FILE: kernel.c LINE: 3787 FUNCTION: module_init()
crash: invalid structure member offset: module_core_size FILE: kernel.c LINE: 3787 FUNCTION: module_init()
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
필요한 경우 tuna
시작 GUI
이전에는 하위 명령 없이 tuna
유틸리티를 실행한 경우 GUI가 시작됩니다. 이 동작은 디스플레이가 있는 경우 바람직합니다. 반대의 경우 디스플레이가 없는 시스템의 tuna
가 정상적으로 종료되지 않습니다. 이번 업데이트를 통해 tuna
는 디스플레이가 있는지 여부를 감지하고 GUI가 그에 따라 시작되거나 시작되지 않습니다.
Jira:RHEL-8859[1]
Intel TPM 칩이 올바르게 감지됨
이전에는 AMD Trusted Platform Module (TPM) 칩에 대한 버그 수정의 부작용도 Intel TPM 칩에 영향을 미쳤습니다. 결과적으로 RHEL은 특정 Intel TPM 칩을 감지하지 못했습니다.
이번 업데이트를 통해 AMD TPM 버그 수정이 수정되었습니다. 결과적으로 RHEL은 이제 Intel TPM 칩을 올바르게 감지합니다.
Jira:RHEL-18985[1]
VMD가 활성화된 경우 RHEL에서 NVMe 디스크를 인식하지 못했습니다
드라이버를 재설정하거나 다시 연결할 때 이전에 VMI(볼륨 관리 장치) 도메인이 소프트 재설정되지 않았습니다. 결과적으로 하드웨어가 장치를 올바르게 감지하고 열거할 수 없었습니다. 이번 업데이트를 통해 VMD가 활성화된 운영 체제는 서버를 재설정하거나 VM 머신으로 작업할 때 NVMe 디스크를 올바르게 인식합니다.
Bugzilla:2128610[1]
8.8. 파일 시스템 및 스토리지 링크 복사링크가 클립보드에 복사되었습니다!
multipathd
이제 미해결 I/O가 있는 장치를 성공적으로 제거함
이전에는 multipathd
명령에서 장치를 제거하기 전에 queue_if_no_path
매개변수를 비활성화하지 않았습니다. 이는 파티션 장치가 아닌 다중 경로 장치 자체에 대해 미해결 I/O가 있는 경우에만 가능했습니다. 그 결과 multipathd
가 중단되었으며 더 이상 다중 경로 장치를 유지 관리할 수 없었습니다. 이번 업데이트를 통해 multipathd
는 multipath -F
, multipath-f <device> , multipath
d remove map 또는
을 비활성화합니다. 결과적으로 multipathd remove
map과 같은 remove 명령을 실행하기 전에 큐레이션multipathd
는 이제 미해결 I/O가 있는 장치를 성공적으로 제거합니다.
Jira:RHEL-4998[1]
no_read_workqueue
,no_write_workqueue
, dm-crypt
및 dm-verity
장치의 try_verify_in_taskle
옵션이 일시적으로 비활성화되어 있습니다.
이전에는 try_verify_in_tasklet
옵션을 사용하여 생성된 no_read_workqueue
옵션과 no_write_workqueue
옵션과 dm-verity
장치를 사용하여 생성된 dm-crypt
장치로 인해 메모리 손상이 발생했습니다. 그 결과 임의의 커널 메모리가 손상되어 시스템 문제가 발생했습니다. 이번 업데이트를 통해 이러한 옵션은 일시적으로 비활성화됩니다. 이 수정으로 인해 dm-verity
및 dm-crypt
가 일부 워크로드에서 더 느려질 수 있습니다.
Jira:RHEL-23572[1]
이제 multipathd에서 장치가 I/O를 잘못 대기하고 있는지 확인합니다.
이전에는 다음 조건에서 다중 경로 장치가 실패하도록 구성된 경우에도 I/O 대기열을 다시 시작했습니다.
-
multipath 장치는
queue_if_no_paths
매개변수를 여러 재시도로 설정하여 구성되었습니다. - 경로 장치가 작동하지 않고 I/O를 대기열에 추가하지 않은 다중 경로 장치에서 제거되었습니다.
이번 업데이트를 통해 이 문제가 해결되었습니다. 결과적으로 대기열이 비활성화되고 사용 가능한 경로가 없는 동안 다중 경로 장치가 더 이상 I/O를 다시 시작하지 않습니다.
Jira:RHEL-17234[1]
nvmf_log_connect_error
에서 중복 항목 제거
이전 버전에서는 중복 커밋 병합 오류로 인해 nvmf_log_connect_error
커널 함수에서 로그 메시지가 반복되었습니다. 그 결과 커널이 패브릭 연결NVMe(Non-volatile Memory Express) 장치에 연결할 수 없는 경우 Connect 명령에 실패한
메시지가 두 번 표시되었습니다. 이번 업데이트를 통해 이제 중복 로그 메시지가 커널에서 제거되어 각 오류에 대해 단일 로그 메시지만 사용할 수 있습니다.
Jira:RHEL-21545[1]
네임스페이스가 추가 및 제거될 때 커널이 더 이상 충돌하지 않음
이전 버전에서는 NVMe 네임스페이스가 빠르게 추가 및 제거되면 네임스페이스를 검색하는 데 사용되는 연속 명령 사이에 네임스페이스가 사라졌습니다. 특정 경우 스토리지 배열에서 잘못된 네임스페이스
오류를 반환하지 않고 대신 0으로 채워진 버퍼를 반환했습니다. 그 결과 분할-by-zero
오류로 인해 커널이 충돌했습니다. 이번 업데이트를 통해 커널은 스토리지에 발행된 두 Identify 네임스페이스 데이터 구조에 대한 응답의 데이터를 검증합니다. 결과적으로 커널이 더 이상 충돌하지 않습니다.
Jira:RHEL-14751[1]
이제 데이터 장치의 새로 할당된 섹션이 올바르게 정렬됩니다.
이전에는 Stratis 풀이 확장되면 풀의 새 리전을 할당할 수 있었습니다. 그러나 새로 할당된 리전은 이전에 할당된 리전과 올바르게 정렬되지 않았습니다. 그 결과 sysfs
의 Stratis 씬 풀의 alignment_offset
파일에 0이 아닌 항목과 함께 성능이 저하될 수 있었습니다. 이번 업데이트를 통해 풀이 확장되면 새로 할당된 데이터 장치의 영역이 이전에 할당된 리전과 올바르게 정렬됩니다. 결과적으로 성능이 저하되지 않으며 sysfs
의 Stratis 씬 풀의 alignment_offset
파일에 0이 아닌 항목이 없습니다.
/etc/fstab
에서 NVMe-FC 장치를 마운트 지점으로 추가할 때 시스템이 올바르게 부팅됨
이전 버전에서는 nvme-cli nvmf-autoconnect systemd
서비스의 알려진 문제로 인해 /etc/fstab
파일의 마운트 지점으로 NVMe-FC(Non-volatile Memory Express over Fibre Channel) 장치를 추가하는 동안 시스템을 부팅하지 못했습니다. 그 결과 시스템이 긴급 모드로 전환되었습니다. 이번 업데이트를 통해 NVMe-FC 장치를 마운트할 때 시스템이 문제없이 부팅됩니다.
Jira:RHEL-8171[1]
이제 운영 체제 설치 중에 LUN이 표시됨
이전에는 시스템에서 펌웨어 소스의 인증 정보를 사용하지 않았습니다. 특히 iSCSI iBFT(Boot Firmware Table)에 저장된 CHAP(Challenge-Handshake Authentication Protocol) 인증과 관련된 경우입니다. 결과적으로 설치 중에 iSCSI 로그인에 실패했습니다.
udisks2-2.9.4-9.el9
펌웨어 인증의 수정으로 이 문제가 해결되어 설치 및 초기 부팅 중에 LUN이 표시됩니다.
Bugzilla:2213769[1]
8.9. 고가용성 및 클러스터 링크 복사링크가 클립보드에 복사되었습니다!
--force
를 지정하지 않고 tls
및 keep_active_partition_tie_breaker
쿼럼 장치 옵션 구성
이전 버전에서는 쿼럼 장치를 구성할 때 --force
옵션을 지정하지 않고 쿼럼 장치 모델 net
에 대해 tls
및 keep_active_partition_tie_breaker
옵션을 구성할 수 없었습니다. 이번 업데이트를 통해 이러한 옵션을 더 이상 구성할 필요가 없습니다. --force
.
복제 및 번들 리소스 이동 및 금지 문제 해결
이 버그 수정에서는 번들 및 복제 리소스의 두 가지 제한 사항을 해결합니다.
-
사용자가 번들에서 번들로 이동하거나 번들에서 실행되지 않도록 하려는 경우
pcs
에서 제약 조건을 생성했지만 제약 조건은 적용되지 않았습니다. 이로 인해 오류 메시지와 함께 이동이 실패했습니다. 이번 수정으로pcs
는 번들에서 번들 리소스를 이동 및 금지하고 번들 리소스를 번들에서 이동할 수 없다는 오류 메시지를 출력합니다. -
사용자가 번들 또는 복제 리소스를 이동하려고 하면 해당 번들 또는 복제 리소스를 이동할 수 없다는 오류 메시지와 함께
pcs
가 종료되었습니다. 이번 수정에서는 이동 명령의 유효성 검사를 완화합니다. 이제 복제 및 번들 리소스를 이동할 수 있습니다. 복제 리소스를 이동할 때 복제의 인스턴스가 두 개 이상인 경우 대상 노드를 지정해야 합니다. 하나의 복제 번들만 이동할 수 있습니다.
pcs status
명령의 출력에 만료된 제약 조건에 대한 경고가 더 이상 표시되지 않음
이전 버전에서는 클러스터 리소스를 이동할 때 임시 위치 제약 조건이 생성되면 제약 조건이 만료된 후에도 pcs status
명령으로 경고가 표시되었습니다. 이번 수정으로 pcs status
명령은 만료된 제약 조건을 필터링하고 더 이상 명령 출력에 경고 메시지를 생성하지 않습니다.
SBD 펜싱에 필요한 경우 auto_tie_breaker
쿼럼 옵션을 비활성화해도 더 이상 허용되지 않음
이전에는 pcs
에서 SBD 펜싱이 제대로 작동하려면 클러스터 구성에 이 옵션이 필요한 경우에도 사용자가 auto_tie_breaker
쿼럼 옵션을 비활성화할 수 있었습니다. 이번 수정을 통해 SBD 펜싱을 사용하려면 사용자가 auto_tie_breaker
옵션을 활성화해야 하는 시스템에서 auto_tie_breaker
를 비활성화하려고 할 때 오류 메시지가 생성됩니다.
8.10. 동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버 링크 복사링크가 클립보드에 복사되었습니다!
정규식 일치를 사용하여 DAV 리포지토리 위치가 구성된 경우 httpd
가 올바르게 작동합니다.
이전에는 DCV(Distributed Authoring and Versioning) 리포지토리가 정규식 일치(예: LocationMatch
)를 사용하여 Apache HTTP Server에 구성된 경우 mod_dav
httpd
모듈에서 경로 이름에서 리포지토리의 루트를 확인할 수 없었습니다. 그 결과 httpd
에서 타사 공급자의 요청을 처리하지 않았습니다(예: Sub-version의 mod_dav_svn
모듈).
이번 업데이트를 통해 httpd.conf
파일의 새 DevBasePath
지시문을 사용하여 리포지토리 루트 경로를 지정할 수 있습니다. 예를 들면 다음과 같습니다.
<LocationMatch "^/repos/"> DAV svn DavBasePath /repos SVNParentPath /var/www/svn </LocationMatch>
<LocationMatch "^/repos/">
DAV svn
DavBasePath /repos
SVNParentPath /var/www/svn
</LocationMatch>
결과적으로 정규식 일치를 사용하여 DAV 리포지토리 위치가 구성된 경우 httpd
가 요청을 올바르게 처리합니다.
8.11. 컴파일러 및 개발 도구 링크 복사링크가 클립보드에 복사되었습니다!
ldconfig
가 중단된 시스템 업그레이드 후 더 이상 충돌하지 않음
이전에는 중단된 시스템 업그레이드 후 /usr/lib64
디렉터리에 불완전한 공유 오브젝트를 처리할 때 ldconfig
유틸리티가 분할 오류로 인해 예기치 않게 종료되었습니다. 이번 업데이트를 통해 ldconfig
는 시스템 업그레이드 중에 작성된 임시 파일을 무시합니다. 결과적으로 중단된 시스템 업그레이드 후 ldconfig
가 더 이상 충돌하지 않습니다.
glibc
에서 malloc
arena tuning에 구성된 프로세서 수 사용
이전에는 glibc
에서 malloc
의 최대값 튜닝을 위해 스레드별 CPU 선호도 마스크를 사용했습니다. 결과적으로 스레드 선호도 마스크를 시스템의 CPU의 작은 하위 집합으로 제한하면 성능이 저하될 수 있습니다.
glibc
는 최대 범위 수를 결정하기 위해 구성된 CPU 수를 사용하도록 변경되었습니다. 결과적으로 애플리케이션은 제한된 스레드 CPU 선호도 마스크로 실행되는 경우에도 더 많은 수의 아라스를 사용하고 성능 저하가 더 이상 발생하지 않습니다.
Jira:RHEL-17157[1]
종속성 사이클과 관련된 공유 오브젝트에 dl close
을 사용하는 애플리케이션과 glibc
호환성 개선
이전 버전에서는 glibc
에서 dlclose
함수를 사용하여 종속성 주기에서 공유 오브젝트를 언로드할 때 다른 모든 오브젝트가 언로드되기 전에 해당 오브젝트의 ELF 종료기가 호출되지 않았을 수 있었습니다. 이러한 늦은 ELF 종료자 실행으로 인해 초기 공유 개체의 종속성이 이미 초기화되지 않아 애플리케이션이 충돌 및 기타 오류가 발생했습니다.
이번 업데이트를 통해 glibc
는 다른 ELF 종료자를 실행하기 전에 언로드되는 즉시 객체의 ELF 종료자를 먼저 호출하도록 수정되었습니다. 결과적으로 종속성 주기와 관련된 공유 오브젝트에 대한 dlclose
를 사용하는 애플리케이션과의 호환성이 개선되고 충돌이 더 이상 발생하지 않습니다.
Jira:RHEL-2491[1]
더 이상 디렉토리 실행을 시도하지 않음
이전 버전에서는 실행 파일을 실행하려고 하는 실행 파일이 실제로 실행 중인지 확인하지 않았습니다. 결과적으로 경로에 실행 파일과 이름이 같은 디렉터리가 포함된 경우 대신 디렉터리
를
실행하려고 합니다. 이번 업데이트를 통해 실행 파일을 검색할 때 추가 검사를 수행합니다. 결과적으로 더 이상 디렉터리를 실행하려고 하지 않습니다.
glibc
광범위한 문자 쓰기 성능 개선
이전에는 glibc
의 광범위한 stdio
스트림 구현에서 기본 버퍼 크기를 광범위한 쓰기 작업을 위해 충분히 큰 것으로 취급하지 않았으며 대신 16바이트 대체 버퍼를 사용하여 성능에 부정적인 영향을 미쳤습니다. 이번 업데이트를 통해 버퍼 관리가 수정되고 전체 쓰기 버퍼가 사용됩니다. 그 결과 glibc
광범위한 문자 쓰기 성능이 향상됩니다.
Jira:RHEL-19862[1]
glibc
getaddrinfo
함수가 ncsd
캐시 정보를 올바르게 읽습니다.
이전에는 glibc
getaddrinfo
함수의 버그로 인해 종종 목록 주소 정보 구조에서 빈 요소를 반환했습니다. 이번 업데이트를 통해 ncsd
캐시 데이터를 올바르게 읽고 변환하도록 getaddrinfo
함수가 수정되었으며 결과적으로 올바른 주소 정보를 반환합니다.
종속성 사이클과 관련된 공유 오브젝트에 dl close
을 사용하는 애플리케이션과 glibc
호환성 개선
이전 버전에서는 glibc
에서 dlclose
함수를 사용하여 종속성 주기에서 공유 오브젝트를 언로드할 때 다른 모든 오브젝트가 언로드되기 전에 해당 오브젝트의 ELF 종료기가 호출되지 않았을 수 있었습니다. 이러한 늦은 ELF 종료자 실행으로 인해 초기 공유 개체의 종속성이 이미 초기화되지 않아 애플리케이션이 충돌 및 기타 오류가 발생했습니다.
이번 업데이트를 통해 glibc
는 다른 ELF 종료자를 실행하기 전에 언로드되는 즉시 객체의 ELF 종료자를 먼저 호출하도록 수정되었습니다. 결과적으로 종속성 주기와 관련된 공유 오브젝트에 대한 dlclose
를 사용하는 애플리케이션과의 호환성이 개선되고 충돌이 더 이상 발생하지 않습니다.
gRPCSD가
일관성 없는 캐시 만료 정보로 인해 더 이상 시작되지 않음
이전에는 glibc
Name Service Switch Caching Daemon(nscd
)이 영구 캐시 파일의 일관성 없는 캐시 만료 정보로 인해 시작되지 못했습니다. 이번 업데이트를 통해 ncsd
는 이제 삭제에 대한 타이밍 정보가 일치하지 않는 캐시 항목을 표시하고 이를 건너뜁니다. 결과적으로 ncsd
가 일관성 없는 캐시 만료 정보로 인해 더 이상 시작되지 않습니다.
지속적으로 빠른 glibc
스레드 로컬 스토리지 성능
이전 버전에서는 glibc
동적 링커가 dlopen()
함수를 사용하여 TLS와 공유 오브젝트를 로드한 후 특정 스레드-로컬 스토리지(TLS) 메타데이터를 조정하지 않아 TLS 액세스 속도가 느려졌습니다. 이번 업데이트를 통해 동적 링커는 이제 dlopen()
호출으로 인한 TLS 변경에 대한 TLS 메타데이터를 업데이트합니다. 결과적으로 TLS 액세스가 일관되게 빨라집니다.
8.12. IdM (Identity Management) 링크 복사링크가 클립보드에 복사되었습니다!
작업이 완료되면 할당된 메모리가 해제됨
이전에는 각 작업에 대해 KCM에 의해 할당된 메모리가 연결이 닫힐 때까지 해제되지 않았습니다. 결과적으로 연결을 열고 동일한 연결에서 많은 작업을 실행한 클라이언트 애플리케이션의 경우 연결이 닫힐 때까지 할당된 메모리가 해제되지 않았기 때문에 메모리가 눈에 띄게 증가했습니다. 이번 업데이트를 통해 작업이 완료되는 즉시 작업에 할당된 메모리가 릴리스됩니다.
이름에 혼합된 대소문자 문자가 포함된 경우 IdM 클라이언트는 신뢰할 수 있는 AD 사용자의 정보를 올바르게 검색
이전 버전에서는 사용자의 사용자 조회 또는 인증을 시도했고 신뢰할 수 있는 AD(Active Directory) 사용자에게 이름에 혼합된 케이스 문자가 포함되어 있고 IdM에서 재정의를 통해 구성된 경우 오류가 반환되어 사용자가 IdM 리소스에 액세스할 수 없었습니다.
이번 업데이트를 통해 대소문자를 구분하지 않는 비교가 문자의 대소문자를 무시하는 대소문자를 구분하지 않는 비교로 교체되었습니다. 결과적으로 사용자 이름에 혼합된 대소문자 문자가 포함되어 있고 IdM에서 재정의를 사용하여 구성된 경우에도 IdM 클라이언트는 AD 신뢰할 수 있는 도메인의 사용자를 조회할 수 있습니다.
암호를 변경하는 동안 유예 로그인이 남아 있지 않은 경우 SSSD에서 오류를 올바르게 반환합니다.
이전 버전에서는 사용자의 LDAP 암호가 만료된 경우 SSSD에서 더 이상 유예 로그인이 남아 있지 않아 사용자의 초기 바인딩에 실패한 후에도 암호를 변경하려고 했습니다. 그러나 사용자에게 반환된 오류는 실패 이유를 표시하지 않았습니다. 이번 업데이트를 통해 바인딩이 실패하면 암호 변경 요청이 중단되고 SSSD에서 더 이상 유예 로그인이 없음을 나타내는 오류 메시지를 반환하고 다른 방법으로 암호를 변경해야 합니다.
realm leave
명령을 사용하여 도메인에서 시스템 제거
이전 버전에서는 sssd.conf
파일의 ad_server
옵션에 여러 이름이 설정된 경우 realm leave
명령을 실행하면 구문 분석 오류가 발생하고 시스템이 도메인에서 제거되지 않았습니다. 이번 업데이트를 통해 ad_server
옵션이 올바르게 평가되고 올바른 도메인 컨트롤러 이름이 사용되고 도메인에서 시스템이 올바르게 제거됩니다.
KCM은 올바른 sssd.kcm.log
파일에 기록합니다.
이전에는 logrotate
가 Kerberos Credential Manager(KCM) 로그 파일을 올바르게 순환했지만 KCM은 이전 로그 파일인 sssd_kcm.log.1
에 로그를 잘못 작성했습니다. KCM이 다시 시작되면 올바른 로그 파일을 사용했습니다. 이번 업데이트를 통해 logrotate
가 호출된 후 로그 파일이 순환되고 KCM이 sssd_kcm.log
파일에 올바르게 로그됩니다.
realm leave --remove
명령은 더 이상 인증 정보를 요청하지 않음
이전에는 realm
유틸리티에서 realm leave
작업을 실행할 때 유효한 Kerberos 티켓을 사용할 수 있는지 올바르게 확인하지 않았습니다. 그 결과 유효한 Kerberos 티켓을 사용할 수 있는 경우에도 사용자에게 암호를 입력하라는 요청을 받았습니다. 이번 업데이트를 통해 이제 realm
에서 유효한 Kerberos 티켓이 있는지 올바르게 확인하고 더 이상 realm leave --remove
명령을 실행할 때 암호를 입력하도록 요청하지 않습니다.
일반적인 제한 위임 요청이 처리되는 경우 KDC에서 추가 검사를 실행합니다.
이전에는 Red Hat Enterprise Linux 8에서 실행되는 KDC에서 발행한 Kerberos 티켓의 전달 가능한 플래그에 취약하여 감지하지 않고 무단 수정을 허용했습니다. 이 취약점으로 인해 특정 권한이 없는 사용자 또는 사용자의 가장 공격이 발생할 수 있습니다. 이번 업데이트를 통해 KDC는 일반적인 제한된 위임 요청을 처리할 때 추가 검사를 실행하여 무단 플래그 수정의 탐지 및 거부를 보장하므로 취약점이 제거됩니다.
Jira:RHEL-9984[1]
도메인에 대한 SID가 생성되는 경우 전달 가능한 플래그를 확인합니다.Check on the forwardable flag is disabled in cases where SIDs are generated for the domain
이전에는 CVE-2020-17049에 대한 수정 사항을 제공하는 업데이트는 KDC가 일반적인 제한 위임 요청을 처리할 때 티켓 전달 가능한 플래그에서 특정 검사를 실행하기 위해 Kerberos PAC에 의존했습니다. 그러나 PAC는 SIDs 생성 작업이 과거 실행된 도메인에서만 생성됩니다. 이 작업은 RHEL(Red Hat Enterprise Linux) 8.5 이상에서 생성된 모든 IdM 도메인에 대해 자동으로 수행되지만 이전 버전에서 초기화된 도메인에는 이 작업을 수동으로 실행해야 합니다.
RHEL 8.4 이상에서 초기화된 IdM 도메인에 대해 SIDs 생성 작업이 수동으로 실행되지 않은 경우 PAC가 Kerberos 티켓에서 누락되어 모든 일반 위임 요청이 거부됩니다. 여기에는 일반적인 제한된 위임을 사용하는 IdM의 HTTP API가 포함됩니다.
이번 업데이트를 통해 도메인에 대해 SID가 생성되지 않은 경우 전달 가능 플래그를 확인할 수 없습니다. IdM HTTP API를 포함하여 일반적인 제한 위임에 의존하는 서비스는 계속 작동합니다. 그러나 Red Hat은 도메인에 사용자 지정 일반적인 제한 위임 규칙이 구성된 경우 최대한 빨리 도메인에서 SIDs 생성 작업을 실행하는 것이 좋습니다. 이 작업이 완료되기 전까지 도메인은 CVE-2020-17049에 취약합니다.
FIPS 모드에서 IdM Vault 암호화 및 암호 해독이 더 이상 실패하지 않음
이전에는 IdM Vault에서 OpenSSL RSA-PKCS1v15를 기본 패딩 래핑 알고리즘으로 사용했습니다. 그러나 RHEL의 FIPS 인증 모듈은 FIPS 승인 알고리즘으로 PKCS#1 v1.5를 지원하지 않아 FIPS 모드에서 IdM Vault가 실패합니다. 이번 업데이트를 통해 IdM Vault는 RSA-OAEP 패딩 패딩 알고리즘을 폴백으로 지원합니다. 결과적으로 IdM Vault 암호화 및 암호 해독이 FIPS 모드에서 올바르게 작동합니다.
Jira:RHEL-12143[1]
페이지가 지정된 결과 검색을 종료한 후 Directory Server가 더 이상 실패하지 않음
이전에는 경쟁 조건이 페이지링된 결과 검색을 중단하는 동안 힙 손상 및 Directory Server 실패의 이유였습니다. 이번 업데이트를 통해 경쟁 조건이 수정되었으며 Directory Server 오류가 더 이상 발생하지 않습니다.
Jira:RHEL-16830[1]
nsslapd-numlisteners
속성 값이 2
개 이상이면 Directory Server가 더 이상 실패하지 않습니다.
이전 버전에서는 nsslapd-numlisteners
속성 값이 2
보다 크면 Directory Server에서 허용되는 파일 설명자 대신 수신 대기 파일 설명자를 종료하는 경우가 있었습니다. 그 결과 Directory Server에서 세그먼트 오류가 발생했습니다. 이번 업데이트를 통해 Directory Server는 올바른 설명자를 닫고 포트에서 올바르게 수신 대기합니다.
이제 autobind 작업이 다른 연결에서 수행되는 작업에 영향을 미치지 않음
이전 버전에서는 자동 바인딩 작업이 진행 중일 때 Directory Server가 모든 연결에서 새 작업 수신을 중지했습니다. 이번 업데이트를 통해 autobind 작업은 다른 연결에 수행된 작업에 영향을 미치지 않습니다.
IdM 클라이언트 설치 프로그램에서 더 이상 ldap.conf
파일에 TLS CA 구성을 지정하지 않음
이전에는 IdM 클라이언트 설치 프로그램에서 ldap.conf
파일에 TLS CA 구성을 지정했습니다. 이번 업데이트를 통해 OpenLDAP는 기본 신뢰 저장소를 사용하고 IdM 클라이언트 설치 프로그램에서 ldap.conf
파일에 TLS CA 구성을 설정하지 않습니다.
로컬 사용자 캐싱을 위한 shadow-utils
및 sss_cache
간 통합이 비활성화되어 있습니다.
RHEL 9에서는 /etc/shadow
및 /etc/groups
의 그룹 정보와 같은 로컬 파일에서 사용자 정보를 검색하는 SSSD 암시적 파일
공급자 도메인이 기본적으로 비활성화되어 있습니다. 그러나 shadow-utils
의 통합이 완전히 비활성화되지 않아 로컬 사용자를 추가하거나 삭제할 때 sss_cache
에 대한 호출이 발생했습니다. 불필요한 캐시 업데이트로 인해 일부 사용자의 성능 문제가 발생했습니다. 이번 업데이트를 통해 sss_cache
와 shadow-utils
통합이 완전히 비활성화되고 불필요한 캐시 업데이트로 인한 성능 문제가 더 이상 발생하지 않습니다.
8.13. 웹 콘솔 링크 복사링크가 클립보드에 복사되었습니다!
이제 VNC 콘솔이 대부분의 해상도에서 작동합니다.
이전에는 특정 디스플레이 해상도에서 VNC(Virtual Network Computing) 콘솔을 사용할 때 마우스 오프셋 문제가 있거나 인터페이스의 일부만 표시되었습니다. 결과적으로 VNC 콘솔을 사용할 수 없었습니다.
이번 업데이트를 통해 문제가 해결되었으며 VNC 콘솔은 3840 x 2160 px과 같은 울트라 높은 해상도를 제외하고 대부분의 해결 방법으로 올바르게 작동합니다.
커서의 기록된 위치와 표시된 위치 간의 작은 오프셋이 계속 존재할 수 있습니다. 그러나 이는 VNC 콘솔의 유용성에 크게 영향을 미치지 않습니다.
8.14. Red Hat Enterprise Linux 시스템 역할 링크 복사링크가 클립보드에 복사되었습니다!
SBD delay-start
값이 높은 경우 클러스터 시작 시간이 더 이상 초과되지 않음
이전 버전에서는 사용자가 ha_cluster
시스템 역할을 사용하여 클러스터에서 SBD 펜싱을 구성하고 delay-start
옵션을 90초 이상의 값으로 설정하면 클러스터가 시간 초과됩니다. 기본 systemd
시작 제한 시간은 SBD 시작 지연 값 이전에 시스템에 도달한 90초이기 때문입니다. 이번 수정으로 ha_cluster
시스템 역할은 systemd
의 sbd.service
시작 시간 초과를 재정의하여 delay-start
값보다 높습니다. 그러면 delay-start
옵션의 높은 값으로도 시스템이 성공적으로 시작될 수 있습니다.
Jira:RHEL-18026[1]
네트워크
역할은 0.0.0.0/0
또는 ::/0
을 사용하여 라우팅 규칙을 검증합니다.
이전 버전에서는 from:
또는 to:
설정이 라우팅 규칙의 0.0.0.0/0
또는 ::/0
주소로 설정된 경우 네트워크
RHEL 시스템 역할이 라우팅 규칙을 구성하지 못하고 설정이 유효하지 않은 것으로 거부되었습니다. 이번 업데이트를 통해 네트워크
역할은 from:
및 to:
라우팅 규칙 검증에서 0.0.0.0/0
및 ::/0
을 허용합니다. 결과적으로 이 역할은 검증 오류를 발생시키지 않고 라우팅 규칙을 성공적으로 구성합니다.
read-scale 클러스터를 실행하고 mssql-server-ha
를 설치하려면 더 이상 특정 변수가 필요하지 않음
이전에는 mssql
RHEL 시스템 역할을 사용하여 특정 변수(mssql_ha_virtual_ip
, mssql_ha_login ,mssql_ha_login
_password ,
) 없이 read-scale 클러스터를 구성하는 경우 오류 메시지 "Variable not defined"가 실패했습니다. 그러나 이러한 변수는 읽기-스케일 클러스터를 실행하는 데 필요하지 않습니다. 또한 이 역할은 읽기-스케일 클러스터에 필요하지 않은 mssql_ha_
cluster_run_rolemssql-server-ha
를 설치하려고 했습니다. 이번 수정을 통해 이러한 변수에 대한 요구 사항이 제거되었습니다. 결과적으로 read-scale 클러스터를 실행하면 오류 메시지 없이 성공적으로 진행됩니다.
kexec_crash_size 파일이 사용 중인 경우 Kdump 시스템 역할이 올바르게 작동합니다.
/sys/kernel/kexec_crash_size
파일은 크래시 커널 메모리에 할당된 메모리 영역의 크기를 제공합니다.
이전에는 /sys/kernel/kexec_crash_size
파일이 사용 중인 경우 Kdump 시스템 역할이 실패했습니다. 이번 업데이트를 통해 시스템 역할은 사용 가능한 경우 파일 읽기를 다시 시도합니다. 결과적으로 파일이 사용 중일 때 시스템 역할이 더 이상 실패하지 않습니다.
SELinux
역할은 더 이상 item
루프 변수를 사용하지 않음
이전에는 selinux
RHEL 시스템 역할에서 item
loop 변수를 사용했습니다. 이로 인해 다른 역할에서 selinux
역할을 호출했을 때 다음과 같은 경고 메시지가 표시될 수 있습니다.
[WARNING]: TASK: fedora.linux_system_roles.selinux : Restore SELinux labels on filesystem tree: The loop variable 'item' is already in use. You should set the `loop_var` value in the `loop_control` option for the task to something else to avoid variable collisions and unexpected behavior.
[WARNING]: TASK: fedora.linux_system_roles.selinux : Restore SELinux labels on filesystem tree: The loop variable 'item' is already in use.
You should set the `loop_var` value in the `loop_control` option for the task to something else to avoid variable collisions and unexpected behavior.
이번 릴리스에서는 selinux
역할은 __selinux_item
을 루프 변수로 사용합니다. 결과적으로 item
변수가 이미 사용 중인 경고는 다른 역할의 selinux
역할을 호출하더라도 더 이상 표시되지 않습니다.
이제 ha_cluster
시스템 역할이 qnetd
호스트에서 방화벽을 올바르게 구성
이전에는 사용자가 qnetd
호스트를 구성하고 ha_cluster
시스템 역할을 사용하여 ha_cluster_manage_firewall
변수를 true
로 설정하면 역할이 방화벽에서 고가용성 서비스를 활성화하지 않았습니다. 이번 수정으로 ha_cluster
시스템 역할은 이제 qnetd
호스트에서 방화벽을 올바르게 구성합니다.
postgresql
RHEL 시스템 역할에서 올바른 PostgreSQL 버전을 설치합니다.
이전 버전에서는 RHEL 관리 노드에 정의된
변수를 사용하여 postgresql RHEL 시스템 역할을 실행하려고 하면 버전 15 대신 PostgreSQL 버전 13이 설치되었습니다. 이 버그는 수정되었으며 postgresql
_version: "15"postgresql
역할은 변수에 설정된 버전을 설치합니다.
keylime_server
역할은 등록 기관 서비스 상태를 올바르게 보고합니다.
이전 버전에서는 keylime_server
역할 플레이북에서 잘못된 정보를 제공하면 역할이 시작을 성공한 것으로 잘못 보고했습니다. 이번 업데이트를 통해 잘못된 정보가 제공되면 역할이 오류를 올바르게 보고하고, 열린 포트를 기다릴 때의 시간 초과가 약 300초에서 약 30초로 단축되었습니다.
podman
RHEL 시스템 역할은 이제 rootless 컨테이너에 대해 linger를 올바르게 설정하고 취소합니다.
이전에는 podman
RHEL 시스템 역할이 rootless 컨테이너에 대해 linger를 올바르게 설정 및 취소하지 않았습니다. 결과적으로 rootless 사용자를 위해 시크릿 또는 컨테이너를 배포하면 경우에 따라 오류가 발생하여 경우에 따라 리소스를 제거할 때 linger를 취소하지 못했습니다. 이번 업데이트를 통해 podman
RHEL 시스템 역할은 시크릿 또는 컨테이너 리소스 관리를 수행하기 전에 rootless 사용자가 linger를 활성화하고 더 이상 시크릿 또는 컨테이너 리소스를 관리할 때 rootless 사용자에 대해 linger가 취소되도록 합니다. 결과적으로 역할은 rootless 사용자에 대한 리틀링을 올바르게 관리합니다.
nbde_server
역할이 소켓 덮어쓰기에서 작동함
이전에는 nbde_server
RHEL 시스템 역할에서 tangd
소켓 덮어쓰기 디렉터리에 있는 유일한 파일이 사용자 지정 포트의 override.conf
파일인 것으로 간주했습니다. 결과적으로 다른 파일을 확인하지 않고 포트 사용자 지정이 없는 경우 역할이 디렉터리를 삭제했으며 시스템은 후속 실행에서 디렉터리를 다시 생성했습니다.
이번 릴리스에서는 다른 파일이 있는 경우 포트 덮어쓰기 파일의 속성을 변경하고 디렉터리를 삭제하지 않도록 역할이 수정되었습니다. 결과적으로 tangd
소켓 덮어쓰기 파일이 역할 외부에서도 관리되는 경우 역할이 올바르게 작동합니다.
볼륨 쿼드릿 서비스 이름이 더 이상 실패하지 않음
이전 버전에서는 볼륨 서비스 이름을 시작하면 다음과 유사한 오류가 발생했습니다. "요청된 서비스 NAME.volume: host"를 찾을 수 없습니다. 이 업데이트를 통해 볼륨 쿼드릿 서비스 이름이 basename-volume.service
로 변경되었습니다. 결과적으로 볼륨 서비스가 오류 없이 시작됩니다.
자세한 내용은 볼륨 단위 도움말 페이지를 참조하십시오.
Ansible은 이제 시크릿에 사용할 JSON 문자열을 유지합니다.
이전 버전에서는 Ansible에서 값이 루프에 사용된 경우 해당 JSON 오브젝트로 JSON 문자열을 변환하고 데이터와 유사한 문자열을 "{{ value }}"
로 변환했습니다. 결과적으로 JSON 문자열을 시크릿으로 전달하고 값이 보존됩니다. 이번 업데이트에서는 podman_secret
모듈에 전달할 때 data 값을 문자열로 캐스팅합니다. 결과적으로 JSON 문자열은 시크릿에 사용하기 위해 그대로 유지됩니다.
에 활성화 키가 포함된 경우 등록된 시스템에서 rhc 시스템 역할이 더 이상 실패하지 않음rhc
_auth
이전에는 rhc_auth
매개변수에 지정된 활성화 키를 사용하여 등록된 시스템에서 플레이북 파일을 실행할 때 오류가 발생했습니다. 이 문제가 해결되었습니다. 이제 rhc_auth
매개 변수에 활성화 키가 제공된 경우에도 이미 등록된 시스템에서 플레이북 파일을 실행할 수 있습니다.
8.15. 가상화 링크 복사링크가 클립보드에 복사되었습니다!
FIFO 스케줄러를 사용하는 RT VM이 올바르게 부팅됨
이전에는 vCPU 스케줄러의 fifo
설정을 사용하도록 실시간(RT) 가상 머신(VM)을 설정한 후 부팅하려고 할 때 VM이 응답하지 않았습니다. 대신 VM에 게스트가 디스플레이(yet) 오류가 초기화되지 않았습니다
. 이번 업데이트를 통해 오류가 수정되었으며 vCPU 스케줄러에 대한 fifo
를 설정하면 설명된 상황에서 예상대로 작동합니다.
Jira:RHEL-2815[1]
덤프 실패로 인해 Secure Execution가 있는 IBM Z VM이 더 이상 실행되지 않음
이전에는 Secure Execution가 있는 IBM Z 가상 머신(VM) 덤프가 실패하면 VM이 일시 중지된 상태로 유지되어 실행되지 않았습니다. 예를 들어, 디스크에 충분한 공간이 없는 경우 virsh dump
명령을 사용하여 VM을 덤프하는 작업이 실패합니다.
기본 코드가 수정되었으며 덤프가 실패한 후 Secure Execution VM이 작업을 재개합니다.
Jira:RHEL-16695[1]
설치 프로그램에서 VM에 RHEL을 설치할 예상 시스템 디스크를 보여줍니다.
이전 버전에서는 virtio-scsi
장치를 사용하여 VM에 RHEL을 설치할 때 device-mapper-multipath
버그로 인해 이러한 장치가 설치 프로그램에 표시되지 않을 수 있었습니다. 결과적으로 설치 중에 일부 장치에 직렬이 설정되어 있지 않은 경우 multipath
명령이 직렬로 설정된 모든 장치를 요청했습니다. 이로 인해 설치 프로그램에서 VM에 RHEL을 설치할 예상 시스템 디스크를 찾을 수 없었습니다.
이번 업데이트를 통해 다중
경로는 WWID(World Wide Identifier)가 없는 직렬 장치를 올바르게 설정하고 무시합니다. 설치 시 다중 경로
의 장치만 다중 경로
장치를 바인딩하는 데 사용하고 설치 프로그램은 VM에 RHEL을 설치하는 데 필요한 시스템 디스크를 보여줍니다.
Bugzilla:1926147[1]
다수의 큐를 사용하면 더 이상 VM이 실패하지 않음
이전에는 vTPM(가상 신뢰할 수 있는 플랫폼 모듈) 장치가 활성화되고 250개 이상의 대기열을 사용하도록 다중 대기열 virtio-net 기능이 구성된 경우 가상 머신(VM)이 실패할 수 있었습니다.
이 문제는 vTPM 장치의 제한으로 인해 발생했습니다. 이번 업데이트를 통해 문제가 수정되었으며 250개 이상의 대기열이 있는 VM과 vTPM이 안정적으로 작동합니다.
Jira:RHEL-13335[1]
Windows 게스트는 AMD EPYC CPU를 사용하는 호스트에서 v2v 변환 후 보다 안정적으로 부팅됩니다.
virt-v2v
유틸리티를 사용하여 Windows 11 또는 Windows Server 2022를 게스트 OS로 사용하는 VM(가상 머신)을 변환한 후 이전에 VM을 부팅하지 못했습니다. 이는 AMD EPYC 시리즈 CPU를 사용하는 호스트에서 발생했습니다. 이제 기본 코드가 수정되었으며 설명된 상황에서 VM이 예상대로 부팅됩니다.
Bugzilla:2168082[1]
nodedev-dumpxml
은 특정 중재된 장치에 대해 속성을 올바르게 나열합니다.
이번 업데이트 이전에는 nodedev-dumpxml
유틸리티에서 nodedev-create
명령을 사용하여 생성된 중재된 장치에 대해 속성을 올바르게 나열하지 않았습니다. 이 문제가 수정되었으며 nodedev-dumpxml
에 영향을 받는 장치의 속성이 올바르게 표시됩니다.
virtqemud
또는 libvirtd
를 다시 시작한 후 virtiofs
장치를 연결할 수 없습니다
이전 버전에서는 virtqemud
또는 libvirtd
서비스를 다시 시작하면 virtiofs
스토리지 장치가 호스트의 VM(가상 머신)에 연결되지 않았습니다. 이 버그가 수정되었으며 이제 설명된 시나리오에서 virtiofs
장치를 예상대로 연결할 수 있습니다.
가상 머신에 Watchdog 카드를 핫플러그하는 데 더 이상 실패하지 않음
이전 버전에서는 PCI 슬롯을 사용할 수 없는 경우 실행 중인 VM(가상 머신)에 Watchdog 카드를 추가하는 데 실패했습니다.
Failed to configure watchdog ERROR Error attempting device hotplug: internal error: No more available PCI slots
Failed to configure watchdog
ERROR Error attempting device hotplug: internal error: No more available PCI slots
이번 업데이트를 통해 문제가 해결되어 실행 중인 VM에 Watchdog 카드를 추가할 수 있습니다.
IBM Z의 virtio-gpu
에서 Blob
리소스가 올바르게 작동함
이전에는 virtio-gpu
장치가 IBM Z 시스템의 Blob
메모리 리소스와 호환되지 않았습니다. 결과적으로 IBM Z 호스트에서 virtio-gpu
를 사용하여 Blob
리소스를 사용하도록 VM(가상 머신)을 구성한 경우 VM에 그래픽 출력이 없었습니다.
이번 업데이트를 통해 virtio
장치에는 선택적 Blob
속성이 있습니다. Blob
을 on
으로 설정하면 장치에서 Blob
리소스를 사용할 수 있습니다. 이렇게 하면 virtio-gpu
장치에서 설명된 문제를 방지할 수 있으며 게스트와 호스트 간의 변환 데이터 복사를 줄이거나 제거하여 디스플레이 경로를 가속화할 수도 있습니다. Blob
리소스 지원에는 QEMU 버전 6.1 이상이 필요합니다.
virtio-win
드라이버를 다시 설치하면 더 이상 게스트에서 DNS 구성이 재설정되지 않음
Windows 게스트 운영 체제를 사용하는 VM(가상 머신)에서 NIC(네트워크 인터페이스 컨트롤러)의 virtio-win
드라이버를 다시 설치하거나 업그레이드하면 게스트의 DNS 설정이 재설정되었습니다. 결과적으로 경우에 따라 Windows 게스트가 네트워크 연결이 끊어진 경우도 있습니다.
이번 업데이트를 통해 설명된 문제가 해결되었습니다. 결과적으로 최신 버전의 virtio-win
을 다시 설치하거나 업그레이드하면 문제가 더 이상 발생하지 않습니다. 그러나 이전 버전의 virtio-win
에서 업그레이드하면 문제가 해결되지 않으며 Windows 게스트에서는 DNS 재설정이 계속 발생할 수 있습니다.
Jira:RHEL-1860[1]
virtio-win
드라이버용 virtio-win-guest-tool
의 복구 기능이 올바르게 작동합니다.
이전에는 virtio-win
드라이버(예: Virtio Cryostatoon 드라이버)에 virtio-win-guest-tool
의 복구
버튼을 사용할 때 버튼이 영향을 미치지 않았습니다. 결과적으로 게스트에서 제거된 후 드라이버를 다시 설치할 수 없었습니다. 이 문제는 해결되었으며 virtio-win-guest-tool
복구 기능이 설명된 상황에서 올바르게 작동합니다.
Jira:RHEL-1517[1]
9장. 기술 프리뷰 링크 복사링크가 클립보드에 복사되었습니다!
이 부분에서는 Red Hat Enterprise Linux 9에서 사용 가능한 모든 기술 프리뷰 목록을 제공합니다.
기술 프리뷰 기능에 대한 Red Hat 지원 범위 정보는 기술 프리뷰 기능 지원 범위를 참조하십시오.
9.1. 설치 프로그램 및 이미지 생성 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 설치에 대한 NVMe over TCP가 기술 프리뷰로 사용 가능
이 기술 프리뷰를 사용하면 이제 TCP 볼륨보다 NVMe를 사용하여 펌웨어를 구성한 후 RHEL을 설치할 수 있습니다. 설치 대상 화면에서 디스크를 추가하는 동안 NVMe Fabrics Devices 섹션에서 NVMe 네임스페이스를 선택할 수 있습니다.
Jira:RHEL-10216[1]
부팅 가능한 OSTree 네이티브 컨테이너를 기술 프리뷰로 설치 가능
ostreecontainer
Kickstart 명령은 이제 Anaconda에서 기술 프리뷰로 사용할 수 있습니다. 이 명령을 사용하여 OCI 이미지에 캡슐화된 OSTree 커밋에서 운영 체제를 설치할 수 있습니다. Kickstart 설치를 수행할 때 ostreecontainer
와 함께 다음 명령을 사용할 수 있습니다.
- graphical, text 또는 cmdline
- ostreecontainer
- clearpart, zerombr
- autopart
- 부분
- logvol, volgroup
- 재부팅 및 종료
- lang
- rootpw
- sshkey
-
bootloader -
--append
선택적 매개변수로만 사용할 수 있습니다. - user
user 명령 내에서 그룹을 지정하면 컨테이너 이미지에 이미 존재하는 그룹에만 사용자 계정을 할당할 수 있습니다. 여기에 나열되지 않은 Kickstart 명령은 ostreecontainer
명령과 함께 사용할 수 있지만 패키지 기반 설치에서는 예상대로 작동하지 않습니다.
그러나 다음 Kickstart 명령은 ostreecontainer
와 함께 지원되지 않습니다.
- %packages(컨테이너 이미지에서 필요한 패키지를 이미 사용할 수 있어야 함)
-
URL (예: 설치를 위해
stage2
inst.stage2=
를 사용합니다) - liveimg
- vnc
- authconfig 및 authselect(이 대신 컨테이너 이미지에서 관련 구성 제공)
- module
- 리포지토리
- zipl
- zfcp
부분적인 Kickstart 파일을 사용하는 대화형 설치에서는 부팅 가능한 OSTree 네이티브 컨테이너를 설치할 수 없습니다.
참고: 마운트 지점을 사용자 지정할 때 /mnt
디렉터리에 마운트 지점을 정의하고 컨테이너 이미지의 /var/mnt
내에 마운트 지점 디렉터리가 있는지 확인해야 합니다.
Jira:RHEL-2250[1]
Anaconda에서 bootupd
/ bootupctl
을 통한 부트 로더 설치 및 구성의 기술 프리뷰로 사용 가능
ostreecontainer
Kickstart 명령은 이제 Anaconda에서 기술 프리뷰로 사용할 수 있으므로 이를 사용하여 OCI 이미지에 캡슐화된 OSTree 커밋에서 운영 체제를 설치할 수 있습니다. Anaconda는 Kickstart의 명시적인 부트 로더 구성 없이 컨테이너 이미지에 포함된 bootupd
/bootupctl
툴을 통해 부트 로더 설치 및 구성을 자동으로 준비합니다.
Jira:RHEL-17205[1]
bootc 이미지 빌더
툴을 기술 프리뷰로 사용 가능
이제 bootc 이미지 빌더
툴을 기술 프리뷰로 사용할 수 있으며 컨테이너로 작동하여 bootc
컨테이너 입력에서 호환 가능한 디스크 이미지를 쉽게 생성하고 배포할 수 있습니다. bootc 이미지 빌더를 사용하여 컨테이너 이미지를
실행한 후 필요한 아키텍처에 대한 이미지를 생성할 수 있습니다. 그런 다음 VM, 클라우드 또는 서버에 결과 이미지를 배포할 수 있습니다. 새 업데이트가 필요할 때마다 bootc 이미지 빌더를 사용하여 콘텐츠를 재생성하지 않고도 bootc로 이미지를
쉽게 업데이트할 수 있습니다.
Jira:RHELDOCS-17468[1]
새로운 rhel9/bootc-image-builder
컨테이너 이미지를 기술 프리뷰로 사용할 수 있습니다.
RHEL의 이미지 모드에 대한 rhel9/bootc-image-builder 컨테이너 이미지에는 부팅 가능한 컨테이너 이미지 이미지(예: rhel-bootc)를 QCOW2, AMI, VMDK, ISO 등과 같은 다른 디스크 이미지 형식으로 변환하는 최소 버전의 이미지 빌더가 포함되어 있습니다.
Jira:RHELDOCS-17733[1]
9.2. 보안 링크 복사링크가 클립보드에 복사되었습니다!
Gnu
TLS에서 kTLS를 기술 프리뷰로 사용
업데이트된 gnutls
패키지는 커널 TLS(kTLS)를 사용하여 암호화된 채널에서 데이터 전송을 기술 프리뷰로 가속화할 수 있습니다. kTLS를 활성화하려면 modprobe
명령을 사용하여 tls.ko
커널 모듈을 추가하고 다음 콘텐츠를 사용하여 시스템 전체 암호화 정책에 대한 새 구성 파일 /etc/crypto-policies/local.d/gnutls-ktls.txt
를 생성합니다.
[global] ktls = true
[global]
ktls = true
현재 버전은 TLS KeyUpdate
메시지를 통해 트래픽 키 업데이트를 지원하지 않으므로 AES-GCM 암호화suite의 보안에 영향을 미칩니다. 자세한 내용은 RFC 7841 - TLS 1.3 문서를 참조하십시오.
Bugzilla:2108532[1]
io_uring
인터페이스는 기술 프리뷰로 사용 가능
io_uring
은 새롭고 효과적인 비동기 I/O 인터페이스이며 이제 기술 프리뷰로 사용할 수 있습니다. 이 기능은 기본적으로 비활성화되어 있습니다. kernel.io_uring_disabled
sysctl 변수를 다음 값 중 하나로 설정하여 이 인터페이스를 활성화할 수 있습니다.
0
-
모든 프로세스는
io_uring
인스턴스를 정상적으로 생성할 수 있습니다. 1
-
권한이 없는 프로세스에 대해
io_uring
생성이 비활성화됩니다.CAP_SYS_ADMIN
기능을 통해 호출 프로세스의 권한을 부여하지 않는 한io_uring_setup
이-EPERM
오류로 실패합니다. 기존io_uring
인스턴스를 계속 사용할 수 있습니다. 2
-
모든 프로세스에 대해
io_uring
생성이 비활성화됩니다.io_uring_setup
은 항상-EPERM
. 기존io_uring
인스턴스를 계속 사용할 수 있습니다. 이 설정은 기본 설정입니다.
이 기능을 사용하려면 익명 inode에서 mmap
시스템 호출을 활성화하는 업데이트된 SELinux 정책 버전이 필요합니다.
애플리케이션은 io_uring
명령 pass-through를 사용하여 nvme
와 같은 기본 하드웨어에 직접 명령을 실행할 수 있습니다.
Jira:RHEL-11792[1]
9.3. RHEL for Edge 링크 복사링크가 클립보드에 복사되었습니다!
FDO는 이제 SQL 백엔드에서 소유자를 저장하고 쿼리하는 기능을 기술 프리뷰로 제공합니다.
이 기술 프리뷰를 사용하면 FDO manufacturer-server
,onboarding-server
및 rendezvous-server
를 사용하여 SQL 백엔드에서 소유자 listenucher를 저장하고 쿼리할 수 있습니다. 결과적으로 자격 증명 및 기타 매개 변수와 함께 FDO 서버 옵션에서 SQL 데이터 저장소를 선택하여 소유자인ucher를 저장할 수 있습니다.
Jira:RHELDOCS-17752[1]
9.4. 쉘 및 명령행 툴 링크 복사링크가 클립보드에 복사되었습니다!
GIMP를 RHEL 9에서 기술 프리뷰로 사용 가능
이제 RHEL 9에서 기술 프리뷰로 GNU Image Manipulation Program (GIMP) 2.99.8을 사용할 수 있습니다. gimp
패키지 버전 2.99.8은 개선 사항 세트이지만 제한된 기능 세트이며 안정성은 보장되지 않습니다. 공식 GIMP 3이 릴리스되는 즉시 이 시험판 버전의 업데이트로 RHEL 9에 도입될 예정입니다.
RHEL 9에서는 gimp
를 RPM 패키지로 쉽게 설치할 수 있습니다.
Bugzilla:2047161[1]
9.5. 인프라 서비스 링크 복사링크가 클립보드에 복사되었습니다!
TuneD용 소켓 API를 기술 프리뷰로 사용 가능
이제 UNIX 도메인 소켓을 통해 TuneD를 제어하는 소켓 API를 기술 프리뷰로 사용할 수 있습니다. 소켓 API는 D-Bus API를 사용하여 일대일로 매핑하고 D-Bus를 사용할 수 없는 경우에 대한 대체 통신 방법을 제공합니다. 소켓 API를 사용하면 TuneD 데몬을 제어하여 성능을 최적화하고 다양한 튜닝 매개변수 값을 변경할 수 있습니다. 소켓 API는 기본적으로 비활성화되어 있으며 tuned-main.conf
파일에서 활성화할 수 있습니다.
9.6. 네트워킹 링크 복사링크가 클립보드에 복사되었습니다!
WireGuard VPN은 기술 프리뷰로 사용 가능
Red Hat이 지원되지 않는 기술 프리뷰로 제공되는 WireGuard는 Linux 커널에서 실행되는 고성능 VPN 솔루션입니다. 최신 암호화를 사용하며 다른 VPN 솔루션보다 쉽게 구성할 수 있습니다. 또한 WireGuard의 작은 코드베이스는 공격에 대한 표면을 줄이고 보안을 향상시킵니다.
자세한 내용은 WireGuard VPN 설정을 참조하십시오.
Bugzilla:1613522[1]
kTLS를 기술 프리뷰로 사용 가능
RHEL은 기술 프리뷰로 커널 전송 계층 보안(KTLS)을 제공합니다. kTLS는 AES-GCM 암호화의 커널의 대칭 암호화 또는 암호 해독 알고리즘을 사용하여 TLS 레코드를 처리합니다. kTLS에는 이 기능을 제공하는 NIC(Network Interface Controllers)에 TLS 레코드 암호화를 오프로드하는 인터페이스도 포함됩니다.
Bugzilla:1570255[1]
systemd-resolved
서비스는 기술 프리뷰로 사용 가능
systemd-resolved
서비스는 로컬 애플리케이션에 대한 이름 확인을 제공합니다. 이 서비스는 캐싱 및 검증 DNS 스텁 확인자, LLMNR(Link-Local Multicast Name Resolution) 및 멀티 캐스트 DNS 확인자 및 응답자를 구현합니다.
systemd-resolved
는 지원되지 않는 기술 프리뷰입니다.
PRP 및 CryostatR 프로토콜은 이제 기술 프리뷰로 사용 가능
이번 업데이트에서는 다음 프로토콜을 제공하는 hsr
커널 모듈이 추가되었습니다.
- 병렬 중복 프로토콜(PRP)
- HSM(High-availability Seamless Redundancy)
Cryostat 62439-3 표준은 이러한 프로토콜을 정의하고 이 기능을 사용하여 이더넷 네트워크에서 제로 손실 중복을 구성할 수 있습니다.
Bugzilla:2177256[1]
NetworkManager 및 Nmstate API는 MACsec 하드웨어 오프로드 지원
하드웨어가 이 기능을 지원하는 경우 NetworkManager 및 Nmstate API를 모두 사용하여 MACsec 하드웨어 오프로드를 활성화할 수 있습니다. 결과적으로 CPU에서 네트워크 인터페이스 컨트롤러로 암호화와 같은 MACsec 작업을 오프로드할 수 있습니다.
이 기능은 지원되지 않는 기술 프리뷰입니다.
NetworkManager
를 사용하면 CryostatR 및 PRP 인터페이스 구성 가능
고가용성 HSM(Redundancy) 및 병렬 중복 프로토콜(PRP)은 단일 네트워크 구성 요소의 장애 발생에 대해 원활한 장애 조치를 제공하는 네트워크 프로토콜입니다. 두 프로토콜 모두 애플리케이션 계층에 투명합니다. 즉, 기본 경로와 중복 경로 간의 전환이 매우 빠르고 사용자를 인식하지 않고도 통신 또는 데이터 손실이 발생하지 않습니다. 이제 nmcli
유틸리티 및 DBus 메시지 시스템을 통해 NetworkManager
서비스를 사용하여 CryostatR 및 PRP 인터페이스를 활성화하고 구성할 수 있습니다.
NIC에 IPsec 캡슐화를 오프로드하면 기술 프리뷰로 사용 가능
이번 업데이트에서는 IPsec 패킷 오프로드 기능이 커널에 추가되었습니다. 이전에는 NIC(네트워크 인터페이스 컨트롤러)로 암호화를 오프로드할 수 있었습니다. 이번 개선된 기능을 통해 커널은 전체 IPsec 캡슐화 프로세스를 NIC로 오프로드하여 워크로드를 줄일 수 있습니다.
IPsec 캡슐화 프로세스를 NIC로 오프로드하면 커널에서 이러한 패킷을 모니터링하고 필터링할 수 있는 기능도 줄어듭니다.
Bugzilla:2178699[1]
RHEL에서 가상 머신의 네트워크 드라이버를 기술 프리뷰로 사용할 수 있습니다.
장치 제조업체는 FCC(Federal Commission) 잠금을 기본 설정으로 지원합니다. Cryostat는 드라이버를 특정 시스템에 바인딩할 수 있는 잠금을 제공합니다. 여기서 Cryostat 드라이버는 시뮬레이터와 통신할 수 있는 채널을 제공합니다. 제조업체에서는 PCI ID를 기반으로 ModemManager용 Red Hat Enterprise Linux에서 잠금 해제 툴을 통합합니다. 그러나 이전에 잠금 해제되지 않은 경우 이전에는 driver가 호환되고 기능적인 경우에도 사용할 수 없는 상태로 유지됩니다. Red Hat Enterprise Linux는 기술 프리뷰로 제한된 기능을 갖춘 다음과 같은 가상 시스템의 드라이버를 제공합니다.
- Qualcomm MHI WWAMMBIM - Telit FN990Axx
- Intel IPC over Shared Memory (IOSM) - Intel XMM 7360 game Advanced
- MediaTek t7xx (W Cryostat) - Fibocom FM350GL
- Intel IPC over Shared Memory (IOSM) - Fibocom L860GL 구현
Jira:RHELDOCS-16760[1], Jira:RHEL-6564, Bugzilla:2110561, Bugzilla:2123542, Bugzilla:2222914
SRv6 (SRv6)을 통한 세그먼트 라우팅을 기술 프리뷰로 사용 가능
RHEL 커널은 SRv6(Segment Routing over IPv6)을 기술 프리뷰로 제공합니다. 이 기능을 사용하여 에지 컴퓨팅의 트래픽 흐름을 최적화하거나 데이터 센터의 네트워크 프로그래밍 가능성을 개선할 수 있습니다. 그러나 가장 중요한 사용 사례는 5G 배포 시나리오에서 E2E(End-to-end) 네트워크 분할입니다. 이 영역에서 SRv6 프로토콜은 특정 애플리케이션 또는 서비스에 대한 네트워크 요구 사항을 해결하기 위해 프로그래밍 가능한 사용자 지정 네트워크 슬라이스 및 리소스 예약을 제공합니다. 동시에 솔루션을 단일 용도 어플라이언스에 배포할 수 있으며 더 작은 컴퓨팅 공간의 필요성을 충족합니다.
Bugzilla:2186375[1]
kTLS 버전 6.3로 업데이트됨
KTLS(커널 전송 계층 보안) 기능은 기술 프리뷰입니다. RHEL 9.3에서 kTLS는 6.3 업스트림 버전에 따라 수정되었으며 주요 변경 사항은 다음과 같습니다.
- TX 장치 오프로드를 사용하여 256비트 키에 대한 지원 추가
- 다양한 버그 수정
Bugzilla:2183538[1]
9.7. 커널 링크 복사링크가 클립보드에 복사되었습니다!
Soft-iWARP 드라이버는 기술 프리뷰로 사용 가능
소프트 iWARP(siw)는 Linux용 커널 드라이버인 IWARP(Internet Wide-area RDMA Protocol)입니다. soft-iWARP는 TCP/IP 네트워크 스택을 통해 iWARP 프로토콜 제품군을 구현합니다. 이 프로토콜 제품군은 소프트웨어로 완전히 구현되며 특정 RDMA(Remote Direct Memory Access) 하드웨어가 필요하지 않습니다. 소프트-iWARP를 사용하면 표준 이더넷 어댑터가 있는 시스템이 iWARP 어댑터 또는 이미 설치된 Soft-iWARP에 설치된 다른 시스템에 연결할 수 있습니다.
Bugzilla:2023416[1]
rvu_af
,rvu_nicpf
, 및 기술 프리뷰로 사용 가능한 rvu_nicvf
다음 커널 모듈은 Marvell OCTEON TX2 Infrastructure Processor 제품군의 기술 프리뷰로 사용할 수 있습니다.
rvu_nicpf
- Marvell OcteonTX2 NIC 물리적 기능 드라이버
rvu_nicvf
- Marvell OcteonTX2 NIC 가상 기능 드라이버
rvu_nicvf
- Marvell OcteonTX2 RVU 관리 기능 드라이버
Bugzilla:2040643[1]
Python-drgn
를 기술 프리뷰로 사용 가능
python-drgn
패키지는 고급 디버깅 유틸리티를 제공하여 프로그래밍 가능성을 강조합니다. Python 명령줄 인터페이스를 사용하여 라이브 커널과 커널 덤프를 모두 디버깅할 수 있습니다. 또한 python-drgn
는 디버깅 작업을 자동화하고 Linux 커널의 복잡한 분석을 수행할 수 있는 스크립팅 기능을 제공합니다.
Jira:RHEL-6973[1]
IAA 암호화 드라이버를 기술 프리뷰로 사용 가능
Intel® In-Memory Analytics Accelerator(Intel® IAA)는 기본 분석 기능과 결합된 매우 높은 처리량 압축 및 압축 해제 기능을 제공하는 하드웨어 가속기입니다.
CPU에서 압축 및 압축 해제 작업을 오프로드하는 iaa_crypto
드라이버는 RHEL 9.4에서 기술 프리뷰로 도입되었습니다. RFC 1951에 설명된 DEFLATE 압축 표준과 호환되는 압축 및 압축을 지원합니다. iaa_crypto
드라이버는 zswap
과 같은 상위 수준 압축 장치 아래의 계층으로 작동하도록 설계되었습니다.
IAA 암호화 드라이버에 대한 자세한 내용은 다음을 참조하십시오.
Jira:RHEL-20145[1]
9.8. 파일 시스템 및 스토리지 링크 복사링크가 클립보드에 복사되었습니다!
이제 ext4 및 XFS에서 기술 프리뷰로 DAX를 사용할 수 있습니다.
RHEL 9에서 DAX 파일 시스템은 기술 프리뷰로 사용할 수 있습니다. DAX는 애플리케이션이 영구 메모리를 해당 주소 공간에 직접 매핑할 수 있는 수단을 제공합니다. DAX를 사용하려면 시스템에서 일반적으로 하나 이상의 NVMe(Non-Volatile Dual In-line Memory Modules) 형식으로 사용 가능한 영구 메모리가 있어야 하며 NVDIMM(s)에서 DAX 호환 파일 시스템을 생성해야 합니다. 또한 dax
마운트 옵션을 사용하여 파일 시스템을 마운트해야 합니다. 그런 다음 dax로 마운트된 파일 시스템의 파일 mmap
이 있으면 스토리지가 애플리케이션의 주소 공간에 직접 매핑됩니다.
Bugzilla:1995338[1]
NVMe-oF Discovery Service 기능을 기술 프리뷰로 사용 가능
NVMexpress.org Technical Proposals(TP) 8013 및 8014에 정의된 NVMe-oF Discovery Service 기능은 기술 프리뷰로 사용할 수 있습니다. 이러한 기능을 미리 보려면 nvme-cli 2.0
패키지를 사용하고 호스트를 TP-8013 또는 TP-8014를 구현하는 NVMe-oF 대상 장치에 연결합니다. TP-8013 및 TP-8014에 대한 자세한 내용은 https://nvmexpress.org/specifications/ 웹 사이트의 NVM Express 2.0 Ratified TP를 참조하십시오.
Bugzilla:2021672[1]
NVMe-stas
패키지를 기술 프리뷰로 사용 가능
Linux용 중앙 검색 컨트롤러(CDC) 클라이언트인 nvme-stas
패키지는 이제 기술 프리뷰로 사용할 수 있습니다. AEN(Asynchronous Event Notifications), 자동화된 NVMe 하위 시스템 연결 제어, 오류 처리 및 보고, 자동(0conf
) 및 수동 구성을 처리합니다.
이 패키지는 두 개의 데몬, Storage 어플라이언스 찾기(stafd
) 및 스토리지 어플라이언스 커넥터(stacd
)로 구성됩니다.
Bugzilla:1893841[1]
NVMe TP 8006 인 대역 인증 기술 프리뷰로 사용 가능
NVMe(Non-Volatile Memory Express) TP 8006을 구현하는 것은 이제 지원되지 않는 기술 프리뷰로 NVMe over Fabrics(NVMe-oF)에 대한 대역 내 인증입니다. NVMe Technical Proposal 8006은 이 향상된 기능을 통해 NVMe-oF의 DH-HMAC-CHAP
In-band authentication 프로토콜을 정의합니다.
자세한 내용은 nvme-connect(1)
도움말 페이지의 dhchap-secret
및 dhchap-ctrl-secret
옵션 설명을 참조하십시오.
Bugzilla:2027304[1]
TLS가 포함된 NFS를 기술 프리뷰로 사용 가능
TLS(Transport Layer Security)를 사용하여 NFS용 RFC 9289를 구현하면 이제 기술 프리뷰로 NFS 원격 프로시저 호출(RPC) 트래픽을 보호할 수 있습니다. 이 기능은 RPC 트래픽에 대해 TLS를 활성화하여 클라이언트와 서버 간에 암호화된 통신을 보장함으로써 NFS의 보안을 강화합니다.
Jira:RHEL-7936
9.9. 컴파일러 및 개발 도구 링크 복사링크가 클립보드에 복사되었습니다!
JMC-core
및 owasp-java-encoder
를 기술 프리뷰로 사용 가능
RHEL 9는 AMD 및 Intel 64비트 아키텍처의 기술 프리뷰 기능으로 jmc-core
및 owasp-java-encoder
패키지와 함께 배포됩니다.
JMC -core
는 JDK Flight Recording 파일을 구문 분석하고 쓰기 위한 라이브러리와 JDK(Java Discovery Protocol)를 통한 JVM(Java Virtual Machine) 검색용 라이브러리 등 JDK(Java Development Kit) 미션 제어를 위한 핵심 API를 제공하는 라이브러리입니다.
owasp-java-encoder
패키지는 Java에 대한 고성능 저차 컨텍스트 인코더 컬렉션을 제공합니다.
RHEL 9.2, jmc-core
및 owasp-java-encoder
는 명시적으로 활성화해야 하는 CRB(CodeReady Linux Builder) 리포지토리에서 사용할 수 있습니다. 자세한 내용은 CodeReady Linux Builder 내에서 콘텐츠를 활성화하고 사용하는 방법을 참조하십시오.
libabigail
: 유연한 배열 변환 경고 - 기술 프리뷰로 사용 가능
이번 업데이트를 통해 바이너리를 비교할 때 다음 억제 사양을 사용하여 true flexible 배열로 변환된 페크 유연한 배열과 관련된 경고를 억제할 수 있습니다.
[suppress_type] type_kind = struct has_size_change = true has_strict_flexible_array_data_member_conversion = true
[suppress_type]
type_kind = struct
has_size_change = true
has_strict_flexible_array_data_member_conversion = true
Jira:RHEL-16629[1]
9.10. IdM (Identity Management) 링크 복사링크가 클립보드에 복사되었습니다!
DNSSEC를 IdM에서 기술 프리뷰로 사용 가능
통합 DNS가 있는 IdM(Identity Management) 서버는 DNS 프로토콜의 보안을 강화하는 DNS 확장 프로그램 세트인 DNSSEC(DNS Security Extensions)를 구현합니다. IdM 서버에서 호스팅되는 DNS 영역은 DNSSEC를 사용하여 자동으로 로그인할 수 있습니다. 암호화 키가 자동으로 생성되고 순환됩니다.
DNSSEC로 DNS 영역을 보호하기로 결정한 사용자는 다음 문서를 읽고 따르는 것이 좋습니다.
통합 DNS가 있는 IdM 서버는 DNSSEC를 사용하여 다른 DNS 서버에서 얻은 DNS 응답을 검증합니다. 이는 권장되는 이름 지정 방식에 따라 구성되지 않은 DNS 영역의 가용성에 영향을 미칠 수 있습니다.
ACME를 기술 프리뷰로 사용 가능
ACME(Automated Certificate Management Environment) 서비스는 이제 IdM(Identity Management)에서 기술 프리뷰로 사용할 수 있습니다. ACME는 자동 식별자 검증 및 인증서 발행을 위한 프로토콜입니다. 이는 인증서 수명을 줄이고 인증서 라이프사이클 관리에서 수동 프로세스를 방지하여 보안을 개선하는 것입니다.
RHEL에서 ACME 서비스는 RHCS(Red Hat Certificate System) PKI ACME 응답자를 사용합니다. RHCS ACME 하위 시스템은 IdM 배포의 모든 CA(인증 기관) 서버에 자동으로 배포되지만 관리자가 이를 활성화할 때까지 서비스 요청은 수행하지 않습니다. RHCS는 ACME 인증서를 발행할 때 acmeIPAServerCert
프로필을 사용합니다. 발급된 인증서의 유효 기간은 90일입니다. ACME 서비스를 활성화하거나 비활성화하면 전체 IdM 배포에 영향을 미칩니다.
모든 서버가 RHEL 8.4 이상을 실행하는 IdM 배포에서만 ACME를 활성화하는 것이 좋습니다. 이전 RHEL 버전에는 ACME 서비스가 포함되어 있지 않으므로 혼합 버전 배포에서 문제가 발생할 수 있습니다. 예를 들어 ACME가 없는 CA 서버는 다른 DNS Subject Alternative Name(SAN)을 사용하므로 클라이언트 연결이 실패할 수 있습니다.
현재 RHCS는 만료된 인증서를 제거하지 않습니다. ACME 인증서는 90일 후에 만료되므로 만료된 인증서는 누적될 수 있으며 이는 성능에 영향을 미칠 수 있습니다.
전체 IdM 배포에서 ACME를 활성화하려면
ipa-acme-manage enable
명령을 사용합니다.ipa-acme-manage enable
# ipa-acme-manage enable The ipa-acme-manage command was successful
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 전체 IdM 배포에서 ACME를 비활성화하려면
ipa-acme-manage disable
명령을 사용합니다.ipa-acme-manage disable
# ipa-acme-manage disable The ipa-acme-manage command was successful
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ACME 서비스가 설치되어 있고 활성화되어 있는지 확인하려면
ipa-acme-manage status
명령을 사용합니다.ipa-acme-manage status
# ipa-acme-manage status ACME is enabled The ipa-acme-manage command was successful
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Bugzilla:2084181[1]
9.11. 데스크탑 링크 복사링크가 클립보드에 복사되었습니다!
64비트 ARM 아키텍처용 GNOME은 기술 프리뷰로 사용 가능
64비트 ARM 아키텍처에서 GNOME 데스크탑 환경은 기술 프리뷰로 사용할 수 있습니다.
이제 VNC를 사용하여 64비트 ARM 서버의 데스크탑 세션에 연결할 수 있습니다. 따라서 그래픽 애플리케이션을 사용하여 서버를 관리할 수 있습니다.
제한된 그래픽 애플리케이션 세트는 64비트 ARM에서 사용할 수 있습니다. 예를 들면 다음과 같습니다.
- Firefox 웹 브라우저
-
Red Hat Subscription Manager (
subscription-manager-cockpit
) -
방화벽 설정(
firewall-config
) -
디스크 사용량 분석기(
baobab
)
Firefox를 사용하여 서버의 Cockpit 서비스에 연결할 수 있습니다.
LibreOffice와 같은 특정 애플리케이션은 명령줄 인터페이스만 제공하며 그래픽 인터페이스는 비활성화되어 있습니다.
Jira:RHELPLAN-27394[1]
IBM Z 아키텍처용 GNOME은 기술 프리뷰로 사용 가능
IBM Z 아키텍처에서 GNOME 데스크탑 환경은 기술 프리뷰로 사용할 수 있습니다.
이제 VNC를 사용하여 IBM Z 서버의 데스크탑 세션에 연결할 수 있습니다. 따라서 그래픽 애플리케이션을 사용하여 서버를 관리할 수 있습니다.
IBM Z에서 제한된 그래픽 애플리케이션 세트를 사용할 수 있습니다. 예를 들면 다음과 같습니다.
- Firefox 웹 브라우저
-
Red Hat Subscription Manager (
subscription-manager-cockpit
) -
방화벽 설정(
firewall-config
) -
디스크 사용량 분석기(
baobab
)
Firefox를 사용하여 서버의 Cockpit 서비스에 연결할 수 있습니다.
LibreOffice와 같은 특정 애플리케이션은 명령줄 인터페이스만 제공하며 그래픽 인터페이스는 비활성화되어 있습니다.
Jira:RHELPLAN-27737[1]
9.12. 웹 콘솔 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 웹 콘솔에서 WireGuard 연결을 관리할 수 있음
RHEL 9.4부터 RHEL 웹 콘솔을 사용하여 WireGuard VPN 연결을 생성하고 관리할 수 있습니다. WireGuard 기술과 웹 콘솔 통합은 모두 지원되지 않는 기술 프리뷰입니다.
Jira:RHELDOCS-17520[1]
9.13. 가상화 링크 복사링크가 클립보드에 복사되었습니다!
중첩된 가상 머신 생성
중첩된 KVM 가상화는 RHEL 9가 있는 Intel, AMD64 및 IBM Z 호스트에서 실행되는 KVM 가상 머신(VM)용 기술 프리뷰로 제공됩니다. 이 기능을 사용하면 물리적 RHEL 9 호스트에서 실행되는 RHEL 7, RHEL 8 또는 RHEL 9 VM이 하이퍼바이저 역할을 하며 자체 VM을 호스팅할 수 있습니다.
Jira:RHELDOCS-17040[1]
KVM 가상 머신용 AMD SEV 및 SEV-ES
RHEL 9는 기술 프리뷰로 KVM 하이퍼바이저를 사용하는 AMD EPYC 호스트 시스템에 대한 SEV(Secure Encrypted Virtualization) 기능을 제공합니다. VM(가상 시스템)에서 활성화된 경우 SEV는 VM의 메모리를 암호화하여 호스트의 액세스로부터 보호합니다. 이렇게 하면 VM의 보안이 향상됩니다.
또한 SEV (SEV-ES)의 향상된 암호화 상태 버전도 기술 프리뷰로 제공됩니다. SEV-ES는 VM 실행이 중지되면 모든 CPU 레지스터 콘텐츠를 암호화합니다. 이렇게 하면 호스트에서 VM의 CPU 레지스터를 수정하거나 해당 항목에서 정보를 읽지 않습니다.
SEV 및 SEV-ES는 2 세대의 AMD EPYC CPU (코드명 Ramam) 이상에서만 작동합니다. 또한 RHEL 9에는 SEV 및 SEV-ES 암호화가 포함되어 있지만 SEV 및 SEV-ES 보안 테스트에는 포함되지 않습니다.
Jira:RHELPLAN-65217[1]
RHEL 게스트의 Intel TDX
이제 RHEL 9.2 이상 게스트 운영 체제에서 TDX(Intel Trust Domain Extension) 기능을 사용할 수 있습니다. 호스트 시스템이 TDX를 지원하는 경우 신뢰 도메인(TD)이라는 하드웨어 격리 RHEL 9 VM(가상 머신)을 배포할 수 있습니다. 그러나 TDX는 현재 kdump
에서는 작동하지 않으며 TDX를 활성화하면 VM에서 kdump
가 실패합니다.
Bugzilla:1955275[1]
RHEL의 통합 커널 이미지를 기술 프리뷰로 사용 가능
이제 기술 프리뷰로 VM(가상 머신)의 통합 커널 이미지(UKI)로 RHEL 커널을 가져올 수 있습니다. 통합 커널 이미지는 커널, initramfs 및 커널 명령줄을 하나의 서명된 바이너리 파일에 결합합니다.
영국I는 가상화 및 클라우드 환경, 특히 강력한 SecureBoot 기능이 필요한 기밀 VM에서 사용할 수 있습니다. UKI는 RHEL 9 리포지토리에서 kernel-uki-virt
패키지로 사용할 수 있습니다.
현재 RHEL UKI는 UEFI 부팅 구성에서만 사용할 수 있습니다.
Bugzilla:2142102[1]
ARM 64의 CPU 클러스터
이제 기술 프리뷰로 CPU 토폴로지에 여러 ARM 64 CPU 클러스터를 사용하는 KVM 가상 머신을 생성할 수 있습니다.
Jira:RHEL-7043[1]
Mellanox 가상 기능을 사용하여 VM을 실시간 마이그레이션하여 기술 프리뷰로 사용 가능
기술 프리뷰로 Mellanox 네트워킹 장치의 VF(가상 기능)를 사용하여 VM(가상 머신)을 실시간 마이그레이션할 수 있습니다.
이 기능은 현재 Mellanox CX-7 네트워킹 장치에서만 사용할 수 있습니다. Mellanox CX-7 네트워킹 장치의 VF는 새 mlx5_vfio_pci
드라이버를 사용하여 실시간 마이그레이션에 필요한 기능을 추가하고 libvirt
는 새 드라이버를 VF에 자동으로 바인딩합니다.
Jira:RHEL-13007[1]
9.14. 클라우드 환경의 RHEL 링크 복사링크가 클립보드에 복사되었습니다!
이제 Azure 기밀 VM에서 기술 프리뷰로 RHEL을 사용할 수 있습니다.
업데이트된 RHEL 커널을 사용하면 Microsoft Azure에서 RHEL 기밀 가상 머신(VM)을 기술 프리뷰로 생성하고 실행할 수 있습니다. 이제 새로 추가된 통합 커널 이미지(UKI)에서 Azure에서 암호화된 기밀 VM 이미지를 부팅할 수 있습니다. UKI는 RHEL 9 리포지토리에서 kernel-uki-virt
패키지로 사용할 수 있습니다.
현재 RHEL UKI는 UEFI 부팅 구성에서만 사용할 수 있습니다.
Jira:RHELPLAN-139800[1]
9.15. 컨테이너 링크 복사링크가 클립보드에 복사되었습니다!
podman-machine
명령은 지원되지 않음
가상 머신을 관리하는 podman-machine
명령은 기술 프리뷰로만 사용할 수 있습니다. 대신 명령줄에서 직접 Podman을 실행합니다.
Jira:RHELDOCS-16861[1]
다중 아키텍처 이미지 빌드는 기술 프리뷰로 사용 가능
다중 아키텍처 컨테이너 이미지를 만드는 데 사용할 수 있는 podman farm build
명령은 기술 프리뷰로 사용할 수 있습니다.
소규모은 UNIX podman 소켓이 실행되고 있는 머신 그룹입니다. 확장성의 노드는 서로 다른 아키텍처의 다른 머신을 가질 수 있습니다. podman farm build
명령은 podman build --arch --platform
명령보다 빠릅니다.
podman grow build
를 사용하여 다음 작업을 수행할 수 있습니다.
- 프로덕션 환경의 모든 노드에 이미지를 빌드합니다.Creates an image on all nodes in a body.
- 노드를 매니페스트 목록에 번들로 번들합니다.
-
모든 리전 노드에서
podman build
명령을 실행합니다. -
--tag
옵션을 사용하여 지정된 레지스트리로 이미지를 푸시합니다. - 로컬에서 매니페스트 목록을 생성합니다.
매니페스트 목록을 레지스트리에 내보냅니다.
매니페스트 목록에는 OpenStack에 있는 기본 아키텍처 유형당 하나의 이미지가 포함되어 있습니다.
Jira:RHELPLAN-154436[1]
새로운 rhel9/rhel-bootc
컨테이너 이미지를 기술 프리뷰로 사용할 수 있습니다.
이제 Red Hat Container Registry에서 rhel9/rhel-bootc
컨테이너 이미지를 기술 프리뷰로 사용할 수 있습니다. RHEL 부팅 가능한 컨테이너 이미지를 사용하면 정확히 컨테이너로 운영 체제를 빌드, 테스트 및 배포할 수 있습니다. RHEL 부팅 가능한 컨테이너 이미지는 다음과 같은 개선 사항으로 인해 기존 애플리케이션 UBI(Universal Base Images)와 다릅니다. RHEL 부팅 가능한 컨테이너 이미지에는 커널, initrd, 부트 로더, 펌웨어와 같은 부팅에 필요한 추가 구성 요소가 포함되어 있습니다. 기존 컨테이너 이미지에 대한 변경 사항은 없습니다. 자세한 내용은 Red Hat Ecosystem Catalog 에서 참조하십시오.
Jira:RHELDOCS-17803[1]
composefs 파일 시스템이 기술 프리뷰로 사용 가능
composefs 읽기 전용 파일 시스템을 기술 프리뷰로 사용할 수 있습니다. 일반적으로 현재 bootc/ostree 및 podman 프로젝트에서만 사용하기 위한 것입니다. composefs를 사용하면 이러한 프로젝트를 사용하여 읽기 전용 이미지를 생성 및 사용하고, 이미지 간에 파일 데이터를 공유하며, 런타임 시 이미지를 검증할 수 있습니다. 따라서 동일한 파일의 opportunistic 세분화된 공유를 사용하여 완전히 검증된 파일 시스템 트리가 마운트됩니다.
Jira:RHEL-18157[1]
10장. 더 이상 사용되지 않는 기능 링크 복사링크가 클립보드에 복사되었습니다!
더 이상 사용되지 않는 장치는 완전히 지원되므로 테스트 및 유지 관리되며 Red Hat Enterprise Linux 9 내에서 지원 상태가 변경되지 않은 상태로 유지됩니다. 그러나 이러한 장치는 다음 주요 버전 릴리스에서 지원되지 않을 수 있으며 현재 또는 향후 RHEL 주요 버전의 새 배포에는 권장되지 않습니다.
특정 주요 릴리스에서 더 이상 사용되지 않는 기능의 최신 목록은 최신 릴리스 설명서를 참조하십시오. 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux 라이프 사이클 및 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
패키지가 더 이상 사용되지 않으며 향후 사용이 권장되지 않는 경우가 있습니다. 특정 상황에서 패키지는 제품에서 제거할 수 있습니다. 제품 설명서에 더 이상 사용되지 않는 기능과 유사 또는 동일하거나 보다 고급 기능을 제공하는 최근 패키지가 지정된 권장 사항이 기재됩니다.
RHEL 8에는 존재하지만 RHEL 9에는 제거된 기능에 대한 자세한 내용은 RHEL 9 채택 시 고려 사항을 참조하십시오.
10.1. 설치 프로그램 및 이미지 생성 링크 복사링크가 클립보드에 복사되었습니다!
더 이상 사용되지 않는 Kickstart 명령
다음 Kickstart 명령이 더 이상 사용되지 않습니다.
-
timezone --ntpservers
-
timezone --nontp
-
logging --level
-
%packages --excludeWeakdeps
-
%packages --instLangs
-
%anaconda
-
pwpolicy
-
nvdimm
특정 옵션만 나열된 경우 기본 명령 및 기타 옵션을 계속 사용할 수 있으며 더 이상 사용되지 않습니다. Kickstart 파일에서 더 이상 사용되지 않는 명령을 사용하면 로그에 경고가 출력됩니다. inst.ksstrict
부팅 옵션을 사용하여 더 이상 사용되지 않는 명령 경고를 오류로 전환할 수 있습니다.
Bugzilla:1899167[1]
edge-commit
및 edge-container
블루프린트의 사용자 및 그룹 사용자 지정이 더 이상 사용되지 않음
이미지를 업그레이드하고 블루프린트에 사용자를 다시 지정하지 않으면 사용자 사용자 지정이 사라지기 때문에 블루프린트에 사용자 또는 그룹 사용자 지정은 edge-commit
및 edge-container
이미지 유형에 대해 더 이상 사용되지 않습니다.
edge-raw-image
,edge-installer
, edge-simplified-installer
이미지 유형과 같은 기존 OSTree 커밋을 배포하는 데 사용되는 사용자 또는 그룹 사용자 지정을 블루프린트에 지정하는 것은 계속 지원됩니다.
initial-setup
패키지가 더 이상 사용되지 않음
initial-setup
패키지는 Red Hat Enterprise Linux 9.3에서 더 이상 사용되지 않으며 다음 주요 RHEL 릴리스에서 제거됩니다. 대신 그래픽 사용자 인터페이스에 gnome-initial-setup
을 사용합니다.
Jira:RHELDOCS-16393[1]
inst.geoloc
부팅 옵션의 provider_hostip
및 provider_fedora_geoip
값은 더 이상 사용되지 않습니다.
inst.geoloc=
부팅 옵션에 GeoIP API를 지정한 provider_hostip
및 provider_fedora_geoip
값은 더 이상 사용되지 않습니다. 대체 방법으로 geolocation_provider=URL
옵션을 사용하여 설치 프로그램 구성 파일에 필요한 geolocation을 설정할 수 있습니다. inst.geoloc=0
옵션을 사용하여 geolocation을 비활성화할 수 있습니다.
글로벌 핫 키를 사용하여 Anaconda GUI에서 스크린샷을 캡처하는 것은 더 이상 사용되지 않습니다.
이전에는 글로벌 핫 키를 사용하여 Anaconda GUI의 스크린샷을 캡처할 수 있었습니다. 즉, 추가 사용을 위해 설치 환경에서 스크린샷을 수동으로 추출할 수 있었습니다. 이 기능은 더 이상 사용되지 않습니다.
Jira:RHELDOCS-17166[1]
Anaconda 기본 도움말이 더 이상 사용되지 않음
Anaconda 설치 중에 사용할 수 있는 모든 Anaconda 사용자 인터페이스에 대한 대화 및 허브의 기본 제공 문서는 더 이상 사용되지 않습니다. 대신 Anaconda 사용자 인터페이스는 자체 설명적이며 사용자는 향후 주요 RHEL 릴리스에서 공식 RHEL 문서를 참조할 수 있습니다.
Jira:RHELDOCS-17309[1]
NVDIMM 장치 지원이 더 이상 사용되지 않음
이전에는 설치 프로그램에서 설치 중에 NVDIMM 장치를 재구성할 수 있었습니다. Kickstart 및 GUI 설치 중에 NVDIMM 장치에 대한 지원은 더 이상 사용되지 않으며 다음 주요 RHEL 릴리스에서 제거됩니다. 섹터 모드의 NVDIMM 장치는 설치 프로그램에서 계속 표시되고 사용할 수 있습니다.
설치 환경의 드라이버 업데이트 디스크에서 업데이트된 드라이버를 로드할 수 없음
설치 초기 RAM 디스크의 동일한 드라이버가 이미 로드된 경우 드라이버 업데이트 디스크의 새 버전의 드라이버가 로드되지 않을 수 있습니다. 결과적으로 업데이트된 버전의 드라이버를 설치 환경에 적용할 수 없습니다.
이 문제를 해결하려면 inst.dd
옵션과 함께 modprobe.blacklist=
커널 명령줄 옵션을 사용합니다. 예를 들어 드라이버 업데이트 디스크에서 virtio_blk
드라이버의 업데이트된 버전이 로드되었는지 확인하려면 modprobe.blacklist=virtio_blk
를 사용하여 드라이버 업데이트 디스크의 드라이버를 적용합니다. 결과적으로 시스템은 업데이트된 버전의 드라이버를 로드하여 설치 환경에서 사용할 수 있습니다.
10.2. 보안 링크 복사링크가 클립보드에 복사되었습니다!
SHA-1은 암호화 목적으로 더 이상 사용되지 않습니다.
암호화 목적으로 SHA-1 메시지 다이제스트의 사용은 RHEL 9에서 더 이상 사용되지 않습니다. SHA-1에 의해 생성된 다이제스트는 해시 충돌을 찾기 위해 문서화된 많은 성공적인 공격으로 인해 안전한 것으로 간주되지 않습니다. RHEL 핵심 암호화 구성 요소는 기본적으로 SHA-1을 사용하여 더 이상 서명을 생성하지 않습니다. RHEL 9의 애플리케이션은 보안 관련 사용 사례에서 SHA-1을 사용하지 않도록 업데이트되었습니다.
예외적으로 HMAC-SHA1 메시지 인증 코드와 UUID(Universal Unique Identifier) 값은 SHA-1을 사용하여 계속 생성할 수 있습니다. 이러한 사용 사례에서는 현재 보안 위험이 발생하지 않기 때문입니다. SHA-1은 Kerberos 및 Cryostat-2와 같은 중요한 상호 운용성 및 호환성 문제와 관련된 제한된 경우에 사용할 수도 있습니다. 자세한 내용은 RHEL 9 보안 강화 문서의 FIPS 140-3 섹션과 호환되지 않는 암호화를 사용하는 RHEL 애플리케이션 목록을 참조하십시오.
기존 또는 타사 암호화 서명을 확인하는 데 SHA-1을 사용해야 하는 경우 다음 명령을 입력하여 활성화할 수 있습니다.
update-crypto-policies --set DEFAULT:SHA1
# update-crypto-policies --set DEFAULT:SHA1
또는 시스템 전체 암호화 정책을 LEGACY
정책으로 전환할 수 있습니다. LEGACY
는 안전하지 않은 다른 많은 알고리즘도 활성화합니다.
Jira:RHELPLAN-110763[1]
fapolicyd.rules
가 더 이상 사용되지 않음
허용 및 실행 규칙을 포함하는 파일의 /etc/fapolicyd/rules.d/
디렉토리에서 /etc/fapolicyd/fapolicyd.rules
파일을 대체합니다. fagenrules
스크립트는 이 디렉터리의 모든 구성 요소 규칙 파일을 /etc/fapolicyd/compiled.rules
파일에 병합합니다. /etc/fapolicyd/fapolicyd.trust
의 규칙은 여전히 fapolicyd
프레임 워크에서 처리되지만 이전 버전과의 호환성을 위해서만 처리됩니다.
RHEL 9에서 SCP가 더 이상 사용되지 않음
보안 복사 프로토콜(SCP)은 알려진 보안 취약점이 있기 때문에 더 이상 사용되지 않습니다. SCP API는 RHEL 9 라이프사이클에서 계속 사용할 수 있지만 이를 사용하면 시스템 보안이 줄어듭니다.
-
scp
유틸리티에서 SCP는 기본적으로 SSH 파일 전송 프로토콜(SFTP)으로 교체됩니다. - OpenSSH 제품군은 RHEL 9에서는 SCP를 사용하지 않습니다.
-
SCP는
libssh
라이브러리에서 더 이상 사용되지 않습니다.
Jira:RHELPLAN-99136[1]
OpenSSL을 사용하려면 FIPS 모드에서 RSA 암호화를 위한 패딩이 필요합니다.
OpenSSL은 FIPS 모드에서 패딩하지 않고 RSA 암호화를 더 이상 지원하지 않습니다. 패딩이 없는 RSA 암호화는 드문 일이 아니며 거의 사용되지 않습니다. RSA(RSASVE)가 포함된 키 캡슐화는 패딩을 사용하지 않지만 계속 지원됩니다.
OpenSSL이 Engines API 사용 중단
OpenSSL 3.0 TLS 툴킷은 Engines API를 더 이상 사용되지 않습니다. Engines 인터페이스는 공급자 API로 대체됩니다. 애플리케이션과 기존 엔진을 공급자로 마이그레이션하는 작업이 진행 중입니다. 더 이상 사용되지 않는 엔진 API는 향후 주요 릴리스에서 제거될 수 있습니다.
Jira:RHELDOCS-17958[1]
OpenSSL-pkcs11
이 더 이상 사용되지 않음
더 이상 사용되지 않는 OpenSSL 엔진을 Provider API로 지속적으로 마이그레이션하는 과정의 일환으로 pkcs11-provider
패키지는 openssl-pkcs11
패키지 (engine_pkcs11
)를 대체합니다. openssl-pkcs11
패키지는 더 이상 사용되지 않습니다. openssl-pkcs11
패키지는 향후 주요 릴리스에서 제거될 수 있습니다.
Jira:RHELDOCS-16716[1]
RHEL 8 및 9 OpenSSL 인증서 및 서명 컨테이너는 더 이상 사용되지 않음
Red Hat Ecosystem Catalog의 ubi8/openssl
및 ubi9/openssl
리포지토리에서 사용 가능한 OpenSSL 이식 인증서 및 서명 컨테이너는 이제 수요가 부족하기 때문에 더 이상 사용되지 않습니다.
Jira:RHELDOCS-17974[1]
SASL의 digest-MD5는 더 이상 사용되지 않음
SASL(Simple Authentication Security Layer) 프레임워크의 Digest-MD5 인증 메커니즘은 더 이상 사용되지 않으며 향후 주요 릴리스의 cyrus-sasl
패키지에서 제거될 수 있습니다.
Bugzilla:1995600[1]
OpenSSL은 MD2, MD4, MDC2, Whirlpool, Blowfish, CAST, DES, IDEA, RC2, RC4, RC5, SEED 및 PBKDF1을 사용 중단
OpenSSL 프로젝트는 안전하지 않거나 일반적으로 사용되지 않거나 둘 다이므로 암호화 알고리즘 세트를 더 이상 사용하지 않습니다. Red Hat은 이러한 알고리즘의 사용을 권장하지 않으며 RHEL 9에서는 암호화된 데이터를 마이그레이션하여 새 알고리즘을 사용하기 위해 이를 제공합니다. 사용자는 시스템 보안을 위해 이러한 알고리즘에 의존해서는 안 됩니다.
다음 알고리즘의 구현은 OpenSSL: MD2, MD4, MDC2, Whirlpool, Blowfish, CAST, DES, IDEA, RC2, RC4, RC5, SEED, PBKDF1의 레거시 공급자로 이동되었습니다.
레거시 공급자를 로드하고 더 이상 사용되지 않는 알고리즘에 대한 지원을 활성화하는 방법에 대한 지침은 /etc/pki/tls/openssl.cnf
구성 파일을 참조하십시오.
/etc/system-fips
가 더 이상 사용되지 않음
/etc/system-fips
파일을 통해 FIPS 모드를 나타내는 지원이 제거되었으며 파일은 향후 RHEL 버전에 포함되지 않습니다. FIPS 모드에서 RHEL을 설치하려면 시스템 설치 중에 fips=1
매개변수를 커널 명령줄에 추가합니다. fips-mode-setup --check
명령을 사용하여 RHEL이 FIPS 모드에서 작동하는지 확인할 수 있습니다.
Jira:RHELPLAN-103232[1]
libcrypt.so.1
이 더 이상 사용되지 않음
libcrypt.so.1
라이브러리는 더 이상 사용되지 않으며 향후 RHEL 버전에서 제거될 수 있습니다.
10.3. 서브스크립션 관리 링크 복사링크가 클립보드에 복사되었습니다!
subscription-manager 레지스터
의 더 이상 사용되지 않는 --token
옵션은 2024년 11월 말에 작동하지 않습니다.
subscription-manager register
명령의 더 이상 사용되지 않는 --token=<TOKEN
> 옵션은 2024년 11월 말부터 지원되는 인증 방법이 아닙니다. 기본 인타이틀먼트 서버 subscription.rhsm.redhat.com
은 더 이상 토큰 기반 인증을 허용하지 않습니다. 결과적으로 subscription-manager register --token=<TOKEN
> 을 사용하는 경우 다음 오류 메시지와 함께 등록이 실패합니다.
Token authentication not supported by the entitlement server
Token authentication not supported by the entitlement server
시스템을 등록하려면 subscription-manager register
명령에 --username / --password
OR --org / --activationkey
를 포함하여 지원되는 다른 권한 부여 방법을 사용하십시오.
10.4. 쉘 및 명령행 툴 링크 복사링크가 클립보드에 복사되었습니다!
dump
패키지의 dump
유틸리티가 더 이상 사용되지 않음
파일 시스템의 백업에 사용되는 덤프
유틸리티는 더 이상 사용되지 않으며 RHEL 9에서는 사용할 수 없습니다.
RHEL 9에서는 ext2, ext3 및 ext4 파일 시스템에서 전체 및 안전한 백업을 제공하는 사용 유형에 따라 tar
,dd
또는 bacula
, backup 유틸리티를 사용하는 것이 좋습니다.
dump
패키지의 복원
유틸리티는 RHEL 9에서 사용 가능하고 지원되며 복원
패키지로 사용할 수 있습니다.
Bugzilla:1997366[1]
Bacula의 SQLite 데이터베이스 백엔드가 더 이상 사용되지 않음
Bacula 백업 시스템은 PostgreSQL, MySQL, SQLite 등 여러 데이터베이스 백엔드를 지원했습니다. SQLite 백엔드는 더 이상 사용되지 않으며 이후 RHEL 릴리스에서 지원되지 않습니다. 대신 다른 백엔드(PostgreSQL 또는 MySQL) 중 하나로 마이그레이션하고 새 배포에서 SQLite 백엔드를 사용하지 않습니다.
Cryo stat
패키지의 %vmeff
메트릭이 더 이상 사용되지 않음
페이지 회수 효율성을 측정하는 %vmeff
메트릭은 향후 주요 RHEL 버전에서 더 이상 지원되지 않습니다. Cryostat는 이후 커널 버전에서 제공하는 모든 관련
/proc/vm
값을 구문 분석하지 않기 때문에 stat
sar -B
명령에서 반환된 %vmeff
열의 값이 올바르지 않습니다.
/proc/vmstat
파일에서 %vmeff
값을 수동으로 계산할 수 있습니다. 자세한 내용은 sar(1)
툴이 RHEL 8 및 RHEL 9에서 %
100 %를 초과하는 %를 보고하는이유를 참조하십시오.
Jira:RHELDOCS-17015[1]
ReaR 구성 파일에서 TMPDIR
변수 설정은 더 이상 사용되지 않습니다.
내보내기
환경 변수를 설정하는 것은 더 이상 사용되지 않습니다.
TMPDIR
=… 와 같은 문을 사용하여 /etc/rear/local.conf
또는 /etc/rear/site.conf
ReaR 구성 파일에서 TMPDIR
ReaR 임시 파일의 사용자 지정 디렉터리를 지정하려면 ReaR을 실행하기 전에 쉘 환경에서 변수를 내보냅니다. 예를 들어 내보내기 TMPDIR=…
문을 실행한 다음 동일한 쉘 세션 또는 스크립트에서 rear
명령을 실행합니다.
Jira:RHELDOCS-18049[1]
RHEL 9에서 cgroupsv1
이 더 이상 사용되지 않음
cgroup
은 프로세스 추적, 시스템 리소스 할당 및 파티셔닝에 사용되는 커널 하위 시스템입니다. systemd 서비스 관리자는 cgroups v1
모드 및 cgroups v2
모드에서 부팅을 지원합니다. Red Hat Enterprise Linux 9에서 기본 모드는 v2
입니다. Red Hat Enterprise Linux 10에서 systemd는 cgroups v1
모드에서 부팅을 지원하지 않으며 cgroup v2
모드만 사용할 수 있습니다.
Jira:RHELDOCS-17545[1]
10.5. 인프라 서비스 링크 복사링크가 클립보드에 복사되었습니다!
클라이언트 측 및 서버 측 DHCP 패키지가 더 이상 사용되지 않음
인터넷 시스템 컨소시엄(ISC)은 2022년 말 ISC DHCP에 대한 유지 관리 종료를 발표했습니다. 결과적으로 Red Hat은 RHEL 9에서 클라이언트 측 및 서버 측 DHCP 패키지를 사용 중단하고 RHEL의 이후 주요 버전에서 배포하지 않기로 결정했습니다. 고객은 dhcpcd
및 ISC Kea
와 같은 사용 가능한 대안으로의 마이그레이션을 준비해야 합니다.
Jira:RHELDOCS-17135[1]
sendmail
,libotr
,mod_security
및 spamassin
패키지는 더 이상 사용되지 않습니다.
다음 패키지는 RHEL 9에서 더 이상 사용되지 않으며 이후 주요 RHEL 버전에서는 배포되지 않습니다.
- sendmail - 지원되는 postfix 메일 데몬으로 마이그레이션하는 것이 좋습니다.
- libotr
- mod_security
- spamassassin
Jira:RHEL-22385[1]
10.6. 네트워킹 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9에서 네트워크 팀이 더 이상 사용되지 않음
teamd
서비스와 libteam
라이브러리는 Red Hat Enterprise Linux 9에서 더 이상 사용되지 않으며 다음 주요 릴리스에서 제거됩니다. 대신 네트워크 팀 대신 본딩을 구성합니다.
Red Hat은 유사한 기능을 갖춘 두 가지 기능, 본딩 및 팀 유지를 방지하기 위해 커널 기반 본딩에 중점을 두고 있습니다. 본딩 코드는 높은 고객 채택을 보유하고 있으며 적극적인 커뮤니티 개발을 제공합니다. 결과적으로 본딩 코드는 개선 사항 및 업데이트를 수신합니다.
팀을 본딩으로 마이그레이션하는 방법에 대한 자세한 내용은 네트워크 팀 구성을 네트워크 본딩으로 마이그레이션 을 참조하십시오.
Bugzilla:1935544[1]
ifcfg
형식의 NetworkManager 연결 프로필이 더 이상 사용되지 않음
RHEL 9.0 이상에서는 ifcfg
형식의 연결 프로필이 더 이상 사용되지 않습니다. 다음 주요 RHEL 릴리스에서는 이 형식에 대한 지원이 제거됩니다. 그러나 RHEL 9에서는 수정 시 NetworkManager는 이 형식의 기존 프로필을 계속 처리하고 업데이트합니다.
기본적으로 NetworkManager는 이제 /etc/NetworkManager/system-connections/
디렉터리에 있는 키 파일 형식으로 연결 프로필을 저장합니다. ifcfg
형식과 달리 키 파일 형식은 NetworkManager가 제공하는 모든 연결 설정을 지원합니다. 키 파일 형식 및 프로필을 마이그레이션하는 방법에 대한 자세한 내용은 키 파일 형식의 NetworkManager 연결 프로필을 참조하십시오.
Bugzilla:1894877[1]
firewalld
의 iptables
백엔드가 더 이상 사용되지 않음
RHEL 9에서는 iptables
프레임워크가 더 이상 사용되지 않습니다. 결과적으로 firewalld
의 iptables
백엔드 및 직접 인터페이스
도 더 이상 사용되지 않습니다. 직접 인터페이스
대신 firewalld
의 기본 기능을 사용하여 필요한 규칙을 구성할 수 있습니다.
firewalld
잠금 기능은 더 이상 사용되지 않습니다.
firewalld
의 잠금 기능은 root
로 실행되는 프로세스가 허용 목록에 추가되지 않도록 할 수 없기 때문에 더 이상 사용되지 않습니다. 잠금 기능은 향후 주요 RHEL 릴리스에서 제거될 수 있습니다.
connection.master
,connection.slave-type
및 connection.autoconnect-slaves
속성은 더 이상 사용되지 않습니다.
Red Hat은 자각적인 언어를 사용하기 위해 최선을 다하고 있습니다. 따라서 connection.master
,connection.slave-type
및 connection.autoconnect-slaves
속성의 이름이 변경되었습니다. 이전 버전과의 호환성을 보장하기 위해 이전 속성 이름을 새 속성에 매핑하는 별칭이 생성되었습니다.
-
connection.master
는connection.controller
의 별칭입니다. -
connection.slave-type
은connection.port-type
의 별칭입니다. -
connection.autoconnect-slaves
는connection.autoconnect-ports
의 별칭입니다.
connection.master
,connection.slave-type
, connection.autoconnect-slaves
별칭은 더 이상 사용되지 않으며 향후 RHEL 버전에서 제거됩니다.
Jira:RHEL-17619[1]
PF_KEYv2
커널 API가 더 이상 사용되지 않음
애플리케이션은 PV_KEYv2
및 최신 netlink
API를 사용하여 커널의 IPsec 구현을 구성할 수 있습니다. PV_KEYv2
는 적극적으로 업스트림에서 유지 관리되지 않으며 최신 암호, 오프로드 및 확장된 시퀀스 번호 지원과 같은 중요한 보안 기능을 놓치고 있습니다. 결과적으로 RHEL 9.3부터 PV_KEYv2
API가 더 이상 사용되지 않으며 다음 주요 RHEL 릴리스에서 제거됩니다. 애플리케이션에서 이 커널 API를 사용하는 경우 최신 netlink
API를 대안으로 사용하도록 마이그레이션합니다.
Jira:RHEL-1015[1]
10.7. 커널 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9에서는 CloudEvent 캡슐화가 더 이상 사용되지 않음
ATM(Asynchronous Transfer Mode) 캡슐화를 사용하면 SRV Adaptation Layer 5(AAL-5)에 Layer-2(Point-to-Point Protocol, Ethernet) 또는 Layer-3(IP) 연결을 사용할 수 있습니다. Red Hat은 RHEL 7 이후 Cryostat NIC 드라이버를 지원하지 않습니다. Cryostat 구현에 대한 지원은 RHEL 9에서 중단되고 있습니다. 이러한 프로토콜은 현재 칩셋에서만 사용되며, 이는 ADSL 기술을 지원하며 제조업체에 의해 단계적으로 제거되고 있습니다. 따라서 CloudEvent 캡슐화는 Red Hat Enterprise Linux 9에서 더 이상 사용되지 않습니다.
자세한 내용은 PPP Over AAL5, CryostatAdaptation Layer 5를 통한 Multiprotocol Encapsulation, and Classical IP and ARP over AAL5 를 참조하십시오.
kexec-tools
의 kexec_load
시스템 호출이 더 이상 사용되지 않음
두 번째 커널을 로드하는 kexec_load
시스템 호출은 향후 RHEL 릴리스에서 지원되지 않습니다. kexec_file_load
시스템 호출은 kexec_load
를 대체하며 이제 모든 아키텍처의 기본 시스템 호출입니다.
자세한 내용은 Is kexec_load supported in RHEL9? 를 참조하십시오.
Bugzilla:2113873[1]
RHEL 9에서 네트워크 팀이 더 이상 사용되지 않음
teamd
서비스와 libteam
라이브러리는 Red Hat Enterprise Linux 9에서 더 이상 사용되지 않으며 다음 주요 릴리스에서 제거됩니다. 대신 네트워크 팀 대신 본딩을 구성합니다.
Red Hat은 유사한 기능을 갖춘 두 가지 기능, 본딩 및 팀 유지를 방지하기 위해 커널 기반 본딩에 중점을 두고 있습니다. 본딩 코드는 높은 고객 채택을 보유하고 있으며 적극적인 커뮤니티 개발을 제공합니다. 결과적으로 본딩 코드는 개선 사항 및 업데이트를 수신합니다.
팀을 본딩으로 마이그레이션하는 방법에 대한 자세한 내용은 네트워크 팀 구성을 네트워크 본딩으로 마이그레이션 을 참조하십시오.
Bugzilla:2013884[1]
10.8. 파일 시스템 및 스토리지 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9.0에서 제거된 lvm2-activation-generator
및 생성된 서비스
lvm2-activation-generator
프로그램과 생성된 서비스 lvm2-activation
,lvm2-activation-early
, lvm2-activation-net
은 RHEL 9.0에서 제거됩니다. 서비스를 활성화하는 데 사용되는 lvm.conf event_activation
설정은 더 이상 작동하지 않습니다. 볼륨 그룹을 자동 활성화하는 유일한 방법은 이벤트 기반 활성화입니다.
RHEL 9에서 영구 메모리 개발 키트(pmdk
) 및 지원 라이브러리가 더 이상 사용되지 않음
pmdk
는 영구 메모리 장치 관리 및 액세스를 단순화하기 위한 시스템 관리자 및 애플리케이션 개발자를 위한 라이브러리 및 툴 컬렉션입니다. RHEL 9에서는 pmdk
및 지원 라이브러리가 더 이상 사용되지 않습니다. 여기에는 -debuginfo
패키지도 포함됩니다.
nvml
소스 패키지를 포함하여 pmdk
에서 생성한 다음 바이너리 패키지 목록은 더 이상 사용되지 않습니다.
-
libpmem
-
libpmem-devel
-
libpmem-debug
-
libpmem2
-
libpmem2-devel
-
libpmem2-debug
-
libpmemblk
-
libpmemblk-devel
-
libpmemblk-debug
-
libpmemlog
-
libpmemlog-devel
-
libpmemlog-debug
-
libpmemobj
-
libpmemobj-devel
-
libpmemobj-debug
-
libpmempool
-
libpmempool-devel
-
libpmempool-debug
-
pmempool
-
daxio
-
pmreorder
-
pmdk-convert
-
libpmemobj++
-
libpmemobj++-devel
-
libpmemobj++-doc
Jira:RHELDOCS-16432[1]
md-linear
및 md-faulty
모듈이 더 이상 사용되지 않음
다음 MD RAID 커널 모듈이 더 이상 사용되지 않으며 향후 주요 RHEL 릴리스에서 제거될 예정입니다.
-
CONFIG_MD_LINEAR
또는md-linear
모듈은 여러 드라이브를 연결하여 단일 멤버 디스크가 가득 차면 모든 디스크가 가득 찰 때까지 다음 디스크에 데이터가 기록됩니다. -
CONFIG_MD_FAULTY
또는md-faulty
모듈은 때때로 읽기 또는 쓰기 오류를 반환하는 블록 장치를 테스트합니다. 테스트에 유용합니다.
Jira:RHEL-30730[1]
VDO sysfs
매개변수가 더 이상 사용되지 않음
VDO(Virtual Data Optimizer) sysfs
매개변수는 더 이상 사용되지 않으며 향후 주요 RHEL 릴리스에서 제거될 예정입니다. log_level
을 제외하고 kvdo
모듈에 대한 모든 모듈 수준 sysfs
매개변수가 제거됩니다. 개별 dm-vdo
대상의 경우 VDO와 관련된 모든 sysfs
매개변수도 제거됩니다. 모든 DM 대상에 공통된 매개변수는 변경되지 않습니다. 제거된 모듈 수준 매개변수를 업데이트하여 현재 설정된 dm-vdo
대상의 구성 값은 더 이상 변경할 수 없습니다.
dm-vdo
대상의 통계 및 구성 값은 더 이상 sysfs
를 통해 액세스할 수 없습니다. 그러나 이러한 값은 dmsetup 메시지 통계 , dmsetup
상태 , dmsetup
테이블 dmsetup
명령을 사용하여 계속 액세스할 수 있습니다.
10.9. 동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버 링크 복사링크가 클립보드에 복사되었습니다!
libdb
가 더 이상 사용되지 않음
RHEL 8 및 RHEL 9는 현재 LGPLv2 라이센스에 따라 배포되는 Berkeley DB (libdb
) 버전 5.3.28을 제공합니다. 업스트림 Berkeley DB 버전 6은 AGPLv3 라이센스에서 사용할 수 있으며 이는 더 제한적입니다.
libdb
패키지는 RHEL 9부터 더 이상 사용되지 않으며 향후 주요 RHEL 릴리스에서 제공되지 않을 수 있습니다.
또한 RHEL 9의 libdb
에서 암호화 알고리즘이 제거되었으며 RHEL 9에서 여러 libdb
종속 항목이 제거되었습니다.
libdb
사용자는 다른 키-값 데이터베이스로 마이그레이션하는 것이 좋습니다. 자세한 내용은 RHEL의 더 이상 사용되지 않는 Berkeley DB (libdb)의 기술 자료 문서 사용 가능 대체 항목을 참조하십시오.
Bugzilla:1927780[1], Jira:RHELPLAN-80695, Bugzilla:1974657
10.10. 컴파일러 및 개발 도구 링크 복사링크가 클립보드에 복사되었습니다!
2048보다 작은 키 크기는 Go의 FIPS 모드에서 openssl
3.0에서 더 이상 사용되지 않습니다.
2048비트보다 작은 키 크기는 openssl
3.0에서 더 이상 사용되지 않으며 Go의 FIPS 모드에서 더 이상 작동하지 않습니다.
일부 PKCS1
v1.5 모드는 Go의 FIPS 모드에서 더 이상 사용되지 않음
일부 PKCS1
v1.5 모드는 암호화를 위해 FIPS-140-3
에서 승인되지 않으며 비활성화되어 있습니다. Go의 FIPS 모드에서 더 이상 작동하지 않습니다.
Bugzilla:2092016[1]
32비트 패키지가 더 이상 사용되지 않음
32비트 multilib 패키지에 대한 연결은 더 이상 사용되지 않습니다. *.i686
패키지는 Red Hat Enterprise Linux 9의 라이프 사이클 동안 계속 지원되지만 RHEL의 다음 주요 버전에서 제거됩니다.
Jira:RHELDOCS-17917[1]
10.11. IdM (Identity Management) 링크 복사링크가 클립보드에 복사되었습니다!
OpenDNSSec의 SHA-1
이 더 이상 사용되지 않음
OpenDNSSec은 SHA-1
알고리즘을 사용하여 디지털 서명 및 인증 레코드 내보내기를 지원합니다. SHA-1
알고리즘 사용은 더 이상 지원되지 않습니다. RHEL 9 릴리스에서는 OpenDNSSec의 SHA-1
이 더 이상 사용되지 않으며 향후 마이너 릴리스에서 제거될 수 있습니다. 또한 OpenDNSSec 지원은 Red Hat Identity Management와의 통합으로 제한됩니다. OpenDNSSec은 독립 실행형으로 지원되지 않습니다.
SSSD 암시적 파일 공급자 도메인은 기본적으로 비활성화되어 있습니다.
/etc/shadow
및 /etc/groups
의 그룹 정보와 같은 로컬 파일에서 사용자 정보를 검색하는 SSSD 암시적 파일 공급자 도메인은 기본적으로 비활성화되어 있습니다.
SSSD를 사용하여 로컬 파일에서 사용자 및 그룹 정보를 검색하려면 다음을 수행합니다.
SSSD를 구성합니다. 다음 옵션 중 하나를 선택합니다.
sssd.conf
구성 파일에서id_provider=files
옵션을 사용하여 로컬 도메인을 명시적으로 구성합니다.[domain/local] id_provider=files ...
[domain/local] id_provider=files ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sssd.conf
구성파일에서
enable_files_domain=true
를 설정하여 파일 공급자를 활성화합니다.[sssd] enable_files_domain = true
[sssd] enable_files_domain = true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
이름 서비스 전환을 구성합니다.
authselect enable-feature with-files-provider
# authselect enable-feature with-files-provider
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 정보의 캐싱 및 동기화를 복원하려면 심볼릭 링크를 생성하여
shadow-utils
와sssd_cache
간의 통합을 활성화합니다.ln -s /usr/sbin/sss_cache /usr/sbin/sss_cache_shadow_utils
# ln -s /usr/sbin/sss_cache /usr/sbin/sss_cache_shadow_utils
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Jira:RHELPLAN-100639[1]
SSSD 파일
공급자가 더 이상 사용되지 않음
RHEL(Red Hat Enterprise Linux) 9에서는 SSSD 파일
공급자가 더 이상 사용되지 않습니다. 파일
공급자는 향후 RHEL 릴리스에서 제거될 수 있습니다.
Jira:RHELPLAN-139805[1]
AD 및 IdM에서 열거
기능이 더 이상 사용되지 않음
열거
기능을 사용하면 AD(Active Directory), IdM(Identity Management) 및 LDAP 공급자에 대한 인수 없이 getent passwd
또는 getent group
명령을 사용하여 모든 사용자 또는 그룹을 나열할 수 있습니다. RHEL(Red Hat Enterprise Linux) 9의 AD 및 IdM에 대해 열거
기능에 대한 지원이 더 이상 사용되지 않습니다. RHEL 10에서 AD 및 IdM에 대해 열거
기능이 제거됩니다.
libss_simpleifp
하위 패키지가 더 이상 사용되지 않음
RHEL(Red Hat Enterprise Linux) 9에서 libss_simpleifp.so
라이브러리를 제공하는 libss_simpleifp 하위 패키지는 더 이상 사용되지 않습니다.
libss_simpleifp
하위 패키지는 향후 RHEL 릴리스에서 제거될 수 있습니다.
SMB1 프로토콜은 Samba에서 더 이상 사용되지 않음
Samba 4.11부터 비보안 SMB1(Server Message Block 버전 1) 프로토콜은 더 이상 사용되지 않으며 향후 릴리스에서 제거됩니다.
보안을 개선하기 위해 기본적으로 SMB1은 Samba 서버 및 클라이언트 유틸리티에서 비활성화되어 있습니다.
Jira:RHELDOCS-16612[1]
10.12. 데스크탑 링크 복사링크가 클립보드에 복사되었습니다!
GTK 2가 더 이상 사용되지 않음
레거시 GTK 2 툴킷 및 다음과 같은 관련 패키지가 더 이상 사용되지 않습니다.
-
adwaita-gtk2-theme
-
gnome-common
-
gtk2
-
gtk2-immodules
-
hexchat
현재 다른 여러 패키지는 GTK 2에 의존합니다. 이러한 수정 사항은 향후 주요 RHEL 릴리스의 더 이상 사용되지 않는 패키지에 의존하지 않도록 수정되었습니다.
GTK 2를 사용하는 애플리케이션을 유지보수하는 경우 애플리케이션을 GTK 4로 이식하는 것이 좋습니다.
Jira:RHELPLAN-131882[1]
LibreOffice가 더 이상 사용되지 않음
LibreOffice RPM 패키지는 더 이상 사용되지 않으며 향후 주요 RHEL 릴리스에서 제거될 예정입니다. LibreOffice는 RHEL 7, 8 및 9의 전체 라이프 사이클을 통해 계속 지원됩니다.
RPM 패키지를 대체하기 위해 The Document Foundation에서 제공하는 다음 소스 중 하나에서 LibreOffice를 설치하는 것이 좋습니다.
- Flathub 리포지토리의 공식 Flatpak 패키지: https://flathub.org/apps/org.libreoffice.LibreOffice.
- 공식 RPM 패키지: https://www.libreoffice.org/download/download-libreoffice/.
Jira:RHELDOCS-16300[1]
10.13. 그래픽 인프라 링크 복사링크가 클립보드에 복사되었습니다!
motif가 더 이상 사용되지 않음
업스트림 Motif 커뮤니티의 개발이 비활성화되었기 때문에 RHEL에서 Motif 위젯 툴킷이 더 이상 사용되지 않습니다.
다음 Motif 패키지는 개발 및 디버깅 변형을 포함하여 더 이상 사용되지 않습니다.
-
motif
-
openmotif
-
openmotif21
-
openmotif22
또한 motif-static
패키지가 제거되었습니다.
Red Hat은 GTK 툴킷을 교체로 사용할 것을 권장합니다. GTK는 유지 보수가 가능하며 Motif에 비해 새로운 기능을 제공합니다.
Jira:RHELPLAN-98983[1]
10.14. Red Hat Enterprise Linux 시스템 역할 링크 복사링크가 클립보드에 복사되었습니다!
mssql_ha_cluster_run_role
이 더 이상 사용되지 않음
mssql_ha_cluster_run_role
변수가 더 이상 사용되지 않습니다. 대신 mssql_manage_ha_cluster
변수를 사용합니다.
RHEL 9 노드에서 팀을 구성할 때 네트워크
시스템 역할은 사용 중단 경고를 표시합니다.
RHEL 9에서는 네트워크 팀 기능이 더 이상 사용되지 않습니다. 결과적으로 RHEL 8 제어 노드에서 네트워크
RHEL 시스템 역할을 사용하여 RHEL 9 노드에서 네트워크 팀을 구성하면 사용 중단에 대한 경고가 표시됩니다.
10.15. 가상화 링크 복사링크가 클립보드에 복사되었습니다!
SHA1- 기반 서명을 사용하여 SecureBoot 이미지 확인이 더 이상 사용되지 않음
UEFI (PE/COFF) 실행 파일에서 SHA1- 기반 서명을 사용하여 SecureBoot 이미지 확인을 수행하는 것은 더 이상 사용되지 않습니다. 대신 SHA2 알고리즘을 기반으로 서명을 사용하는 것이 좋습니다.
Bugzilla:1935497[1]
가상 플로피 드라이버가 더 이상 사용되지 않음
가상 플로피 디스크 장치를 제어하는 isa-fdc
드라이버는 더 이상 사용되지 않으며 향후 RHEL 릴리스에서 지원되지 않습니다. 따라서 마이그레이션된 VM(가상 머신)과의 호환성을 보장하기 위해 RHEL 9에서 호스팅되는 VM의 플로피 디스크 장치를 사용하지 않는 것이 좋습니다.
qcow2-v2 이미지 형식이 더 이상 사용되지 않음
RHEL 9에서는 가상 디스크 이미지의 qcow2-v2 형식이 더 이상 사용되지 않으며 향후 RHEL 주요 릴리스에서 지원되지 않을 예정입니다. 또한 RHEL 9 이미지 빌더는 qcow2-v2 형식으로 디스크 이미지를 생성할 수 없습니다.
qcow2-v2 대신 Red Hat은 qcow2-v3을 사용하는 것이 좋습니다. qcow2-v2 이미지를 최신 형식 버전으로 변환하려면 qemu-img amend
명령을 사용합니다.
virt-manager가 더 이상 사용되지 않음
virt-manager라고도 하는 Virtual Machine Manager 애플리케이션은 더 이상 사용되지 않습니다. Cockpit 라고도 하는 RHEL 웹 콘솔은 후속 릴리스에서 대체하기 위한 것입니다. 따라서 GUI에서 가상화를 관리하기 위해 웹 콘솔을 사용하는 것이 좋습니다. 그러나 virt-manager 에서 사용할 수 있는 일부 기능은 RHEL 웹 콘솔에서 아직 제공되지 않을 수 있습니다.
Jira:RHELPLAN-10304[1]
libvirtd
가 더 이상 사용되지 않음
모놀리식 libvirt
데몬인 libvirtd
는 RHEL 9에서 더 이상 사용되지 않으며 향후 RHEL 주요 릴리스에서 제거됩니다. 하이퍼바이저에서 가상화를 관리하는 데 여전히 libvirtd
를 사용할 수 있지만 Red Hat은 새로 도입된 모듈식 libvirt
데몬으로 전환하는 것이 좋습니다. 자세한 내용은 RHEL 9 가상화 구성 및 관리 문서를 참조하십시오.
Jira:RHELPLAN-113995[1]
레거시 CPU 모델이 더 이상 사용되지 않음
상당한 수의 CPU 모델이 더 이상 사용되지 않으며 향후 RHEL 주요 릴리스에서 VM(가상 머신)에서 사용할 수 없습니다. 더 이상 사용되지 않는 모델은 다음과 같습니다.
- Intel: Intel Xeon 55xx 및 75xx 프로세서 제품군 이전 모델 ( Nehalem라고도 함)
- AMD의 경우: AMD Opteron G4 이전 모델
- IBM Z: IBM z14 이전 모델
VM에서 더 이상 사용되지 않는 CPU 모델을 사용하는지 확인하려면 virsh dominfo
유틸리티를 사용하고 Messages
섹션에서 다음과 유사한 행을 찾습니다.
tainted: use of deprecated configuration settings deprecated configuration: CPU model 'i486'
tainted: use of deprecated configuration settings
deprecated configuration: CPU model 'i486'
RDMA 기반 실시간 마이그레이션은 더 이상 사용되지 않음
이번 업데이트를 통해 RDMA(Remote Direct Memory Access)를 사용하여 실행 중인 가상 머신의 마이그레이션이 더 이상 사용되지 않습니다. 결과적으로 rdma://
마이그레이션 URI를 사용하여 RDMA를 통한 마이그레이션을 요청할 수 있지만 이 기능은 향후 RHEL 주요 릴리스에서 지원되지 않습니다.
Jira:RHELPLAN-153267[1]
Intel vGPU 기능이 제거되었습니다.
이전에는 기술 프리뷰로 물리적 Intel GPU 장치를 중재
장치라는 여러 가상 장치로 나눌 수 있었습니다. 그런 다음 이러한 중재된 장치를 가상 GPU로 여러 VM(가상 머신)에 할당할 수 있습니다. 결과적으로 이러한 VM은 단일 물리적 Intel GPU의 성능을 공유했지만 선택한 Intel GPU만 이 기능과 호환되었습니다.
RHEL 9.3부터 Intel vGPU 기능이 완전히 제거되었습니다.
Bugzilla:2206599[1]
PMEM 장치 패스스루가 더 이상 사용되지 않음
이번 업데이트를 통해 nvml이 아닌 메모리 라이브러리(nvml
) 패키지가 더 이상 사용되지 않으며 향후 주요 RHEL 버전에서 제거됩니다. 결과적으로 패키지 제거가 발생하면 더 이상 영구 메모리(pmem
) 장치를 VM(가상 머신)에 전달할 수 없습니다. volatile 메모리 또는 파일에서 지원하는 에뮬레이션된 NVDIMM 장치는 계속 사용할 수 있지만 영구적으로 구성할 수는 없습니다.
Windows Server 2012 또는 Windows 8을 게스트 운영 체제로 사용하는 것은 지원되지 않습니다.
Microsoft는 다음 버전의 Windows에 대한 지원을 종료했기 때문에 Red Hat은 이 업데이트에서 이러한 버전을 게스트 운영 체제로 사용하기 위한 지원도 삭제했습니다.
- Windows 8
- Windows 8.1
- Windows Server 2012
- Windows Server 2012 R2
10.16. 컨테이너 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 7 호스트에서 RHEL 9 컨테이너를 실행하는 것은 지원되지 않습니다.
RHEL 7 호스트에서 RHEL 9 컨테이너를 실행하는 것은 지원되지 않습니다. 작동할 수 있지만 보장되지는 않습니다.
자세한 내용은 Red Hat Enterprise Linux 컨테이너 호환성 매트릭스 를 참조하십시오.
Jira:RHELPLAN-100087[1]
Podman 내의 SHA1 해시 알고리즘이 더 이상 사용되지 않음
rootless 네트워크 네임스페이스의 파일 이름을 생성하는 데 사용되는 SHA1 알고리즘은 Podman에서 더 이상 지원되지 않습니다. 따라서 Podman 4.1.1 이상으로 업데이트하기 전에 rootless 컨테이너가 시작되어 업그레이드 후 컨테이너에 연결할 수 있도록 네트워크에 가입한 경우( slirp4netns
를 사용하는 것이 아님)를 다시 시작해야 합니다.
Bugzilla:2069279[1]
rhel9/pause
가 더 이상 사용되지 않음
rhel9/pause
컨테이너 이미지가 더 이상 사용되지 않습니다.
CNI 네트워크 스택이 더 이상 사용되지 않음
CNI(Container Network Interface) 네트워크 스택은 더 이상 사용되지 않으며 RHEL의 향후 마이너 릴리스에서 Podman에서 제거됩니다. 이전에는 단일 CNI(Container Network Interface) 플러그인에 연결된 컨테이너는 DNS를 통해서만 연결되었습니다. podman v.4.0에는 새로운 Netavark 네트워크 스택이 도입되었습니다. Podman 및 기타 OCI(Open Container Initiative) 컨테이너 관리 애플리케이션과 함께 Netavark 네트워크 스택을 사용할 수 있습니다. Podman용 Netavark 네트워크 스택은 고급 Docker 기능과도 호환됩니다. 여러 네트워크의 컨테이너가 해당 네트워크의 컨테이너에 액세스할 수 있습니다.
자세한 내용은 CNI에서 Netavark로 네트워크 스택 전환 을 참조하십시오.
Jira:RHELDOCS-16756[1]
Inkscape 및 LibreOffice Flatpak 이미지는 더 이상 사용되지 않습니다.
기술 프리뷰로 사용할 수 있는
pak Flatpak 이미지는 더 이상 사용되지 않습니다.
rhel9/inkscape-flatpak
및 rhel9/libre
Red Hat은 다음 이미지에 대해 다음 대안을 권장합니다.
-
rhel9/inkscape-flatpak
을 교체하려면inkscape
RPM 패키지를 사용합니다. -
rhel9/libre Cryostat-flatpak
을 교체하려면 LibreOffice 사용 중단 릴리스 노트 를 참조하십시오.
Jira:RHELDOCS-17102[1]
네트워크 이름으로 파스타
가 더 이상 사용되지 않음
네트워크 이름 값으로 파스타
에 대한 지원은 더 이상 사용되지 않으며 Podman 버전 5.0의 다음 주요 릴리스에서 허용되지 않습니다. pasta
네트워크 이름 값을 사용하여 podman run --network
및 podman create --network
명령을 사용하여 Podman에 고유한 네트워크 모드를 생성할 수 있습니다.
Jira:RHELDOCS-17038[1]
BoltDB 데이터베이스 백엔드가 더 이상 사용되지 않음
BoltDB 데이터베이스 백엔드는 RHEL 9.4부터 더 이상 사용되지 않습니다. 향후 RHEL 버전에서는 BoltDB 데이터베이스 백엔드가 제거되고 Podman에서 더 이상 사용할 수 없습니다. Podman의 경우 RHEL 9.4의 기본값인 SQLite 데이터베이스 백엔드를 사용합니다.
Jira:RHELDOCS-17495[1]
CNI 네트워크 스택이 더 이상 사용되지 않음
CNI(Container Network Interface) 네트워크 스택은 더 이상 사용되지 않으며 향후 릴리스에서 제거됩니다. 대신 Netavark 네트워크 스택을 사용합니다. 자세한 내용은 CNI에서 Netavark로 네트워크 스택 전환 을 참조하십시오.
Jira:RHELDOCS-17518[1]
Podman v5.0 향후 사용 중단
다음 내용은 RHEL 9.5 및 RHEL 10.0 베타에서 릴리스될 예정인 Podman v5.0에서 더 이상 사용되지 않습니다.
- BoltDB 데이터베이스 백엔드는 더 이상 사용되지 않습니다. 새 SQLite 데이터베이스 백엔드를 사용할 수 있습니다.
-
containers.conf
파일은 읽기 전용입니다. 시스템 연결 및 pam 정보는 Podman에서만 관리되는podman.connections.json
파일에 저장됩니다. Podman은[engine.service_destinations]
및[farms]
섹션과 같은 이전 구성 옵션을 계속 지원합니다. 필요한 경우 연결을 수동으로 추가할 수 있지만podman system connection rm
명령을 사용하여containers.conf
파일에서 연결을 삭제할 수 없습니다.
RHEL 10.0 베타에 대해 다음과 같은 변경 사항이 계획되어 있습니다.
-
pasta
네트워크 모드는 rootless 컨테이너의 기본 네트워크 모드입니다.slirp4netns
네트워크 모드는 더 이상 사용되지 않습니다. - cgroupv1은 더 이상 사용되지 않습니다.
- CNI 네트워크 스택은 더 이상 사용되지 않습니다.
Jira:RHELDOCS-17462[1]
rhel9/openssl
이 더 이상 사용되지 않음
rhel9/openssl
컨테이너 이미지가 더 이상 사용되지 않습니다.
Jira:RHELDOCS-18106[1]
10.17. 더 이상 사용되지 않는 패키지 링크 복사링크가 클립보드에 복사되었습니다!
이 섹션에는 더 이상 사용되지 않으며 향후 Red Hat Enterprise Linux 주요 릴리스에 포함되지 않는 패키지가 나열되어 있습니다.
RHEL 8과 RHEL 9 간의 패키지 변경 사항은 RHEL 9 문서 도입 시 고려 사항 의 패키지 변경 사항을 참조하십시오.
더 이상 사용되지 않는 패키지의 지원 상태는 RHEL 9 내에서 변경되지 않습니다. 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux 라이프 사이클 및 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.
RHEL 9에서는 다음 패키지가 더 이상 사용되지 않습니다.
- aacraid
- adwaita-gtk2-theme
- af_key
- anaconda-user-help
- autocorr-af
- autocorr-bg
- autocorr-ca
- autocorr-cs
- autocorr-da
- autocorr-de
- autocorr-dsb
- autocorr-el
- autocorr-en
- autocorr-es
- autocorr-fa
- autocorr-fi
- autocorr-fr
- autocorr-ga
- autocorr-hr
- autocorr-hsb
- autocorr-hu
- autocorr-is
- autocorr-it
- autocorr-ja
- autocorr-ko
- autocorr-lb
- autocorr-lt
- autocorr-mn
- autocorr-nl
- autocorr-pl
- autocorr-pt
- autocorr-ro
- autocorr-ru
- autocorr-sk
- autocorr-sl
- autocorr-sr
- autocorr-sv
- autocorr-tr
- autocorr-vi
- autocorr-vro
- autocorr-zh
- Cheese
- cheese-libs
- clutter
- clutter-gst3
- clutter-gtk
- cogl
- daxio
- dbus-glib
- dbus-glib-devel
- dhcp-client
- dhcp-common
- dhcp-relay
- dhcp-server
- enchant
- enchant-devel
- EOG
- 진화
- evolution-bogofilter
- evolution-devel
- evolution-help
- evolution-langpacks
- evolution-mapi
- evolution-mapi-langpacks
- evolution-pst
- evolution-spamassassin
- 마케스트리
- Farial-data
- festvox-slt-arctic-hts
- flite
- flite-devel
- FireWire-core
- Cryostat
- gedit-plugin-bookmarks
- gedit-plugin-bracketcompletion
- gedit-plugin-codecomment
- gedit-plugin-colorpicker
- gedit-plugin-colorschemer
- gedit-plugin-commander
- gedit-plugin-drawspaces
- gedit-plugin-findinfiles
- gedit-plugin-joinlines
- gedit-plugin-multiedit
- gedit-plugin-sessionsaver
- gedit-plugin-smartspaces
- gedit-plugin-synctex
- gedit-plugin-terminal
- gedit-plugin-textsize
- gedit-plugin-translate
- gedit-plugin-wordcompletion
- gedit-plugins
- gedit-plugins-data
- ghostscript-x11
- gnome-common
- gnome-photos
- gnome-photos-tests
- gnome-screenshot
- gnome-themes-extra
- gtk2
- gtk2-devel
- gtk2-devel-docs
- gtk2-immodule-xim
- gtk2-immodules
- highcontrast-icon-theme
- Inkscape
- Inkscape-docs
- Inkscape-view
- iptables-devel
- iptables-libs
- iptables-nft
- iptables-nft-services
- iptables-utils
- libdb
- libgdata
- libgdata-devel
- libpmem
- libpmem-debug
- libpmem-devel
- libpmem2
- libpmem2-debug
- libpmem2-devel
- libpmemblk
- libpmemblk-debug
- libpmemblk-devel
- libpmemlog
- libpmemlog-debug
- libpmemlog-devel
- libpmemobj
- libpmemobj-debug
- libpmemobj-devel
- libpmempool
- libpmempool-debug
- libpmempool-devel
- libreoffice
- libreoffice-base
- libreoffice-calc
- libreoffice-core
- libreoffice-data
- libreoffice-draw
- libreoffice-emailmerge
- libreoffice-filters
- libreoffice-gdb-debug-support
- libreoffice-graphicfilter
- libreoffice-gtk3
- libreoffice-help-ar
- libreoffice-help-bg
- libreoffice-help-bn
- libreoffice-help-ca
- libreoffice-help-cs
- libreoffice-help-da
- libreoffice-help-de
- libreoffice-help-dz
- libreoffice-help-el
- libreoffice-help-en
- libreoffice-help-eo
- libreoffice-help-es
- libreoffice-help-et
- libreoffice-help-eu
- libreoffice-help-fi
- libreoffice-help-fr
- libreoffice-help-gl
- libreoffice-help-gu
- libreoffice-help-he
- libreoffice-help-hi
- libreoffice-help-hr
- libreoffice-help-hu
- libreoffice-help-id
- libreoffice-help-it
- libreoffice-help-ja
- libreoffice-help-ko
- libreoffice-help-lt
- libreoffice-help-lv
- libreoffice-help-nb
- libreoffice-help-nl
- libreoffice-help-nn
- libreoffice-help-pl
- libreoffice-help-pt-BR
- libreoffice-help-pt-PT
- libreoffice-help-ro
- libreoffice-help-ru
- libreoffice-help-si
- libreoffice-help-sk
- libreoffice-help-sl
- libreoffice-help-sv
- libreoffice-help-ta
- libreoffice-help-tr
- libreoffice-help-uk
- libreoffice-help-zh-Hans
- libreoffice-help-zh-Hant
- libreoffice-impress
- libreoffice-langpack-af
- libreoffice-langpack-ar
- libreoffice-langpack-as
- libreoffice-langpack-bg
- libreoffice-langpack-bn
- libreoffice-langpack-br
- libreoffice-langpack-ca
- libreoffice-langpack-cs
- libreoffice-langpack-cy
- libreoffice-langpack-da
- libreoffice-langpack-de
- libreoffice-langpack-dz
- libreoffice-langpack-el
- libreoffice-langpack-en
- libreoffice-langpack-eo
- libreoffice-langpack-es
- libreoffice-langpack-et
- libreoffice-langpack-eu
- libreoffice-langpack-fa
- libreoffice-langpack-fi
- libreoffice-langpack-fr
- libreoffice-langpack-fy
- libreoffice-langpack-ga
- libreoffice-langpack-gl
- libreoffice-langpack-gu
- libreoffice-langpack-he
- libreoffice-langpack-hi
- libreoffice-langpack-hr
- libreoffice-langpack-hu
- libreoffice-langpack-id
- libreoffice-langpack-it
- libreoffice-langpack-ja
- libreoffice-langpack-kk
- libreoffice-langpack-kn
- libreoffice-langpack-ko
- libreoffice-langpack-lt
- libreoffice-langpack-lv
- libreoffice-langpack-mai
- libreoffice-langpack-ml
- libreoffice-langpack-mr
- libreoffice-langpack-nb
- libreoffice-langpack-nl
- libreoffice-langpack-nn
- libreoffice-langpack-nr
- libreoffice-langpack-nso
- libreoffice-langpack-or
- libreoffice-langpack-pa
- libreoffice-langpack-pl
- libreoffice-langpack-pt-BR
- libreoffice-langpack-pt-PT
- libreoffice-langpack-ro
- libreoffice-langpack-ru
- libreoffice-langpack-si
- libreoffice-langpack-sk
- libreoffice-langpack-sl
- libreoffice-langpack-sr
- libreoffice-langpack-ss
- libreoffice-langpack-st
- libreoffice-langpack-sv
- libreoffice-langpack-ta
- libreoffice-langpack-te
- libreoffice-langpack-th
- libreoffice-langpack-tn
- libreoffice-langpack-tr
- libreoffice-langpack-ts
- libreoffice-langpack-uk
- libreoffice-langpack-ve
- libreoffice-langpack-xh
- libreoffice-langpack-zh-Hans
- libreoffice-langpack-zh-Hant
- libreoffice-langpack-zu
- libreoffice-math
- libreoffice-ogltrans
- libreoffice-opensymbol-fonts
- libreoffice-pdfimport
- libreoffice-pyuno
- libreoffice-sdk
- libreoffice-sdk-doc
- libreoffice-ure
- libreoffice-ure-common
- libreoffice-wiki-publisher
- libreoffice-writer
- libreoffice-x11
- libreoffice-xsltfilter
- libreofficekit
- libsoup
- libsoup-devel
- libuser
- libuser-devel
- libwpe
- libwpe-devel
- mcpp
- mod_auth_mellon
- motif
- motif-devel
- pmdk-convert
- pmempool
- python3-pytz
- qla4xxx
- qt5
- qt5-assistant
- qt5-designer
- qt5-devel
- qt5-doctools
- qt5-linguist
- qt5-qdbusviewer
- qt5-qt3d
- qt5-qt3d-devel
- qt5-qt3d-doc
- qt5-qt3d-examples
- qt5-qtbase
- qt5-qtbase-common
- qt5-qtbase-devel
- qt5-qtbase-doc
- qt5-qtbase-examples
- qt5-qtbase-gui
- qt5-qtbase-mysql
- qt5-qtbase-odbc
- qt5-qtbase-postgresql
- qt5-qtbase-private-devel
- qt5-qtbase-static
- qt5-qtconnectivity
- qt5-qtconnectivity-devel
- qt5-qtconnectivity-doc
- qt5-qtconnectivity-examples
- qt5-qtdeclarative
- qt5-qtdeclarative-devel
- qt5-qtdeclarative-doc
- qt5-qtdeclarative-examples
- qt5-qtdeclarative-static
- qt5-qtdoc
- qt5-qtgraphicaleffects
- qt5-qtgraphicaleffects-doc
- qt5-qtimageformats
- qt5-qtimageformats-doc
- qt5-qtlocation
- qt5-qtlocation-devel
- qt5-qtlocation-doc
- qt5-qtlocation-examples
- qt5-qtmultimedia
- qt5-qtmultimedia-devel
- qt5-qtmultimedia-doc
- qt5-qtmultimedia-examples
- qt5-qtquickcontrols
- qt5-qtquickcontrols-doc
- qt5-qtquickcontrols-examples
- qt5-qtquickcontrols2
- qt5-qtquickcontrols2-devel
- qt5-qtquickcontrols2-doc
- qt5-qtquickcontrols2-examples
- qt5-qtscript
- qt5-qtscript-devel
- qt5-qtscript-doc
- qt5-qtscript-examples
- qt5-qtsensors
- qt5-qtsensors-devel
- qt5-qtsensors-doc
- qt5-qtsensors-examples
- qt5-qtserialbus
- qt5-qtserialbus-devel
- qt5-qtserialbus-doc
- qt5-qtserialbus-examples
- qt5-qtserialport
- qt5-qtserialport-devel
- qt5-qtserialport-doc
- qt5-qtserialport-examples
- qt5-qtsvg
- qt5-qtsvg-devel
- qt5-qtsvg-doc
- qt5-qtsvg-examples
- qt5-qttools
- qt5-qttools-common
- qt5-qttools-devel
- qt5-qttools-doc
- qt5-qttools-examples
- qt5-qttools-libs-designer
- qt5-qttools-libs-designercomponents
- qt5-qttools-libs-help
- qt5-qttools-static
- qt5-qttranslations
- qt5-qtwayland
- qt5-qtwayland-devel
- qt5-qtwayland-doc
- qt5-qtwayland-examples
- qt5-qtwebchannel
- qt5-qtwebchannel-devel
- qt5-qtwebchannel-doc
- qt5-qtwebchannel-examples
- qt5-qtwebsockets
- qt5-qtwebsockets-devel
- qt5-qtwebsockets-doc
- qt5-qtwebsockets-examples
- qt5-qtx11extras
- qt5-qtx11extras-devel
- qt5-qtx11extras-doc
- qt5-qtxmlpatterns
- qt5-qtxmlpatterns-devel
- qt5-qtxmlpatterns-doc
- qt5-qtxmlpatterns-examples
- qt5-rpm-macros
- qt5-srpm-macros
- 팀
- tigervnc
- Cryostatvnc-icons
- tigervnc-license
- tigervnc-selinux
- tigervnc-server
- tigervnc-server-minimal
- Cryostatvnc-server-module
- webkit2gtk3
- webkit2gtk3-devel
- webkit2gtk3-jsc
- webkit2gtk3-jsc-devel
- wpebackend-fdo
- wpebackend-fdo-devel
- xorg-x11-server-Xorg
- YP-tools
- ypbind
- ypserv
11장. 확인된 문제 링크 복사링크가 클립보드에 복사되었습니다!
이 부분에서는 Red Hat Enterprise Linux 9.4의 알려진 문제에 대해 설명합니다.
11.1. 설치 프로그램 및 이미지 생성 링크 복사링크가 클립보드에 복사되었습니다!
auth
및 authconfig
Kickstart 명령에는 AppStream 리포지토리가 필요
authselect-compat
패키지는 설치하는 동안 auth
및 authconfig
Kickstart 명령이 필요합니다. 이 패키지가 없으면 auth
또는 authconfig
가 사용되는 경우 설치에 실패합니다. 설계에 따라 authselect-compat
패키지는 AppStream 리포지토리에서만 사용할 수 있습니다.
이 문제를 해결하려면 설치 프로그램에서 BaseOS 및 AppStream 리포지토리를 사용할 수 있는지 확인하거나 설치 중에 authselect
Kickstart 명령을 사용합니다.
Bugzilla:1640697[1]
reboot --kexec
및 inst.kexec
명령은 예측 가능한 시스템 상태를 제공하지 않습니다.
reboot --kexec
Kickstart 명령 또는 inst.kexec
커널 부팅 매개변수를 사용하여 RHEL 설치를 수행하면 전체 재부팅과 동일한 예측 가능한 시스템 상태가 제공되지 않습니다. 결과적으로 재부팅하지 않고 설치된 시스템으로 전환하면 예기치 않은 결과가 발생할 수 있습니다.
kexec
기능은 더 이상 사용되지 않으며 향후 Red Hat Enterprise Linux 릴리스에서 제거될 예정입니다.
Bugzilla:1697896[1]
Anaconda가 애플리케이션으로 실행되는 시스템에서 예기치 않은 SELinux 정책
Anaconda가 이미 설치된 시스템에서 애플리케이션으로 실행 중인 경우(예: -image
anaconda 옵션을 사용하여 이미지 파일에 다른 설치를 수행하기 위해) 설치 중에 SELinux 유형과 속성을 수정하는 것은 금지되지 않습니다. 결과적으로 Anaconda가 실행 중인 시스템에서 SELinux 정책의 특정 요소가 변경될 수 있습니다.
이 문제를 해결하려면 프로덕션 시스템에서 Anaconda를 실행하지 마십시오. 대신 임시 가상 시스템에서 Anaconda를 실행하여 프로덕션 시스템에서 SELinux 정책을 변경하지 않고 유지합니다. boot.iso
또는 dvd.iso
에서 설치하는 것과 같은 시스템 설치 프로세스의 일부로 anaconda를 실행하면 이 문제의 영향을 받지 않습니다.
타사 도구를 사용하여 생성된 USB에서 설치를 부팅할 때 로컬 미디어
설치 소스가 감지되지 않음
타사 툴을 사용하여 생성된 USB에서 RHEL 설치를 부팅할 때 설치 프로그램이 로컬 미디어
설치 소스를 감지하지 못합니다( Red Hat CDN 만 감지됨).
이 문제는 기본 부팅 옵션 int.stage2=
iso9660
이미지 형식을 검색하려고 하기 때문에 발생합니다. 그러나 타사 툴은 다른 형식으로 ISO 이미지를 생성할 수 있습니다.
이 문제를 해결하려면 다음 해결 방법을 사용합니다.
-
설치를 부팅할 때
Tab
키를 클릭하여 커널 명령줄을 편집하고inst.stage2=
를inst.repo=
로 변경합니다. - Windows에서 부팅 가능한 USB 장치를 생성하려면 Fedora Media Writer를 사용합니다.
- Rufus와 같은 타사 툴을 사용하여 부팅 가능한 USB 장치를 생성하는 경우 먼저 Linux 시스템에서 RHEL ISO 이미지를 다시 생성한 다음 타사 툴을 사용하여 부팅 가능한 USB 장치를 생성합니다.
지정된 해결 방법을 수행하는 데 관련된 단계에 대한 자세한 내용은 RHEL 8.3을 설치하는 동안 설치 미디어가 자동으로 탐지되지 않음을 참조하십시오.
Bugzilla:1877697[1]
Anaconda에서 USB CD-ROM 드라이브를 설치 소스로 사용할 수 없습니다.
USB CD-ROM 드라이브가 소스이고 Kickstart ignoredisk --only-use=
명령이 지정되면 설치에 실패합니다. 이 경우 Anaconda에서 이 소스 디스크를 찾아서 사용할 수 없습니다.
이 문제를 해결하려면 harddrive --partition=sdX --dir=/
명령을 사용하여 USB CD-ROM 드라이브에서 설치합니다. 이로 인해 설치에 실패하지 않습니다.
iso9660 파일 시스템이 있는 하드 드라이브 파티셔닝 설치 실패
하드 드라이브가 iso9660
파일 시스템으로 분할되는 시스템에는 RHEL을 설치할 수 없습니다. 이는 iso9660
파일 시스템 파티션이 포함된 하드 디스크를 무시하도록 설정된 업데이트된 설치 코드 때문입니다. 이는 DVD를 사용하지 않고 RHEL을 설치하는 경우에도 발생합니다.
이 문제를 해결하려면 Kickstart 파일에 다음 스크립트를 추가하여 설치가 시작되기 전에 디스크를 포맷합니다.
참고: 해결 방법을 수행하기 전에 디스크에서 사용 가능한 데이터를 백업하십시오. wipefs
명령은 디스크의 모든 기존 데이터를 포맷합니다.
%pre wipefs -a /dev/sda %end
%pre
wipefs -a /dev/sda
%end
결과적으로 설치는 오류 없이 예상대로 작동합니다.
Anaconda에서 관리자 사용자 계정이 있는지 확인하지 못했습니다
그래픽 사용자 인터페이스를 사용하여 RHEL을 설치하는 동안 Anaconda는 관리자 계정이 생성되었는지 확인하지 못합니다. 결과적으로 관리자 사용자 계정 없이 시스템을 설치할 수 있습니다.
이 문제를 해결하려면 관리자 사용자 계정 또는 root 암호를 설정하고 root 계정을 잠금 해제해야 합니다. 결과적으로 사용자는 설치된 시스템에서 관리 작업을 수행할 수 있습니다.
새로운 XFS 기능은 버전 5.10이 지난 펌웨어가 있는 PowerNV IBM POWER 시스템을 부팅하지 않습니다.
PowerNV IBM POWER 시스템은 펌웨어에 Linux 커널을 사용하고 GRUB 대신 Petitboot를 사용합니다. 그러면 펌웨어 커널이 /boot
및 Petitboot를 마운트하고 GRUB 구성을 읽고 RHEL을 부팅하게 됩니다.
RHEL 9 커널은 XFS 파일 시스템에 bigtime=1
및 inobtcount=1
기능을 도입하여 버전 5.10 이전의 펌웨어 커널을 인식하지 못합니다.
이 문제를 해결하려면 /boot
(예: ext4 )에 다른 파일 시스템을 사용할 수 있습니다.
Bugzilla:1997832[1]
rpm-ostree 페이로드를 설치할 때 RHEL for Edge 설치 관리자 이미지가 마운트 지점을 생성하지 못했습니다
예를 들어 RHEL for Edge 설치 프로그램 이미지에서 사용되는 rpm-ostree
페이로드를 배포할 때 설치 프로그램에서 사용자 지정 파티션에 대한 일부 마운트 지점을 올바르게 생성하지 않습니다. 결과적으로 다음 오류와 함께 설치가 중단됩니다.
The command 'mount --bind /mnt/sysimage/data /mnt/sysroot/data' exited with the code 32.
The command 'mount --bind /mnt/sysimage/data /mnt/sysroot/data' exited with the code 32.
이 문제를 해결하려면 다음을 수행합니다.
- 자동 파티션 스키마를 사용하고 수동으로 마운트 지점을 추가하지 마십시오.
-
/var
디렉토리 내에서만 마운트 지점을 수동으로 할당합니다. 예를 들어/var/my-mount-point
) 및 다음 표준 디렉터리(/
,/boot
,/var
)입니다.
결과적으로 설치 프로세스가 성공적으로 완료됩니다.
네트워크에 연결할 때 설치 후 NetworkManager가 시작되지 않지만 DHCP 또는 고정 IP 주소가 구성되지 않은 경우
RHEL 9.0부터 특정 ip=
또는 Kickstart 네트워크 구성이 설정되지 않은 경우 Anaconda는 네트워크 장치를 자동으로 활성화합니다. Anaconda는 각 이더넷 장치에 대한 기본 영구 구성 파일을 생성합니다. 연결 프로필에는 ONBOOT
및 autoconnect
값이 true
로 설정되어 있습니다. 결과적으로 설치된 시스템을 시작할 때 RHEL은 네트워크 장치를 활성화하고 networkManager-wait-online
서비스가 실패합니다.
해결 방법으로 다음 중 하나를 수행합니다.
사용할 연결을 한 개 제외한
nmcli
유틸리티를 사용하여 모든 연결을 삭제합니다. 예를 들면 다음과 같습니다.모든 연결 프로필을 나열합니다.
nmcli connection show
# nmcli connection show
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 필요하지 않은 연결 프로필을 삭제합니다.
nmcli connection delete <connection_name>
# nmcli connection delete <connection_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <connection_name>을 삭제하려는 연결 이름으로 바꿉니다.
특정
ip=
또는 Kickstart 네트워크 구성이 설정되지 않은 경우 Anaconda에서 자동 연결 네트워크 기능을 비활성화합니다.- Anaconda GUI에서 네트워크 및 호스트 이름으로 이동합니다.
- 비활성화할 네트워크 장치를 선택합니다.
- 구성 을 클릭합니다.
- 일반 탭에서 우선 순위로 자동으로 연결 확인란을 지웁니다.
- 저장을 클릭합니다.
Bugzilla:2115783[1]
Kickstart 설치가 네트워크 연결을 구성하지 못했습니다
Anaconda는 NetworkManager API를 통해서만 Kickstart 네트워크 구성을 수행합니다. Anaconda는 %pre
Kickstart 섹션 뒤에 네트워크 구성을 처리합니다. 결과적으로 Kickstart %pre
섹션의 일부 작업이 차단되었습니다. 예를 들어 %pre
섹션에서 패키지를 다운로드하는 것은 네트워크 구성을 사용할 수 없기 때문에 실패합니다.
이 문제를 해결하려면 다음을 수행합니다.
-
예를 들어
nmcli
툴을%pre
스크립트의 일부로 사용하여 네트워크를 구성합니다. -
설치 프로그램 부팅 옵션을 사용하여
%pre
스크립트의 네트워크를 구성합니다.
결과적으로 %pre
섹션의 작업에 네트워크를 사용할 수 있으며 Kickstart 설치 프로세스가 완료됩니다.
RHEL 이미지 빌더로 rpm-ostree
이미지를 빌드할 때 FIPS 모드 활성화는 지원되지 않습니다.
현재 RHEL 이미지 빌더를 사용하여 rpm-ostree
이미지를 빌드할 때 FIPS 모드를 활성화할 수 없습니다.
stig
프로필 수정을 사용하여 빌드된 이미지가 FIPS 오류로 부팅되지 않음
RHEL 이미지 빌더에서 FIPS 모드를 지원하지 않습니다. xccdf_org.ssgproject.content_profile_stig
프로필 수정으로 사용자 정의된 RHEL 이미지 빌더를 사용하면 다음 오류와 함께 시스템이 부팅되지 않습니다.
Warning: /boot//.vmlinuz-<kernel version>.x86_64.hmac does not exist FATAL: FIPS integrity test failed Refusing to continue
Warning: /boot//.vmlinuz-<kernel version>.x86_64.hmac does not exist
FATAL: FIPS integrity test failed
Refusing to continue
fips-mode-setup --enable
명령을 사용하여 시스템 이미지 설치 후 수동으로 FIPS 정책을 활성화하면 /boot
디렉터리가 다른 파티션에 있기 때문에 작동하지 않습니다. FIPS가 비활성화된 경우 시스템이 성공적으로 부팅됩니다. 현재는 사용할 수 있는 해결방법이 없습니다.
fips-mode-setup --enable
명령을 사용하여 이미지를 설치한 후 수동으로 FIPS를 활성화할 수 있습니다.
드라이버 디스크 메뉴가 콘솔에 사용자 입력을 표시하지 못했습니다
드라이버 디스크와 함께 커널 명령행에서 inst.dd
옵션을 사용하여 RHEL 설치를 시작하면 콘솔에 사용자 입력이 표시되지 않습니다. 결과적으로 애플리케이션이 사용자 입력에 응답하지 않고 응답을 중지하지만 사용자에게 혼동되는 출력이 표시됩니다. 그러나 이 동작은 기능에 영향을 미치지 않으며 Enter
를 누른 후 사용자 입력이 등록됩니다.
해결 방법으로 예상 결과를 보려면 콘솔에 사용자 입력이 없는 것을 무시하고 입력 추가 완료 시 Enter
키를 누릅니다.
%packages
섹션에 systemd
서비스 파일이 있는 패키지가 누락되어 Kickstart 설치에 실패합니다.
Kickstart 파일에서 services --enabled=…
지시문을 사용하여 지정된 서비스 파일을 포함하는 systemd
서비스 및 패키지가 %packages
섹션에 포함되지 않은 경우 다음 오류와 함께 RHEL 설치 프로세스가 실패합니다.
Error enabling service <name_of_the_service>
Error enabling service <name_of_the_service>
이 문제를 해결하려면 서비스 파일이 있는 패키지를 Kickstart의 %packages
섹션에 포함합니다. 결과적으로 RHEL 설치가 완료되어 설치 중에 예상되는 서비스를 활성화합니다.
Jira:RHEL-9633[1]
bootc-image-builder
는 개인 레지스트리에서 이미지 빌드를 지원하지 않음
현재 bootc-image-builder
를 사용하여 개인 레지스트리에서 제공되는 기본 디스크 이미지를 빌드할 수 없습니다. 이 문제를 해결하려면 프라이빗 레지스트리를 localhost에 복사한 다음 다음 인수를 사용하여 이미지를 빌드합니다.
-
--local
-
localhost/<image name>:tag
as the image
예를 들어 이미지를 빌드하려면 다음을 수행합니다.
오래된 네트워크 링크 구성 파일은 OS를 부팅할 수 없도록 렌더링합니다.
RHEL 설치 프로그램은 설치 중에 오래된 /etc/systemd/network/
링크 구성 파일을 생성합니다. 이러한 파일은 인터페이스 이름을 MAC 주소에 매핑하고 네트워크 구성이 변경될 때 문제를 발생시킵니다. 특히 오래된 파일은 의도한 네트워크 설정을 방해합니다. 이로 인해 TCP를 통해 부팅이 NVMe에서 있는 경우 부팅 불가능한 시스템이 생성됩니다. 이 문제를 해결하려면 수동으로 /etc/systemd/network/10-anaconda-ifname-nbft*.link
파일을 제거하고 dracut -f
명령을 실행하여 initramfs
임시 루트 파일 시스템을 다시 생성합니다.
Jira:RHELDOCS-18924
RHEL 설치 프로그램에서 aarch64에서 iSCSI 장치를 부팅 장치로 자동으로 검색하거나 사용하지 않습니다.
aarch64에서 실행되는 RHEL 설치 프로그램에 iscsi_ibft
커널 모듈이 없으면 펌웨어에 정의된 iSCSI 장치를 자동으로 검색할 수 없습니다. 이러한 장치는 GUI를 사용하여 수동으로 추가할 때 설치 관리자에 자동으로 표시되지 않거나 부팅 장치로 선택할 수 없습니다. 이 문제를 해결하려면 설치 프로그램을 부팅할 때 "inst.nonibftiscsiboot" 매개 변수를 커널 명령줄에 추가한 다음 GUI를 통해 iSCSI 장치를 수동으로 연결합니다. 결과적으로 설치 프로그램에서 연결된 iSCSI 장치를 부팅 가능으로 인식할 수 있으며 설치가 예상대로 완료됩니다.
자세한 내용은 KCS 솔루션을 참조하십시오.
Jira:RHEL-56135
11.2. 보안 링크 복사링크가 클립보드에 복사되었습니다!
PKCS #11 토큰이 원시 RSA 또는 RSA-PSS 서명 생성을 지원하는 경우 OpenSSL이 탐지되지 않음
TLS 1.3 프로토콜은 RSA-PSS 서명을 지원해야 합니다. PKCS #11 토큰이 원시 RSA 또는 RSA-PSS 서명을 지원하지 않는 경우 PKCS #11 토큰이 있는 경우 OpenSSL 라이브러리를 사용하는 서버 애플리케이션이 RSA 키로 작동하지 않습니다. 결과적으로 설명된 시나리오에서 TLS 통신이 실패합니다.
이 문제를 해결하려면 TLS 버전 1.2를 사용 가능한 최고 TLS 프로토콜 버전으로 사용하도록 서버 및 클라이언트를 구성합니다.
Bugzilla:1681178[1]
OpenSSL
이 원시 RSA 또는 RSA-PSS 서명을 지원하지 않는 PKCS #11 토큰을 잘못 처리
OpenSSL
라이브러리는 PKCS #11 토큰의 키 관련 기능을 탐지하지 않습니다. 결과적으로 원시 RSA 또는 RSA-PSS 서명을 지원하지 않는 토큰으로 서명이 생성되면 TLS 연결 설정이 실패합니다.
이 문제를 해결하려면 /etc/pki/tls/openssl.cnf
파일의 crypto_policy
섹션 끝에 .include
행 뒤에 다음 행을 추가합니다.
SignatureAlgorithms = RSA+SHA256:RSA+SHA512:RSA+SHA384:ECDSA+SHA256:ECDSA+SHA512:ECDSA+SHA384 MaxProtocol = TLSv1.2
SignatureAlgorithms = RSA+SHA256:RSA+SHA512:RSA+SHA384:ECDSA+SHA256:ECDSA+SHA512:ECDSA+SHA384
MaxProtocol = TLSv1.2
결과적으로 설명된 시나리오에서 TLS 연결을 설정할 수 있습니다.
Bugzilla:1685470[1]
특정 구문을 사용하여 자체적으로 복사된 파일을 scp
empties합니다.
scp
유틸리티는 SCP(Secure copy protocol)에서 더 안전한 SSH 파일 전송 프로토콜(SFTP)으로 변경되었습니다. 결과적으로 위치에서 동일한 위치로 파일을 복사하면 파일 콘텐츠가 지워집니다. 이 문제는 다음 구문에 영향을 미칩니다.
scp localhost:/myfile localhost:/myfile
이 문제를 해결하려면 이 구문을 사용하여 소스 위치와 동일한 파일을 대상에 복사하지 마십시오.
다음 구문에 대한 문제가 해결되었습니다.
-
scp /myfile localhost:/myfile
-
scp localhost:~/myfile ~/myfile
OSCAP Anaconda 애드온은 그래픽 설치에서 맞춤형 프로필을 가져오지 않습니다.
OSCAP Anaconda 애드온은 RHEL 그래픽 설치에서 보안 프로필의 맞춤을 선택하거나 선택 해제할 수 있는 옵션을 제공하지 않습니다. RHEL 8.8부터는 아카이브 또는 RPM 패키지에서 설치할 때 애드온은 기본적으로 고려되지 않습니다. 결과적으로 설치 시 OSCAP 맞춤형 프로필을 가져오는 대신 다음 오류 메시지가 표시됩니다.
There was an unexpected problem with the supplied content.
There was an unexpected problem with the supplied content.
이 문제를 해결하려면 Kickstart 파일의 %addon org_fedora_oscap
섹션에 경로를 지정해야 합니다. 예를 들면 다음과 같습니다.
xccdf-path = /usr/share/xml/scap/sc_tailoring/ds-combined.xml tailoring-path = /usr/share/xml/scap/sc_tailoring/tailoring-xccdf.xml
xccdf-path = /usr/share/xml/scap/sc_tailoring/ds-combined.xml
tailoring-path = /usr/share/xml/scap/sc_tailoring/tailoring-xccdf.xml
결과적으로 해당 Kickstart 사양에서만 OSCAP 맞춤형 프로필에 대해 그래픽 설치를 사용할 수 있습니다.
Ansible 수정에는 추가 컬렉션이 필요합니다.
ansible-core
패키지에서 Ansible Engine을 교체하면 RHEL 서브스크립션과 함께 제공되는 Ansible 모듈 목록이 줄어듭니다. 결과적으로 scap-security-guide
패키지에 포함된 Ansible 콘텐츠를 사용하는 수정을 실행하려면 rhc-worker-playbook
패키지의 컬렉션이 필요합니다.
Ansible 수정을 위해 다음 단계를 수행합니다.
필수 패키지를 설치합니다.
dnf install -y ansible-core scap-security-guide rhc-worker-playbook
# dnf install -y ansible-core scap-security-guide rhc-worker-playbook
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /usr/share/scap-security-guide/ansible
디렉토리로 이동합니다.cd /usr/share/scap-security-guide/ansible
# cd /usr/share/scap-security-guide/ansible
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 추가 Ansible 컬렉션의 경로를 정의하는 환경 변수를 사용하여 관련 Ansible 플레이북을 실행합니다.
ANSIBLE_COLLECTIONS_PATH=/usr/share/rhc-worker-playbook/ansible/collections/ansible_collections/ ansible-playbook -c local -i localhost, rhel9-playbook-cis_server_l1.yml
# ANSIBLE_COLLECTIONS_PATH=/usr/share/rhc-worker-playbook/ansible/collections/ansible_collections/ ansible-playbook -c local -i localhost, rhel9-playbook-cis_server_l1.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cis_server_l1
을 시스템을 수정하려는 프로필의 ID로 바꿉니다.
결과적으로 Ansible 콘텐츠가 올바르게 처리됩니다.
rhc-worker-playbook
에 제공된 컬렉션 지원은 scap-security-guide
에서 소싱된 Ansible 콘텐츠를 활성화하는 것으로 제한됩니다.
Keylime이 연결된 PEM 인증서를 허용하지 않음
Keylime이 단일 파일에 연결된 PEM 형식의 여러 인증서로 인증서 체인을 수신하면 keylime-agent-rust
Keylime 구성 요소가 서명 확인 중에 제공된 모든 인증서를 올바르게 사용하지 않아 TLS 핸드셰이크 오류가 발생합니다. 결과적으로 클라이언트 구성 요소(keylime_verifier
및 keylime_tenant
)는 Keylime 에이전트에 연결할 수 없습니다. 이 문제를 해결하려면 여러 인증서 대신 하나의 인증서만 사용하십시오.
Jira:RHELPLAN-157225[1]
Keylime은 다이제스트가 백슬래시로 시작하는 런타임 정책을 거부합니다.
런타임 정책 생성을 위한 현재 스크립트인 create_runtime_policy.sh
에서는 SHA 체크섬 함수(예: sha256sum
)를 사용하여 파일 다이제스트를 계산합니다. 그러나 입력 파일 이름에 백슬래시 또는 \n
이 포함된 경우 체크섬 함수는 출력의 다이제스트 앞에 백슬래시를 추가합니다. 이러한 경우 생성된 정책 파일이 잘못된 형식으로 표시됩니다. 잘못된 형식의 정책 파일을 제공하면 Keylime 테넌트에서 다음과 같은 오류 메시지를 생성합니다 . me.tenant - ERROR - 응답 코드 400: 런타임 정책은 잘못된 형식 입니다
. 이 문제를 해결하려면 다음 명령을 입력하여 잘못된 정책 파일에서 백슬래시를 수동으로 제거하십시오. sed -i 's/^\\//g' <malformed_file_name>
.
Jira:RHEL-11867[1]
Keylime 에이전트는 업데이트 후 확인자 요청 거부
Keylime 에이전트의 API 버전 번호(keylime-agent-rust
)가 업데이트되면 에이전트는 다른 버전을 사용하는 요청을 거부합니다. 결과적으로 Keylime 에이전트가 확인자에 추가된 후 업데이트되면 확인자가 이전 API 버전을 사용하여 에이전트에 연결을 시도합니다. 에이전트는 이 요청을 거부하고 인증에 실패합니다. 이 문제를 해결하려면 에이전트를 업데이트하기 전에 검증자(keylime-verifier
)를 업데이트합니다(keylime-agent-rust
). 결과적으로 에이전트가 업데이트되면 검증기에서 API 변경을 감지하고 그에 따라 저장된 데이터를 업데이트합니다.
Jira:RHEL-1518[1]
trustdb
에서 파일이 누락되어 fapolicyd
가 거부됨
fapolicyd
가 Ansible DISA STIG 프로파일과 함께 설치되면 경쟁 조건으로 인해 trustdb
데이터베이스가 rpmdb
데이터베이스와 동기화되지 않습니다. 결과적으로 trustdb
에서 파일이 누락되어 시스템에서 거부가 발생합니다. 이 문제를 해결하려면 fapolicyd
를 다시 시작하거나 Ansible DISA STIG 프로필을 다시 실행합니다.
Jira:RHEL-24345[1]
fapolicyd
유틸리티에서 변경된 파일을 잘못 실행할 수 있습니다.
올바르게 파일의 IMA 해시는 파일을 변경한 후 업데이트해야 하며 fapolicyd
는 변경된 파일의 실행을 방지해야 합니다. 그러나 이는 IMA 정책 설정의 차이점과 evctml
유틸리티의 파일 해시로 인해 발생하지 않습니다. 결과적으로 IMA 해시는 변경된 파일의 확장된 속성에서 업데이트되지 않습니다. 결과적으로 fapolicyd
에서 변경된 파일을 잘못 실행할 수 있습니다.
Jira:RHEL-520[1]
기본 SELinux 정책을 사용하면 제한되지 않은 실행 파일이 스택을 실행 가능하게 만들 수 있습니다.
SELinux 정책에서 selinuxuser_execstack
부울의 기본 상태는 on입니다. 즉, 제한되지 않은 실행 파일이 스택을 실행 가능하게 만들 수 있습니다. 실행 파일은 이 옵션을 사용하지 않아야 하며 잘못 코딩된 실행 파일 또는 가능한 공격을 나타낼 수 있습니다. 그러나 다른 툴, 패키지 및 타사 제품과의 호환성으로 인해 Red Hat은 기본 정책의 부울 값을 변경할 수 없습니다. 시나리오가 이러한 호환성 측면에 의존하지 않는 경우 setsebool -P selinuxuser_execstack off
명령을 입력하여 로컬 정책에서 부울을 끌 수 있습니다.
STIG 프로필의 SSH 시간 제한 규칙에서 잘못된 옵션 구성
OpenSSH 업데이트는 다음 Defense Information Systems Agency Security Technical Implementation Guide (DISA STIG) 프로파일의 규칙에 영향을 미쳤습니다.
-
DISA STIG for RHEL 9 (
xccdf_org.ssgproject.content_profile_stig
) -
DISA STIG with GUI for RHEL 9 (
xccdf_org.ssgproject.content_profile_stig_gui
)
이러한 각 프로필에서는 다음 두 가지 규칙이 영향을 받습니다.
SSH 서버에 적용하면 이러한 각 규칙에서 이전과 같이 더 이상 작동하지 않는 옵션(ClientAliveCountMax
및 ClientAliveInterval
)을 구성합니다. 결과적으로 OpenSSH는 이러한 규칙에 의해 구성된 타임아웃에 도달하면 더 이상 유휴 SSH 사용자의 연결을 끊지 않습니다. 해결 방법으로 이러한 규칙은 솔루션이 개발될 때까지 RHEL 9용 DISA STIG 및 GUI for RHEL 9 프로필의 DISA STIG에서 일시적으로 제거되었습니다.
GnuPG는 crypto-policies
에서 허용하지 않는 경우에도 SHA-1 서명을 잘못 사용할 수 있습니다.
GNU Privacy Guard(GnuPG) 암호화 소프트웨어는 시스템 전체 암호화 정책에 정의된 설정과 관계없이 SHA-1 알고리즘을 사용하는 서명을 생성하고 확인할 수 있습니다. 결과적으로 DEFAULT
암호화 정책의 암호화 목적으로 SHA-1을 사용할 수 있습니다. 이는 서명에 대해 안전하지 않은 알고리즘의 시스템 전체 사용 중단과 일치하지 않습니다.
이 문제를 해결하려면 SHA-1과 관련된 GnuPG 옵션을 사용하지 마십시오. 결과적으로 GnuPG가 비보안 SHA-1 서명을 사용하여 기본 시스템 보안을 낮추지 않도록 합니다.
OpenSCAP 메모리 사용량 문제
메모리가 제한된 시스템에서 OpenSCAP 스캐너가 미리 중지되거나 결과 파일을 생성하지 못할 수 있습니다. 이 문제를 해결하려면 전체 /
파일 시스템에 대한 재귀와 관련된 규칙을 선택 해제하도록 스캔 프로필을 사용자 지정할 수 있습니다.
-
rpm_verify_hashes
-
rpm_verify_permissions
-
rpm_verify_ownership
-
file_permissions_unauthorized_world_writable
-
no_files_unowned_by_user
-
dir_perms_world_writable_system_owned
-
file_permissions_unauthorized_suid
-
file_permissions_unauthorized_sgid
-
file_permissions_ungroupowned
-
dir_perms_world_writable_sticky_bits
자세한 내용 및 해결 방법은 관련 지식 베이스 문서를 참조하십시오.
Kickstart 설치 중에 서비스 관련 규칙 수정에 실패할 수 있습니다.
Kickstart 설치 중에 OpenSCAP 유틸리티에서 서비스 활성화
또는 비활성화
상태 수정이 필요하지 않은 것으로 잘못 표시되는 경우가 있습니다. 그 결과 OpenSCAP에서 설치된 시스템의 서비스를 비준수 상태로 설정할 수 있습니다. 이 문제를 해결하려면 Kickstart 설치 후 시스템을 스캔하고 수정할 수 있습니다. 이렇게 하면 서비스 관련 문제가 해결됩니다.
Jira:RHELPLAN-44202[1]
CNSA 1.0으로 인한 영향을 받는 FIPS:OSPP
호스트의 상호 운용성
OSPP
하위 정책은 CCNSA(Commercial National Security Algorithm) 1.0과 일치했습니다. 이는 다음과 같은 주요 측면과 FIPS:OSPP
정책-subpolicy 조합을 사용하는 호스트의 상호 운용성에 영향을 미칩니다.
- 최소 RSA 키 크기는 3072비트로 필요합니다.
- 알고리즘 협상은 AES-128 암호, secp256r1 elliptic 곡선 및 FFDHE-2048 그룹을 더 이상 지원하지 않습니다.
Jira:RHEL-2735[1]
SELinux 정책에서 SQL 데이터베이스에 대한 누락된 규칙 블록 권한
SELinux 정책에서 누락된 권한 규칙은 SQL 데이터베이스에 대한 연결을 차단합니다. 결과적으로 FIDO Device Onboard(FDO) 서비스 fdo-manufacturing-server.service
,fdo-owner-onboarding-server.service
, fdo-rendezvous-server.service
는 PostgreSQL 및 SQLite와 같은 FDO 데이터베이스에 연결할 수 없습니다. 따라서 시스템은 자격 증명 및 소유권 바우처 저장과 같은 기타 매개 변수에 지원되는 데이터베이스를 사용하여 FDO를 시작할 수 없습니다.
다음 단계를 수행하여 이 문제를 해결할 수 있습니다.
local_fdo_update.cil
이라는 새 파일을 생성하고 누락된 SELinux 정책 규칙을 입력합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow policy 모듈 패키지를 설치합니다.
semodule -i local_fdo_update.cil
# semodule -i local_fdo_update.cil
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
그 결과 FDO는 PostgreSQL 데이터베이스에 연결하고 /var/lib/fdo/
.에 대한 SQLite 권한과 관련된 문제를 해결할 수 있습니다. 이 문제는 SQLite 데이터베이스 파일이 있을 것으로 예상됩니다.
OpenSSH는 인증 전에 더 이상 타임아웃을 기록하지 않음
OpenSSH는 로그에 $IP 포트 $PORT
에 대한 인증 전에 시간 초과를 기록하지 않습니다. Fail2Ban 침입 방지 데몬과 유사한 시스템에서 이러한 로그 레코드를 mdre-ddos
정규식에 사용하고 더 이상 이러한 유형의 공격을 시도하는 클라이언트의 IP를 금지하지 않기 때문에 이는 중요할 수 있습니다. 현재 이 문제에 대한 알려진 해결방법이 없습니다.
11.3. RHEL for Edge 링크 복사링크가 클립보드에 복사되었습니다!
edge-vsphere
이미지에서 open-vm-tools
패키지를 사용할 수 없습니다.
현재 open-vm-tools
패키지는 기본적으로 edge-vsphere
이미지에 설치되지 않습니다. 이 문제를 해결하려면 블루프린트 사용자 지정에 패키지를 포함합니다. edge-vsphere
이미지 유형을 사용하는 경우 RHEL for Edge Container 이미지 또는 RHEL for Edge 커밋 이미지의 블루프린트에 open-vm-tools
를 추가합니다.
Jira:RHELDOCS-16574[1]
11.4. 소프트웨어 관리 링크 복사링크가 클립보드에 복사되었습니다!
설치 프로세스가 응답하지 않는 경우가 있음
RHEL을 설치하면 설치 프로세스가 응답하지 않는 경우가 있습니다. /tmp/packaging.log
파일에는 끝에 다음 메시지가 표시됩니다.
10:20:56,416 DDEBUG dnf: RPM transaction over.
10:20:56,416 DDEBUG dnf: RPM transaction over.
이 문제를 해결하려면 설치 프로세스를 다시 시작하십시오.
로컬 리포지토리에서 createrepo_c
를 실행하면 중복 repodata
파일이 생성됩니다.
로컬 리포지토리에서 createrepo_c
명령을 실행하면 repodata
파일의 중복 복사본을 생성합니다. 사본 중 하나는 압축되어 있지 않습니다. 사용 가능한 해결방법은 없지만 중복 파일을 무시해도 됩니다. createrepo_c
명령은 createrepo_c
를 사용하여 생성된 리포지토리에 의존하는 다른 툴의 요구 사항 및 차이로 인해 중복 복사본을 생성합니다.
11.5. 쉘 및 명령행 툴 링크 복사링크가 클립보드에 복사되었습니다!
ifcfg
파일을 사용하여 네트워크 인터페이스 이름 변경 실패
RHEL 9에서는 initscripts
패키지가 기본적으로 설치되지 않습니다. 결과적으로 ifcfg
파일을 사용하여 네트워크 인터페이스 이름을 변경할 수 없습니다. 이 문제를 해결하려면 udev
규칙 또는 링크 파일을 사용하여 인터페이스 이름을 바꾸는 것이 좋습니다. 자세한 내용은 Consistent 네트워크 인터페이스 장치 이름 지정 및 systemd.link(5)
도움말 페이지를 참조하십시오.
권장 솔루션 중 하나를 사용할 수 없는 경우 initscripts
패키지를 설치합니다.
Bugzilla:2018112[1]
chkconfig
패키지는 RHEL 9에 기본적으로 설치되지 않음
시스템 서비스에 대한 실행 수준 정보를 업데이트하고 쿼리하는 chkconfig
패키지는 RHEL 9에 기본적으로 설치되지 않습니다.
서비스를 관리하려면 systemctl
명령을 사용하거나 chkconfig
패키지를 수동으로 설치합니다.
systemd
에 대한 자세한 내용은 systemd 소개를 참조하십시오. systemctl
유틸리티를 사용하는 방법에 대한 자세한 내용은 systemctl을 사용하여 시스템 서비스 관리를 참조하십시오.
Bugzilla:2053598[1]
initscripts
패키지는 기본적으로 설치되지 않습니다.
기본적으로 initscripts
패키지는 설치되지 않습니다. 결과적으로 ifup
및 ifdown
유틸리티를 사용할 수 없습니다. 또는 nmcli connection up
및 nmcli connection down
명령을 사용하여 연결을 활성화 및 비활성화합니다. 제안된 대체 방법이 작동하지 않는 경우 문제를 보고하고 ifup
및 ifdown
유틸리티에 대한 NetworkManager 솔루션을 제공하는 NetworkManager-initscripts-updown
패키지를 설치합니다.
콘솔 키맵
을 설정하려면 최소 설치 시 libxkbcommon
라이브러리가 필요합니다.
RHEL 9에서는 특정 systemd
라이브러리 종속성이 동적 연결에서 동적 로드로 변환되어 시스템이 열려 있을 때 런타임 시 라이브러리가 열립니다. 이 변경으로 필요한 라이브러리를 설치하지 않는 한 이러한 라이브러리에 종속되는 기능을 사용할 수 없습니다. 이는 최소 설치가 있는 시스템의 키보드 레이아웃 설정에도 영향을 미칩니다. 그 결과 localectl --no-convert set-x11-keymap gb
명령이 실패합니다.
이 문제를 해결하려면 libxkbcommon
라이브러리를 설치합니다.
dnf install libxkbcommon
# dnf install libxkbcommon
Cryo stat
패키지의 %vmeff
메트릭에 잘못된 값이 표시됩니다.
Cryo stat
패키지는 %vmeff
메트릭을 제공하여 페이지 회수 효율성을 측정합니다. Cryostat는 이후 커널 버전에서 제공하는 모든 관련 /proc/vm
값을 구문 분석하지 않기 때문에 stat
sar -B
명령에서 반환된 %vmeff
열의 값이 올바르지 않습니다. 이 문제를 해결하려면 /proc/vmstat
파일에서 %vmeff
값을 수동으로 계산할 수 있습니다. 자세한 내용은 sar(1)
툴이 RHEL 8 및 RHEL 9에서 %
100 %를 초과하는 %를 보고하는이유를 참조하십시오.
SLP(Service Location Protocol)는 UDP를 통한 공격에 취약합니다.
OpenSLP는 프린터 및 파일 서버와 같은 로컬 영역 네트워크의 애플리케이션에 대한 동적 구성 메커니즘을 제공합니다. 그러나 SLP는 인터넷에 연결된 시스템에서 UDP를 통한 서비스 확장 공격에 취약합니다. SLP를 사용하면 인증되지 않은 공격자가 SLP 구현에 의해 설정된 제한 없이 새 서비스를 등록할 수 있습니다. UDP를 사용하여 소스 주소를 스푸핑하면 공격자는 서비스 목록을 요청하여 스푸핑된 주소에 서비스 거부를 생성할 수 있습니다.
외부 공격자가 SLP 서비스에 액세스하지 못하도록 인터넷에 직접 연결된 네트워크와 같이 신뢰할 수 없는 네트워크에서 SLP를 비활성화합니다. 또는 이 문제를 해결하려면 UDP 및 TCP 포트 427에서 트래픽을 차단하거나 필터링하도록 방화벽을 구성합니다.
Jira:RHEL-6995[1]
Secure Boot가 활성화된 UEFI
시스템의 ReaR 복구 이미지가 기본 설정으로 부팅되지 않음
rear mkrescue
또는 rear mkbackup
명령을 사용하여 이미지를 다시 작성하면 다음 메시지와 함께 실패합니다.
grub2-mkstandalone may fail to make a bootable EFI image of GRUB2 (no /usr/*/grub*/x86_64-efi/moddep.lst file) (...) grub2-mkstandalone: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory.
grub2-mkstandalone may fail to make a bootable EFI image of GRUB2 (no /usr/*/grub*/x86_64-efi/moddep.lst file)
(...)
grub2-mkstandalone: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory.
누락된 파일은 grub2-efi-x64-modules
패키지의 일부입니다. 이 패키지를 설치하면 오류 없이 복구 이미지가 성공적으로 생성됩니다. UEFI
Secure Boot가 활성화되면 서명되지 않은 부트 로더를 사용하므로 복구 이미지를 부팅할 수 없습니다.
이 문제를 해결하려면 /etc/rear/local.conf
또는 /etc/rear/site.conf
ReaR 구성 파일에 다음 변수를 추가합니다.
UEFI_BOOTLOADER=/boot/efi/EFI/redhat/grubx64.efi SECURE_BOOT_BOOTLOADER=/boot/efi/EFI/redhat/shimx64.efi
UEFI_BOOTLOADER=/boot/efi/EFI/redhat/grubx64.efi
SECURE_BOOT_BOOTLOADER=/boot/efi/EFI/redhat/shimx64.efi
제안된 해결 방법을 통해 grub2-efi-x64-modules
패키지가 없는 시스템에서도 이미지를 성공적으로 생성할 수 있으며 Secure Boot가 활성화된 시스템에서 부팅할 수 있습니다. 또한 시스템 복구 중에 복구된 시스템의 부트로더가 EFI
shim 부트로더로 설정됩니다.
UEFI
,Secure Boot
및 shim 부트로더
에 대한 자세한 내용은 UEFI: 시스템 기술 자료 문서를 부팅할 때 발생하는 내용을 참조하십시오.
Jira:RHELDOCS-18064[1]
sar
및 iostat
유틸리티로 생성된 %util
열은 유효하지 않습니다.
sar
또는 iostat
유틸리티를 사용하여 시스템 사용량 통계를 수집할 때 sar
또는 iostat
에서 생성한 %util
열에 잘못된 데이터가 포함될 수 있습니다.
Jira:RHEL-26275[1]
RHEL 9에서는 lsb-release
바이너리를 사용할 수 없습니다.
/etc/os-release
의 정보는 이전에 lsb-release
바이너리를 호출하여 사용할 수 있었습니다. 이 바이너리는 RHEL 9에서 제거된 redhat-lsb 패키지에
포함되어 있습니다. 이제 /etc/os-release
파일을 읽고 배포, 버전, 코드 이름 및 관련 메타데이터와 같은 운영 체제에 대한 정보를 표시할 수 있습니다. 이 파일은 Red Hat에서 제공하며 이에 대한 변경 사항은 redhat-release
패키지의 각 업데이트로 덮어씁니다. 파일 형식은 KEY=VALUE
이며 쉘 스크립트의 데이터를 안전하게 가져올 수 있습니다.
Jira:RHELDOCS-16427[1]
11.6. 인프라 서비스 링크 복사링크가 클립보드에 복사되었습니다!
bind
및 unbound
모두 SHA-1 기반 서명의 검증을 비활성화합니다.
바인딩 및
구성 요소는 모든 RSA/SHA1(알고리치 번호 5) 및 RSASHA1-NSEC3-SHA1(algorithm 번호 7) 서명의 유효성 검사를 비활성화하며 서명에 대한 SHA-1 사용은 DEFAULT 시스템 전체 암호화 정책에서 제한됩니다.
바인딩
되지 않은
결과적으로 SHA-1, RSA/SHA1 및 RSASHA1-NSEC3-SHA1 다이제스트 알고리즘과 서명된 특정 DNSSEC 레코드가 Red Hat Enterprise Linux 9에서 확인하지 못하고 영향을 받는 도메인 이름이 취약해집니다.
이 문제를 해결하려면 RSA/SHA-256 또는 elliptic 곡선 키와 같은 다른 서명 알고리즘으로 업그레이드하십시오.
영향을 받는 도메인 및 영향을 받는 최상위 도메인 목록은 RSASHA1로 서명된 DNSSEC 레코드가 솔루션을 확인하지 못했습니다.
동일한 쓰기 가능 영역 파일이 여러 영역에서 사용되는 경우 named
가 시작되지 않습니다.
BIND에서는 여러 영역에서 동일한 쓰기 가능 영역 파일을 허용하지 않습니다. 결과적으로 구성에 이름이
지정된 서비스에서 수정할 수 있는 파일의 경로를 공유하는 여러 영역이 포함된 경우 named
가 시작되지 않습니다. 이 문제를 해결하려면 in-view
절을 사용하여 여러 뷰 간에 하나의 영역을 공유하고 다른 영역에 다른 경로를 사용해야 합니다. 예를 들어 경로에 보기 이름을 포함합니다.
쓰기 가능한 영역 파일은 일반적으로 DNSSEC에서 유지 관리하는 동적 업데이트, 보조 영역 또는 영역이 있는 영역에서 사용됩니다.
libotr
가 FIPS와 호환되지 않음
OTR(off-the-record) 메시징용 libotr
라이브러리 및 툴킷은 인스턴트 메시징 대화를 위한 엔드 투 엔드 암호화를 제공합니다. 그러나 libotr
라이브러리는 gcry_pk_sign()
및 gcry_pk_verify()
함수를 사용하므로 FIPS(Federal Information Processing Standards)를 준수하지 않습니다. 결과적으로 FIPS 모드에서 libotr
라이브러리를 사용할 수 없습니다.
11.7. 네트워킹 링크 복사링크가 클립보드에 복사되었습니다!
kTLS는 TLS 1.3을 NIC로의 오프로드를 지원하지 않습니다.
kTLS(커널 전송 계층 보안)는 TLS 1.3을 NIC로의 오프로드를 지원하지 않습니다. 결과적으로 NIC가 TLS 오프로드를 지원하는 경우에도 소프트웨어 암호화가 TLS 1.3과 함께 사용됩니다. 이 문제를 해결하려면 오프로드가 필요한 경우 TLS 1.3을 비활성화합니다. 따라서 TLS 1.2만 오프로드할 수 있습니다. TLS 1.3을 사용하는 경우 TLS 1.3을 오프로드할 수 없기 때문에 성능이 향상됩니다.
Bugzilla:2000616[1]
세션 키를 업데이트하지 않으면 연결이 중단됨
kTLS(커널 전송 계층 보안) 프로토콜은 대칭 암호화에서 사용되는 세션 키 업데이트를 지원하지 않습니다. 결과적으로 사용자가 키를 업데이트할 수 없으므로 연결이 끊어집니다. 이 문제를 해결하려면 kTLS를 비활성화합니다. 결과적으로 해결방법을 사용하면 세션 키를 성공적으로 업데이트할 수 있습니다.
Bugzilla:2013650[1]
11.8. 커널 링크 복사링크가 클립보드에 복사되었습니다!
커널 페이지 크기에 따라 종속 항목이 있는 고객 애플리케이션은 4k에서 64k 페이지 크기 커널로 이동할 때 업데이트해야 할 수 있습니다.
RHEL은 4k 및 64k 페이지 크기 커널과 호환됩니다. 4k 커널 페이지 크기에 종속된 고객 애플리케이션은 4k에서 64k 페이지 크기 커널로 이동할 때 업데이트해야 할 수 있습니다. 알려진 인스턴스에는 jemalloc
및 종속 애플리케이션이 포함됩니다.
jemalloc
메모리 al Cryostat 라이브러리는 시스템의 런타임 환경에서 사용되는 페이지 크기에 민감합니다. 라이브러리는 4k 및 64k 페이지 크기 커널(예: --with-lg-page=16
또는 env JEMALLOC_SYS_WITH_LG_PAGE=16
)과 호환되도록 빌드할 수 있습니다. 결과적으로 런타임 환경의 페이지 크기와
jemalloc
에 의존하는 바이너리를 컴파일할 때 존재하는 페이지 크기 간에 불일치가 발생할 수 있습니다. 결과적으로 jemalloc
기반 애플리케이션을 사용하면 다음 오류가 트리거됩니다.
<jemalloc>: Unsupported system page size
<jemalloc>: Unsupported system page size
이 문제를 방지하려면 다음 방법 중 하나를 사용하십시오.
- 적절한 빌드 구성 또는 환경 옵션을 사용하여 4k 및 64k 페이지 크기 호환 바이너리를 생성합니다.
-
최종 64k 커널 및 런타임 환경으로 부팅한 후
jemalloc
을 사용하는 사용자 공간 패키지를 빌드합니다.
예를 들어, Rust 패키지 관리자와 함께 jemalloc
도 사용하는 fd-find
툴을 빌드할 수 있습니다. 최종 64k 환경에서 다음을 입력하여 모든 종속 항목의 새 빌드를 트리거하여 페이지 크기의 불일치를
해결합니다
.
cargo install fd-find --force
# cargo install fd-find --force
Bugzilla:2167783[1]
dnf
를 사용하여 최신 실시간 커널로 업그레이드해도 여러 커널 버전이 병렬로 설치되지 않음
dnf
패키지 관리자를 사용하여 최신 실시간 커널을 설치하려면 패키지 종속성을 확인해야 새 커널 버전과 현재 커널 버전을 동시에 유지해야 합니다. 기본적으로 dnf
는 업그레이드 중에 이전 kernel-rt
패키지를 제거합니다.
이 문제를 해결하려면 /etc/yum.conf
구성 파일의 installonlypkgs
옵션에 현재 kernel-rt
패키지를 추가합니다(예: installonlypkgs=kernel-rt
).
installonlypkgs
옵션은 dnf
에서 사용하는 기본 목록에 kernel-rt
를 추가합니다. installonlypkgs
지시문에 나열된 패키지는 자동으로 제거되지 않으므로 동시에 설치할 여러 커널 버전을 지원합니다.
여러 커널이 설치되어 있는 것은 새 커널 버전으로 작업할 때 대체 옵션을 사용하는 방법입니다.
Bugzilla:2181571[1]
지연 계정
기능은 기본적으로 SWAPIN
및 IO%
통계 열을 표시하지 않습니다.
초기 버전과 달리 지연된
계정 기능은 기본적으로 비활성화되어 있습니다. 결과적으로 iotop
애플리케이션에 SWAPIN
및 IO%
통계 열이 표시되지 않고 다음 경고가 표시됩니다.
CONFIG_TASK_DELAY_ACCT not enabled in kernel, cannot determine SWAPIN and IO%
CONFIG_TASK_DELAY_ACCT not enabled in kernel, cannot determine SWAPIN and IO%
작업stats
인터페이스를 사용하여 스레드 그룹에 속하는 모든 작업 또는 스레드에 대한 지연 통계를 제공합니다. 작업 실행 지연은 커널 리소스가 제공될 때까지 기다립니다(예: 사용 가능한 CPU가 실행될 때까지 기다리는 작업). 작업의 CPU 우선 순위, I/O 우선 순위 및
rss
제한 값을 적절하게 설정하는 데 도움이 됩니다.
이 문제를 해결하려면 런타임 또는 부팅 시 delayacct
부팅 옵션을 활성화할 수 있습니다.
런타임에
delayacct
를 활성화하려면 다음을 입력합니다.echo 1 > /proc/sys/kernel/task_delayacct
echo 1 > /proc/sys/kernel/task_delayacct
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 기능 시스템 전체 기능을 활성화하지만 이 명령을 실행한 후에 시작하는 작업에만 적용됩니다.
부팅 시
지연을
영구적으로 활성화하려면 다음 절차 중 하나를 사용합니다./etc/sysctl.conf
파일을 편집하여 기본 매개변수를 재정의합니다./etc/sysctl.conf
파일에 다음 항목을 추가합니다.kernel.task_delayacct = 1
kernel.task_delayacct = 1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 자세한 내용은 Red Hat Enterprise Linux에서 sysctl 변수를 설정하는 방법을 참조하십시오.
- 변경 사항을 적용하려면 시스템을 재부팅합니다.
커널 명령줄에
delayacct
옵션을 추가합니다.자세한 내용은 커널 명령줄 매개변수 구성을 참조하십시오.
결과적으로 iotop
애플리케이션에 SWAPIN
및 IO%
통계 열이 표시됩니다.
Bugzilla:2132480[1]
코어가 큰 시스템에서 실시간 커널의 하드웨어 인증으로 skew_tick=1
부팅 매개변수를 전달해야 할 수 있습니다.
다수의 소켓과 대규모 코어 개수가 있는 대규모 또는 중간 규모의 시스템은 시간 보관 시스템에 사용되는 xtime_lock
의 잠금 경합으로 인해 대기 시간이 급증할 수 있습니다. 결과적으로 멀티프로세싱 시스템에서 대기 시간이 급증하고 하드웨어 인증 지연이 발생할 수 있습니다. 이 문제를 해결하려면 skew_tick=1
부팅 매개변수를 추가하여 CPU당 타이머 눈금을 다른 시간에 시작할 수 있습니다.
잠금 충돌을 방지하려면 skew_tick=1
을 활성화합니다.
grubby
를 사용하여skew_tick=1
매개변수를 활성화합니다.grubby --update-kernel=ALL --args="skew_tick=1"
# grubby --update-kernel=ALL --args="skew_tick=1"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 변경 사항을 적용하려면 재부팅하십시오.
부팅 중에 전달하는 커널 매개변수를 표시하여 새 설정을 확인합니다.
cat /proc/cmdline
cat /proc/cmdline
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
skew_tick=1
을 활성화하면 전력 소비가 크게 증가하므로 대기 시간에 민감한 실시간 워크로드를 실행하는 경우에만 활성화해야 합니다.
Jira:RHEL-9318[1]
kdump
메커니즘이 LUKS 암호화 대상에서 vmcore
파일을 캡처하지 못했습니다
Linux 통합 키 설정(LUKS) 암호화된 파티션이 있는 시스템에서 kdump
를 실행하는 경우 시스템에 특정 양의 사용 가능한 메모리가 필요합니다. 사용 가능한 메모리가 필요한 메모리 양보다 작으면 systemd-cryptsetup
서비스가 파티션을 마운트하지 못합니다. 결과적으로 두 번째 커널은 LUKS 암호화 대상에서 크래시 덤프 파일을 캡처하지 못합니다.
이 문제를 해결하려면 Recommended crashkernel 값을 쿼리하고
메모리 크기를 적절한 값으로 점진적으로 늘립니다. Recommended crashkernel 값은
필요한 메모리 크기를 설정하는 참조 역할을 할 수 있습니다.
추정된 크래시 커널 값을 출력합니다.
kdumpctl estimate
# kdumpctl estimate
Copy to Clipboard Copied! Toggle word wrap Toggle overflow crashkernel
값을 늘려 필요한 메모리 양을 구성합니다.grubby --args=crashkernel=652M --update-kernel=ALL
# grubby --args=crashkernel=652M --update-kernel=ALL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 변경 사항을 적용하려면 시스템을 재부팅합니다.
reboot
# reboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
결과적으로 kdump
는 LUKS 암호화 파티션이 있는 시스템에서 올바르게 작동합니다.
Jira:RHEL-11196[1]
kdump
서비스가 IBM Z 시스템에서 initrd
파일을 빌드하지 못했습니다
64비트 IBM Z 시스템에서 s390-subchannels
와 같은 znet
관련 구성 정보가 비활성 NetworkManager
연결 프로필에 있는 경우 kdump
서비스가 초기 RAM 디스크(initrd
)를 로드하지 못합니다. 결과적으로 kdump
메커니즘이 다음 오류와 함께 실패합니다.
dracut: Failed to set up znet kdump: mkdumprd: failed to make kdump initrd
dracut: Failed to set up znet
kdump: mkdumprd: failed to make kdump initrd
이 문제를 해결하려면 다음 솔루션 중 하나를 사용하십시오.
znet
구성 정보가 있는 연결 프로필을 다시 사용하여 네트워크 본딩 또는 브리지를 구성합니다.nmcli connection modify enc600 master bond0 slave-type bond
$ nmcli connection modify enc600 master bond0 slave-type bond
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 비활성 연결 프로필에서 활성 연결 프로필에
znet
구성 정보를 복사합니다.nmcli
명령을 실행하여NetworkManager
연결 프로필을 쿼리합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 비활성 연결의 구성 정보로 활성 프로필을 업데이트합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 변경 사항을 적용하려면
kdump
서비스를 다시 시작하십시오.kdumpctl restart
# kdumpctl restart
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
iwl7260-firmware
는 Intel Wi-Fi 6 AX200, AX210 및 CryostatPad P1 Cryostat 4에서 Wi-Fi를 분리합니다.
iwl7260-firmware
또는 iwl7260-wifi
드라이버를 RHEL 9.1 이상에서 제공하는 버전으로 업데이트한 후 하드웨어가 잘못된 내부 상태가 됩니다. 상태를 잘못 보고합니다. 결과적으로 Intel Wifi 6 카드가 작동하지 않고 오류 메시지를 표시할 수 있습니다.
kernel: iwlwifi 0000:09:00.0: Failed to start RT ucode: -110 kernel: iwlwifi 0000:09:00.0: WRT: Collecting data: ini trigger 13 fired (delay=0ms) kernel: iwlwifi 0000:09:00.0: Failed to run INIT ucode: -110
kernel: iwlwifi 0000:09:00.0: Failed to start RT ucode: -110
kernel: iwlwifi 0000:09:00.0: WRT: Collecting data: ini trigger 13 fired (delay=0ms)
kernel: iwlwifi 0000:09:00.0: Failed to run INIT ucode: -110
확인되지 않은 해결 방법은 시스템의 전원을 끄고 다시 켜는 것입니다. 재부팅하지 마십시오.
Bugzilla:2129288[1]
kmod
의 약한 모듈이 모듈
상호 의존과 함께 작동하지 않음
kmod
패키지에서 제공하는 weak-modules
스크립트는 설치된 커널과 kABI와 호환되는 모듈을 결정합니다. 그러나 모듈의 커널 호환성을 확인하는 동안 약한 모듈은
빌드된 커널의 상위 릴리스에서 더 낮은 릴리스까지 종속성을 기호화합니다. 결과적으로 다른 커널 릴리스에 빌드된 상호 종속 관계가 있는 모듈은 호환되지 않는 것으로 해석될 수 있으므로 이 시나리오에서는 weak-modules
스크립트가 작동하지 않을 수 있습니다.
이 문제를 해결하려면 새 커널을 설치하기 전에 최신 커널에 대해 추가 모듈을 빌드하거나 배치하십시오.
Bugzilla:2103605[1]
Intel® i40e
어댑터가 IBM Power10에서 영구적으로 실패합니다.
IBM Power10 시스템에서 i40e
어댑터가 I/O 오류가 발생하면EEH(Enhanced I/O Error Handling) 커널 서비스가 네트워크 드라이버의 재설정 및 복구를 트리거합니다. 그러나 EEH는 i40e
드라이버가 사전 정의된 최대 EEH에 도달할 때까지 I/O 오류를 반복적으로 보고합니다. 결과적으로 EEH로 인해 장치가 영구적으로 실패합니다.
Jira:RHEL-15404[1]
dkms
는 64비트 ARM CPU에서 올바르게 컴파일된 드라이버를 사용하여 프로그램 오류에 대한 잘못된 경고를 제공합니다.
동적 커널 모듈 지원(dkms
) 유틸리티는 64비트 ARM CPU의 커널 헤더가 4 kB 및 64 kB 페이지 크기가 있는 커널 모두에서 작동하는지 인식하지 못합니다. 결과적으로 커널 업데이트가 수행되고 kernel-64k-devel
패키지가 설치되지 않은 경우 dkms
는 프로그램이 올바르게 컴파일된 드라이버에서 실패한 이유에 대한 잘못된 경고를 제공합니다. 이 문제를 해결하려면 두 가지 유형의 ARM CPU 아키텍처에 대한 헤더 파일이 포함된 kernel-headers
패키지를 설치하고 dkms
및 해당 요구 사항에 국한되지 않습니다.
Jira:RHEL-25967[1]
11.9. 파일 시스템 및 스토리지 링크 복사링크가 클립보드에 복사되었습니다!
NVMe/TCP에서 장치 매퍼 멀티패스가 지원되지 않음
nvme-tcp
드라이버와 함께 장치 매퍼 Multipath를 사용하면 호출 추적 경고 및 시스템 불안정성이 발생할 수 있습니다. 이 문제를 해결하려면 NVMe/TCP 사용자는 네이티브 NVMe 멀티패스를 활성화하고 NVMe에서 device-mapper-multipath
툴을 사용하지 않아야 합니다.
기본적으로 RHEL 9에서는 Native NVMe 멀티패스가 활성화됩니다. 자세한 내용은 NVMe 장치에서 다중 경로 활성화를 참조하십시오.
Bugzilla:2033080[1]
blk-availability
systemd 서비스는 복잡한 장치 스택을 비활성화합니다.
systemd
에서 기본 블록 비활성화 코드는 항상 복잡한 가상 블록 장치 스택을 올바르게 처리하지는 않습니다. 일부 구성에서는 종료 중에 가상 장치가 제거되지 않을 수 있으므로 오류 메시지가 기록됩니다. 이 문제를 해결하려면 다음 명령을 실행하여 복잡한 블록 장치 스택을 비활성화합니다.
systemctl enable --now blk-availability.service
# systemctl enable --now blk-availability.service
결과적으로 종료 중에 복잡한 가상 장치 스택이 올바르게 비활성화되고 오류 메시지가 생성되지 않습니다.
Bugzilla:2011699[1]
할당량이 활성화된 XFS 파일 시스템에 더 이상 할당량 계산을 비활성화할 수 없습니다.
RHEL 9.2부터 할당량이 활성화된 XFS 파일 시스템에서 할당량 계정을 더 이상 비활성화할 수 없습니다.
이 문제를 해결하려면 할당량 옵션이 제거된 상태에서 파일 시스템을 다시 마운트하여 할당량 계산을 비활성화합니다.
Bugzilla:2160619[1]
NVMe 장치의 udev 규칙 변경
OPTIONS="string_escape=replace"
매개변수를 추가하는 NVMe 장치에 대한 udev 규칙 변경 사항이 있습니다. 이로 인해 장치의 일련 번호가 선행 공백을 가진 경우 일부 공급 업체의 이름 지정 변경으로 인해 디스크가 발생합니다.
Kickstart 파일에서 NVMe/FC 장치를 안정적으로 사용할 수 없습니다
Kickstart 파일의 사전 스크립트를 구문 분석하거나 실행하는 동안 NVMe/FC 장치를 사용할 수 없으므로 Kickstart 설치에 실패할 수 있습니다. 이 문제를 해결하려면 부팅 인수를 inst.wait_for_disks=30
로 업데이트합니다. 이 옵션을 사용하면 30초가 지연되고 NVMe/FC 장치가 연결할 수 있는 충분한 시간을 제공해야 합니다. 이 해결 방법으로 NVMe/FC 장치 연결과 함께 Kickstart 설치는 문제 없이 진행됩니다.
Jira:RHEL-8164[1]
qedi
드라이버를 사용하는 동안 커널 패닉
qedi
iSCSI 드라이버를 사용하는 동안 OS가 부팅된 후 커널이 패닉됩니다. 이 문제를 해결하려면
을 커널 부팅 명령줄에 추가하여 kfence 런타임 메모리 오류 탐지 기능을 비활성화합니다.
kfence
.sample_interval=0
Jira:RHEL-8466[1]
vdo
를 설치할 때 ARM 기반 시스템이 64k 페이지 크기 커널로 업데이트되지 않음
vdo
패키지를 설치하는 동안 RHEL은 kmod-kvdo
패키지와 4k
페이지 크기가 있는 커널을 종속 항목으로 설치합니다. 결과적으로 kmod-kvdo
가 64k 커널과 충돌하므로 RHEL 9.3에서 9.x로 업데이트가 실패합니다. 이 문제를 해결하려면 업데이트하기 전에 vdo
패키지 및 해당 종속 항목을 제거하십시오.
lldpad
는 qedf
어댑터에서도 자동으로 활성화됩니다.
QLogic Corp을 사용하는 경우 FastLinQ QL45000 시리즈 10/25/40/50GbE, FCOE 컨트롤러는 Red Hat Virtualization을 실행하는 시스템에서 lldpad
데몬을 자동으로 활성화합니다. 결과적으로 I/O 작업이 오류(예: [qedf_eh_abort:xxxx]:1: Aborting io_req=ff5d85a9dcf3xxxx
)로 중단됩니다.
이 문제를 해결하려면LLDP(Link Layer Discovery Protocol)를 비활성화한 다음 vdsm
구성 수준에서 설정할 수 있는 인터페이스에 대해 활성화합니다. 자세한 내용은 https://access.redhat.com/solutions/6963195.
Jira:RHEL-8104[1]
iommu
가 활성화되면 시스템이 부팅되지 않음
BNX2I 어댑터가 사용 중인 경우 AMD 플랫폼에서 IMMU(Input-Output Memory Management Unit)를 활성화하면 DMAR(Direct Memory Access Remapping) 시간 초과 오류로 인해 시스템이 부팅되지 않습니다. 이 문제를 해결하려면 커널 명령줄 옵션인 iommu=off
를 사용하여 부팅하기 전에 IOMMU를 비활성화합니다. 결과적으로 시스템이 오류 없이 부팅됩니다.
Jira:RHEL-25730[1]
11.10. 동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버 링크 복사링크가 클립보드에 복사되었습니다!
Git
에서 잠재적으로 안전하지 않은 소유권이 있는 리포지토리에서 복제하거나 가져오지 못했습니다.
원격 코드 실행을 방지하고 CVE-2024-32004 를 완화하기 위해 로컬 리포지토리 복제를 위해 Git
에 더 엄격한 소유권 검사가 도입되었습니다. RHSA-2024:4083 권고에 도입된 업데이트 이후 Git
은 안전하지 않은 소유권을 모호하게 하는 로컬 리포지토리를 처리합니다.
결과적으로 git-daemon
을 통해 로컬로 호스팅되는 리포지토리에서 복제하려고 하면 리포지토리 소유자가 아닌 경우 Git
은 모호한 소유권에 대한 보안 경고를 반환하고 리포지토리에서 복제하거나 가져오지 못합니다.
이 문제를 해결하려면 다음 명령을 실행하여 리포지토리를 안전한 것으로 명시적으로 표시합니다.
git config --global --add safe.directory /path/to/repository
git config --global --add safe.directory /path/to/repository
Jira:RHELDOCS-18435[1]
python3.11-lxml
은 lxml.isoschematron
하위 모듈을 제공하지 않습니다.
python3.11-lxml
패키지는 오픈 소스 라이센스가 없기 때문에 lxml.isoschematron
하위 모듈 없이 배포됩니다. 하위 모듈은 ISO Schematron 지원을 구현합니다. 또는 lxml.etree.Schematron
클래스에서 pre-ISO-Schematron 검증을 사용할 수 있습니다. python3.11-lxml
패키지의 나머지 내용은 영향을 받지 않습니다.
MySQL
및 MariaDB
의 --ssl-fips-mode
옵션은 FIPS 모드를 변경하지 않습니다.
RHEL의 MySQL
및 MariaDB
의 --ssl-fips-mode
옵션은 업스트림과 다르게 작동합니다.
RHEL 9에서 --ssl-fips-mode
를 mysqld
또는 mariadbd
데몬의 인수로 사용하거나 MySQL
또는 MariaDB
서버 구성 파일에서 ssl-fips-mode
를 사용하는 경우 --ssl-fips-mode
는 이러한 데이터베이스 서버의 FIPS 모드를 변경하지 않습니다.
대신 다음을 수행합니다.
-
--ssl-fips-mode
를ON
으로 설정하면mysqld
또는mariadbd
서버 데몬이 시작되지 않습니다. -
FIPS 지원 시스템에서
--ssl-fips-mode
를OFF
로 설정하면mysqld
또는mariadbd
서버 데몬이 FIPS 모드에서 계속 실행됩니다.
이는 특정 구성 요소에 대해 FIPS 모드가 전체 RHEL 시스템에 대해 활성화되거나 비활성화되어야 하기 때문에 예상됩니다.
따라서 RHEL의 MySQL
또는 MariaDB
에서 --ssl-fips-mode
옵션을 사용하지 마십시오. 대신 전체 RHEL 시스템에서 FIPS 모드가 활성화되어 있는지 확인합니다.
- FIPS 모드가 활성화된 RHEL을 설치하는 것이 좋습니다. 설치 중에 FIPS 모드를 활성화하면 시스템이 FIPS 승인 알고리즘 및 지속적인 모니터링 테스트로 모든 키를 생성합니다. FIPS 모드에서 RHEL을 설치하는 방법에 대한 자세한 내용은 FIPS 모드에서 시스템 설치를 참조하십시오.
- 또는 시스템을 FIPS 모드로 전환하는 절차에 따라 전체 RHEL 시스템의 FIPS 모드를 전환할 수 있습니다.
11.11. IdM (Identity Management) 링크 복사링크가 클립보드에 복사되었습니다!
MIT Kerberos는 PKINIT의 ECC 인증서를 지원하지 않음
MIT Kerberos는 초기 인증(PKINIT)을 위한 공개 키 암호화(Public Key Cryptography) 지원의 설계를 설명하는 댓글 문서에 대한 RFC5349 요청을 구현하지 않습니다. 결과적으로 RHEL에서 사용하는 MIT krb5-pkinit
패키지는 ECC 인증서를 지원하지 않습니다. 자세한 내용은 PKINIT (PKINIT)의 초기 인증을 위한 공개 키 암호화에 대한 ECC(Elliptic Curve Cryptography) 지원을 참조하십시오.
PKINIT가 AD KDC에 대해 작동하도록 RHEL 9 클라이언트에서 DEFAULT:SHA1 하위 정책을 설정해야 합니다.
SHA-1 다이제스트 알고리즘은 RHEL 9에서 더 이상 사용되지 않으며 초기 인증(PKINIT)을 위한 공개 키 암호화(PKINIT)의 CMS 메시지가 더 강력한 SHA-256 알고리즘으로 서명됩니다.
그러나 AD(Active Directory) Kerberos Distribution Center(KDC)는 여전히 SHA-1 다이제스트 알고리즘을 사용하여 CMS 메시지에 서명합니다. 결과적으로 RHEL 9 Kerberos 클라이언트가 AD KDC에 대해 PKINIT를 사용하여 사용자를 인증하지 못합니다.
이 문제를 해결하려면 다음 명령을 사용하여 RHEL 9 시스템에서 SHA-1 알고리즘에 대한 지원을 활성화합니다.
update-crypto-policies --set DEFAULT:SHA1
# update-crypto-policies --set DEFAULT:SHA1
RHEL 9 Kerberos 에이전트가 RHEL-9 및 비AD Kerberos 에이전트와 통신하면 사용자의 PKINIT 인증이 실패합니다.
클라이언트 또는 Kerberos Distribution Center(KDC) 중 하나인 RHEL 9 Kerberos 에이전트가 Active Directory(AD) 에이전트가 아닌 RHEL-9 Kerberos 에이전트와 상호 작용하는 경우 사용자의 PKINIT 인증이 실패합니다. 이 문제를 해결하려면 다음 작업 중 하나를 수행합니다.
SHA-1 서명을 확인할 수 있도록 RHEL 9 에이전트의 crypto-policy를
DEFAULT:SHA1
로 설정합니다.update-crypto-policies --set DEFAULT:SHA1
# update-crypto-policies --set DEFAULT:SHA1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 비 RHEL-9 및 AD가 아닌 에이전트를 업데이트하여 SHA-1 알고리즘을 사용하여 CMS 데이터에 서명하지 않도록 합니다. 이를 위해 Kerberos 클라이언트 또는 KDC 패키지를 SHA-1 대신 SHA-256을 사용하는 버전으로 업데이트합니다.
- CentOS 9 스트림: krb5-1.19.1-15
- RHEL 8.7: krb5-1.18.2-17
- RHEL 7.9: krb5-1.15.1-53
- Fedora Rawhide/36: krb5-1.19.2-7
- Fedora 35/34: krb5-1.19.2-3
결과적으로 사용자의 PKINIT 인증이 올바르게 작동합니다.
다른 운영 체제의 경우 에이전트가 SHA-1 대신 CMS 데이터에 서명하도록 하는 krb5-1.20 릴리스입니다.
PKINIT가 AD KDC에 대해 작동하도록 RHEL 9 클라이언트에서 DEFAULT:SHA1 하위 정책을 설정해야 합니다. 을 참조하십시오.
Heimdal 클라이언트가 RHEL 9 KDC에 PKINIT를 사용하여 사용자를 인증하지 못했습니다.
기본적으로 Heimdal Kerberos 클라이언트는 인터넷 키 교환(IKE)용 Modular Exponential (MODP) Diffie-Hellman Group 2를 사용하여 IdM 사용자의 PKINIT 인증을 시작합니다. 그러나 RHEL 9의 MIT Kerberos Distribution Center(KDC)는 MODP 그룹 14 및 16만 지원합니다.
결과적으로 krb5_get_init_creds: Heimdal 클라이언트의 PREAUTH_FAILED
오류와 RHEL MIT KDC에서 허용되지 않는 키 매개변수를
사용하여 사전 확인 요청이 실패합니다.
이 문제를 해결하려면 Heimdal 클라이언트가 MODP 그룹 14를 사용하는지 확인하십시오. 클라이언트 구성 파일의 libdefaults
섹션에서 pkinit_dh_min_bits
매개변수를 1759로 설정합니다.
[libdefaults] pkinit_dh_min_bits = 1759
[libdefaults]
pkinit_dh_min_bits = 1759
결과적으로 Heimdal 클라이언트는 RHEL MIT KDC에 대해 PKINIT 사전 인증을 완료합니다.
FIPS 모드에서 IdM은 NTLMSSP 프로토콜 사용을 지원하지 않습니다.
NTLMSSP(New Technology LAN Manager Security Support Provider) 인증이 FIPS와 호환되지 않기 때문에 FIPS(Active Directory)와 FIPS 모드가 활성화된 IdM(Identity Management) 간 양방향 교차 포리스트 트러스트를 설정할 수 없습니다. FIPS 모드의 IdM은 AD 도메인 컨트롤러에서 인증을 시도할 때 사용하는 RC4 NTLM 해시를 허용하지 않습니다.
Jira:RHEL-12154[1]
SID가 없는 사용자는 업그레이드 후 IdM에 로그인할 수 없습니다.
IdM 복제본을 RHEL 9.2로 업그레이드한 후 IdM Kerberos Distribution Center(KDC)는 계정에 할당된 SID(보안 식별자)가 없는 사용자에게 TGT( ticket-granting ticket)를 발행하지 못할 수 있습니다. 결과적으로 사용자는 계정에 로그인할 수 없습니다.
이 문제를 해결하려면 토폴로지의 다른 IdM 복제본에서 IdM 관리자로 다음 명령을 실행하여 SID를 생성합니다.
ipa config-mod --enable-sid --add-sids
# ipa config-mod --enable-sid --add-sids
이후에도 사용자가 계속 로그인할 수 없는 경우 Directory Server 오류 로그를 검사합니다. 사용자 POSIX ID를 포함하도록 ID 범위를 조정해야 할 수도 있습니다.
자세한 내용은 RHEL9로 업그레이드할 때 IDM 사용자가 더 이상 지식베이스 솔루션에 로그인할 수 없습니다.
Jira:RHELPLAN-157939[1]
마이그레이션된 IdM 사용자는 일치하지 않는 도메인 SID로 인해 로그인할 수 없을 수 있습니다.
ipa migrate-ds
스크립트를 사용하여 IdM 배포에서 사용자를 다른 IdM 배포로 마이그레이션한 경우 이전 SID(보안 식별자)에 현재 IdM 환경의 도메인 SID가 없기 때문에 IdM 서비스를 사용하는 데 문제가 있을 수 있습니다. 예를 들어 해당 사용자는 kinit
유틸리티를 사용하여 Kerberos 티켓을 검색할 수 있지만 로그인할 수 없습니다. 이 문제를 해결하려면 다음 지식 베이스 문서를 참조하십시오. 마이그레이션된 IdM 사용자는 일치하지 않는 도메인 SID로 인해 로그인할 수 없습니다.
Jira:RHELPLAN-109613[1]
MIT krb5
사용자가 사용자 PAC를 생성하는 호환되지 않는 암호화 유형으로 인해 AD TGT를 얻지 못했습니다.
MIT krb5 1.20
이상 패키지에서는 기본적으로 모든 Kerberos 티켓에 PAC(Privilege Attribute Certificate)가 포함되어 있습니다. MIT Kerberos Distribution Center(KDC)는 현재 RFC8009에 정의된 AES HMAC-SHA2
암호화 유형인 PAC에서 KDC 체크섬을 생성하는 데 사용할 수 있는 가장 강력한 암호화 유형을 선택합니다. 그러나 AD(Active Directory)는 이 RFC를 지원하지 않습니다. 결과적으로, AD-MIT 교차 영역 설정에서 MIT krb5
사용자는 MIT KDC에서 생성한 교차 영역 TGT에 의해 생성된 교차 영역 TGT에 PAC의 호환되지 않는 KDC 체크섬 유형이 포함되어 있기 때문에 MIT krb5 사용자가 AD 티켓 부여 티켓(TGT)을 얻지 못합니다.
이 문제를 해결하려면 /var/kerberos/krb5kdc/kdc.conf
구성 파일의 [realms]
섹션에서 MIT 영역에 대해 disable_pac
매개변수를 true
로 설정합니다. 결과적으로 MIT KDC는 PAC 없이 티켓을 생성합니다. 즉, AD는 실패한 체크섬 확인을 건너뛰고 MIT krb5
사용자는 AD TGT를 받을 수 있습니다.
ldap_id_use_start_tls
옵션에 기본값을 사용할 때 발생할 위험이 있습니다.
ID 조회에 TLS 없이 ldap://
를 사용하는 경우 공격 벡터가 발생할 수 있습니다. 특히 MITTM(man-in-the-middle) 공격으로 공격자가 LDAP 검색에서 반환된 오브젝트의 UID 또는 GID를 변경하여 사용자를 가장할 수 있습니다.
현재 TLS, ldap_id_use_start_tls
를 적용하는 SSSD 구성 옵션은 기본값은 false
입니다. 설정이 신뢰할 수 있는 환경에서 작동하고 id_provider = ldap
용으로 암호화되지 않은 통신을 사용하는 것이 안전한지 확인합니다. 참고 id_provider = ad
및 id_provider = ipa
는 SASL 및 GSSAPI로 보호되는 암호화된 연결을 사용하므로 영향을 받지 않습니다.
암호화되지 않은 통신을 사용하지 않는 경우 /etc/sssd/sssd.conf
파일에서 ldap_id_use_start_tls
옵션을 true
로 설정하여 TLS를 적용합니다. 기본 동작은 향후 RHEL 릴리스에서 변경될 예정입니다.
Jira:RHELPLAN-155168[1]
RHEL 8.6 또는 이전 버전으로 초기화된 FIPS 모드의 IdM 배포에 FIPS 모드에서 RHEL 9 복제본을 추가하는 데 실패합니다.
FIPS 140-3을 준수하기 위한 기본 RHEL 9 FIPS 암호화 정책은 AES HMAC-SHA1 암호화 유형의 키 파생 기능을 RFC3961, 섹션 5.1에 정의된 대로 사용할 수 없습니다.
이 제약 조건은 첫 번째 서버가 RHEL 8.6 시스템 또는 이전 버전에 설치된 FIPS 모드의 RHEL 8 IdM 환경에 FIPS 모드의 RHEL 9 IdM(Identity Management) 복제본을 추가할 때 차단 프로그램입니다. 이는 RHEL 9과 이전 RHEL 버전 간에 일반적인 암호화 유형이 없으며 일반적으로 AES HMAC-SHA1 암호화 유형을 사용하지만 AES HMAC-SHA2 암호화 유형을 사용하지 않기 때문입니다.
서버에 다음 명령을 입력하여 IdM 마스터 키의 암호화 유형을 볼 수 있습니다.
kadmin.local getprinc K/M | grep -E '^Key:'
# kadmin.local getprinc K/M | grep -E '^Key:'
자세한 내용은 AD 도메인 사용자가 FIPS 호환 환경 KCS 솔루션에 로그인할 수 없는 것을 참조하십시오.
SSSD에서 DNS 이름을 올바르게 등록합니다.
이전 버전에서는 DNS가 잘못 설정된 경우 SSSD가 항상 DNS 이름을 등록하려는 첫 번째 시도에 실패했습니다. 문제를 해결하기 위해 이번 업데이트에서는 새 매개변수 dns_resolver_use_search_list
를 제공합니다. DNS 검색 목록을 사용하지 않도록 dns_resolver_use_search_list = false
를 설정합니다.
Bugzilla:1608496[1]
FIPS 모드에서 RHEL 9.2 및 이후 IdM 서버를 사용하여 RHEL 7 IdM 클라이언트 설치 실패
이제 FIPS 지원 RHEL 9.2 이상 시스템에서 TLS 1.2 연결에 TLS 7627)이 필요합니다. 이는 FIPS-140-3 요구 사항에 따라 수행됩니다. 그러나 RHEL 7.9 이상에서 사용할 수 있는
openssl
버전은 Cryostat를 지원하지 않습니다. 결과적으로 RHEL 9.2에서 실행되는 FIPS 지원 IdM 서버를 사용하여 RHEL 7 IdM(Identity Management) 클라이언트를 설치하는 데 실패합니다.
IdM 클라이언트를 설치하기 전에 호스트를 RHEL 8로 업그레이드하는 경우 FIPS 암호화 정책 상단에 NO-ENFORCE- Cryostat 하위 정책을 적용하여 RHEL 9 서버에서 ECDSA 사용에 대한 요구 사항을 제거하여 문제를 해결합니다.
update-crypto-policies --set FIPS:NO-ENFORCE-EMS
# update-crypto-policies --set FIPS:NO-ENFORCE-EMS
이 제거는 FIPS 140-3 요구 사항에 대해 수행됩니다. 결과적으로 ECDSA를 사용하지 않는 TLS 1.2 연결을 설정하고 수락할 수 있으며 RHEL 7 IdM 클라이언트 설치에 성공합니다.
온라인 백업 및 온라인 자기 구성원 다시 작성 작업은 교착 상태를 유발하는 두 가지 잠금을 얻을 수 있습니다.
온라인 백업 및 온라인 자기 구성원 다시 작성 작업이 반대 순서로 동일한 두 잠금을 가져오려고 하면 서버를 중지하고 다시 시작해야 하는 복구 불가능한 교착 상태가 발생할 수 있습니다. 이 문제를 해결하려면 온라인 백업 및 온라인 자기 구성원 다시 작성 작업을 병렬로 시작하지 마십시오.
Jira:RHELDOCS-18065[1]
11.12. 데스크탑 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9로 업그레이드한 후 VNC가 실행되지 않음
RHEL 8에서 RHEL 9로 업그레이드한 후 이전에 활성화된 경우에도 VNC 서버가 시작되지 않습니다.
이 문제를 해결하려면 시스템 업그레이드 후 vncserver
서비스를 수동으로 활성화합니다.
systemctl enable --now vncserver@:port-number
# systemctl enable --now vncserver@:port-number
결과적으로 VNC가 활성화되고 모든 시스템 부팅 후 예상대로 시작됩니다.
사용자 생성 화면이 응답하지 않음
그래픽 사용자 인터페이스를 사용하여 RHEL을 설치할 때 사용자 생성 화면이 응답하지 않습니다. 결과적으로 설치 중에 사용자를 생성하는 것이 더 어렵습니다.
이 문제를 해결하려면 다음 솔루션 중 하나를 사용하여 사용자를 생성합니다.
- VNC 모드에서 설치를 실행하고 VNC 창의 크기를 조정합니다.
- 설치 프로세스를 완료한 후 사용자를 생성합니다.
Jira:RHEL-11924[1]
WebKitGTK가 IBM Z에 웹 페이지를 표시하지 못했습니다
IBM Z 아키텍처에 웹 페이지를 표시하려고 할 때 WebKitGTK 웹 브라우저 엔진이 실패합니다. 웹 페이지는 비워 두고 WebKitGTK 프로세스가 예기치 않게 종료됩니다.
결과적으로 WebKitGTK를 사용하여 다음과 같은 웹 페이지를 표시하는 애플리케이션의 특정 기능을 사용할 수 없습니다.
- Evolution 메일 클라이언트
- GNOME 온라인 계정 설정
- GNOME Help 애플리케이션
11.13. 그래픽 인프라 링크 복사링크가 클립보드에 복사되었습니다!
NVIDIA 드라이버는 X.org로 되돌릴 수 있습니다
특정 조건에서 독점 NVIDIA 드라이버는 Wayland 디스플레이 프로토콜을 비활성화하고 X.org 디스플레이 서버로 되돌립니다.
- NVIDIA 드라이버의 버전이 470보다 낮은 경우
- 시스템이 하이브리드 그래픽을 사용하는 랩탑인 경우.
- 필요한 NVIDIA 드라이버 옵션을 활성화하지 않은 경우
또한 Wayland는 활성화되어 있지만 NVIDIA 드라이버 버전이 510 미만이면 기본적으로 데스크탑 세션에서 X.org를 사용합니다.
Jira:RHELPLAN-119001[1]
Night Light는 NVIDIA와 함께 Wayland에서 사용할 수 없습니다.
시스템에서 독점 NVIDIA 드라이버가 활성화되면 Wayland 세션에서 GNOME의 Night Light 기능을 사용할 수 없습니다. NVIDIA 드라이버는 현재 Night Light 를 지원하지 않습니다.
Jira:RHELPLAN-119852[1]
X.org 구성 유틸리티는 Wayland에서 작동하지 않음
화면을 조작하는 X.org 유틸리티는 Wayland 세션에서 작동하지 않습니다. 특히 xrandr
유틸리티는 해상도, 회전 및 레이아웃 처리 방법이 다르기 때문에 Wayland에서 작동하지 않습니다.
Jira:RHELPLAN-121049[1]
11.14. 웹 콘솔 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 웹 콘솔의 VNC 콘솔이 ARM64에서 제대로 작동하지 않음
현재 ARM64 아키텍처의 RHEL 웹 콘솔에서 VM(가상 머신)을 가져온 다음 VNC 콘솔에서 상호 작용을 시도하면 콘솔이 입력에 응답하지 않습니다.
또한 ARM64 아키텍처의 웹 콘솔에서 VM을 생성할 때 VNC 콘솔은 입력의 마지막 행을 표시하지 않습니다.
Jira:RHEL-31993[1]
11.15. Red Hat Enterprise Linux 시스템 역할 링크 복사링크가 클립보드에 복사되었습니다!
firewalld.service
마스크가 있는 경우 방화벽
RHEL 시스템 역할을 사용하면 실패합니다.
firewalld.service
가 RHEL 시스템에서 마스킹되면 방화벽
RHEL 시스템 역할이 실패합니다. 이 문제를 해결하려면 firewalld.service
를 마스킹 해제하십시오.
systemctl unmask firewalld.service
systemctl unmask firewalld.service
환경 이름으로 시스템을 등록할 수 없음
rhc
시스템 역할은 rhc_environment
에 환경 이름을 지정할 때 시스템을 등록하지 못합니다. 이 문제를 해결하려면 등록하는 동안 환경 이름 대신 환경 ID를 사용합니다.
SELinux 제한 애플리케이션으로 고가용성 모드에서 Microsoft SQL Server 2022 실행이 작동하지 않음
RHEL 9.4 이상의 Microsoft SQL Server 2022에서는 SELinux 제한 애플리케이션으로 실행을 지원합니다. 그러나 Microsoft SQL Server의 제한으로 인해 서비스를 SELinux 제한 애플리케이션으로 실행하면 고가용성 모드에서 작동하지 않습니다. 이 문제를 해결하려면 서비스를 고가용성으로 사용해야 하는 경우 Microsoft SQL ServerSQL Server 를 제한되지 않은 애플리케이션으로 실행할 수 있습니다.To work around this problem, you can run Microsoft SQL Server as an unconfined application if you require the service to be high available.
이 제한은 mssql
RHEL 시스템 역할을 사용하여 이 서비스를 설치할 때 Microsoft SQL Server를 설치하는 데도 영향을 미칩니다.
Jira:RHELDOCS-17719[1]
imuxsock 입력 기본 유형을 구성하면 문제가 발생합니다.
로깅
RHEL 시스템 역할을 통해 imuxsock 입력 기본 유형을 구성하면 use_imuxsock
옵션을 사용하면 관리 노드에서 결과 구성에 문제가 발생합니다. 그러나 역할은 name
매개 변수를 설정하지만 imuxsock 입력 유형은 name
매개변수를 지원하지 않습니다. 결과적으로 rsyslog
로깅 유틸리티는 구성 파일에 'name'을 알 수 없는 'name' 매개 변수를 구성 파일에 출력합니까?
오류를 출력합니다.
Jira:RHELDOCS-18329[1]
RHEL 9 UEFI 관리형 노드의 경우 부트로더 RHEL 시스템 역할의
변수가 작동하지 않습니다.bootloader
_password
이전에는 bootloader_password
변수가 /boot/efi/EFI/redhat/user.cfg
파일에 암호 정보를 잘못 배치했습니다. 적절한 위치는 /boot/grub2/user.cfg
파일이었습니다. 결과적으로 관리형 노드를 재부팅하여 부트 로더 항목을 수정할 때 GRUB2에서 암호를 입력하라는 메시지를 표시하지 않았습니다. 이 문제를 해결하려면 잘못된 /boot/efi/EFI/redhat/
디렉터리에서 올바른 /boot/grub2/
디렉터리로 user.cfg
파일을 수동으로 이동하여 예상되는 동작을 수행할 수 있습니다.
11.16. 가상화 링크 복사링크가 클립보드에 복사되었습니다!
경우에 따라 https 또는 ssh를 통한 가상 머신 설치 실패
현재 https 또는 ssh 연결을 통해 ISO 소스에서 게스트 운영 체제(OS)를 설치하려고 할 때 virt-install
유틸리티가 실패합니다(예: virt-install --cdrom https://example/path/to/image.iso
). VM(가상 머신)을 생성하는 대신 설명된 작업은 메시지를 모니터링하는 동안 내부 오류(프로세스 종료)로 예
기치 않게 종료됩니다.
마찬가지로, RHEL 9 웹 콘솔을 사용하여 게스트 운영 체제를 설치하는 데 실패하고 https 또는 ssh URL 또는
오류가 표시됩니다.
다운로드 OS
기능을 사용하는 경우 알 수 없는 드라이버 'https'
이 문제를 해결하려면 호스트에 qemu-kvm-block-curl
및 qemu-kvm-block-ssh
를 설치하여 https 및 ssh 프로토콜 지원을 활성화합니다. 또는 다른 연결 프로토콜 또는 다른 설치 소스를 사용합니다.
가상 머신에서 NVIDIA 드라이버를 사용하면 Wayland가 비활성화됨
현재 NVIDIA 드라이버는 Wayland 그래픽 세션과 호환되지 않습니다. 결과적으로 NVIDIA 드라이버를 사용하는 RHEL 게스트 운영 체제는 자동으로 Wayland를 비활성화하고 대신 Xorg 세션을 로드합니다. 이는 주로 다음 시나리오에서 발생합니다.
- NVIDIA GPU 장치를 RHEL VM(가상 머신)에 전달하는 경우
- NVIDIA vGPU 미디어 장치를 RHEL VM에 할당하는 경우
Jira:RHELPLAN-117234[1]
AMD Milan
시스템에서 Milan VM CPU 유형을 사용할 수 없는 경우가 있습니다.
특정 AMD Milan 시스템에서는 Enhanced REP MOVSB(erms
) 및 Fast Short REP MOVSB(fsrm
) 기능 플래그가 기본적으로 BIOS에서 비활성화되어 있습니다. 결과적으로 Milan
CPU 유형을 이러한 시스템에서 사용할 수 없습니다. 또한 다른 기능 플래그 설정이 있는 Milan 호스트 간에 VM 실시간 마이그레이션이 실패할 수 있습니다. 이러한 문제를 해결하려면 호스트의 BIOS에서 수동으로 erms
및 fsrm
을 켭니다.
Bugzilla:2077767[1]
장애 조치 설정이 있는 hostdev
인터페이스는 핫 플러그 해제된 후 핫 플러그할 수 없습니다
실행 중인 VM(가상 머신)에서 장애 조치 구성을 사용하여 hostdev
네트워크 인터페이스를 제거한 후 현재 실행 중인 동일한 VM에 다시 연결할 수 없습니다.
장애 조치 VF가 있는 VM의 실시간 복사 후 마이그레이션 실패
현재 VM에서 VF(가상 기능) 페일오버 기능이 활성화된 장치를 사용하는 경우 실행 중인 VM(가상 머신)을 post-copy가 실패합니다. 이 문제를 해결하려면 복사 후 마이그레이션 대신 표준 마이그레이션 유형을 사용합니다.
호스트 네트워크는 실시간 마이그레이션 중에 VF를 사용하여 VM을 ping할 수 없습니다.
가상 SR-IOV 소프트웨어를 사용하는 VM(가상 기능)과 같이 구성된 VF(가상 기능)를 사용하여 VM(가상 머신)을 실시간 마이그레이션하는 경우 VM의 네트워크가 다른 장치에 표시되지 않으며 ping
과 같은 명령을 통해 VM에 연결할 수 없습니다. 그러나 마이그레이션이 완료되면 문제가 더 이상 발생하지 않습니다.
AVX를 비활성화하면 VM을 부팅할 수 없게 됩니다.
AVX(Advanced Vector Extensions) 지원이 포함된 CPU를 사용하는 호스트 시스템에서 AVX가 명시적으로 비활성화된 VM을 부팅하려고 시도하면 현재 VM에서 커널 패닉이 트리거됩니다.
Bugzilla:2005173[1]
네트워크 인터페이스 재설정 후 Windows VM에서 IP 주소를 얻지 못했습니다
경우에 따라 자동 네트워크 인터페이스를 재설정한 후 Windows 가상 머신이 IP 주소를 얻지 못하는 경우가 있습니다. 결과적으로 VM이 네트워크에 연결되지 못합니다. 이 문제를 해결하려면 Windows 장치 관리자에서 네트워크 어댑터 드라이버를 비활성화하고 다시 활성화합니다.
Windows Server 2016 VM이 vCPU 핫플러그 후 작동하지 않는 경우가 있습니다.
현재 Windows Server 2016 게스트 운영 체제에서 실행 중인 VM(가상 머신)에 vCPU를 할당하면 VM이 예기치 않게 중지되거나 응답하지 않거나 재부팅되는 등 다양한 문제가 발생할 수 있습니다.
NVIDIA 패스스루 장치가 있는 VM에서 중복 오류 메시지
RHEL 9.2 이상 운영 체제가 있는 Intel 호스트 머신을 사용하는 경우 NVDIA GPU 장치를 통해 전달되는 VM(가상 머신)은 다음 오류 메시지를 기록하는 경우가 많습니다.
Spurious APIC interrupt (vector 0xFF) on CPU#2, should never happen.
Spurious APIC interrupt (vector 0xFF) on CPU#2, should never happen.
그러나 이 오류 메시지는 VM 기능에 영향을 미치지 않으며 무시할 수 있습니다. 자세한 내용은 Red Hat knoweldgeBase 를 참조하십시오.
Bugzilla:2149989[1]
호스트에서 OVS 서비스를 다시 시작하면 실행 중인 VM에서 네트워크 연결이 차단될 수 있습니다.
OVS(Open vSwitch) 서비스가 호스트에서 다시 시작되거나 중단되면 이 호스트에서 실행 중인 VM(가상 머신)은 네트워킹 장치의 상태를 복구할 수 없습니다. 결과적으로 VM이 패킷을 수신하지 못할 수 있습니다.
이 문제는 virtio
네트워킹 스택에서 패키징된 virtqueue 형식을 사용하는 시스템에만 영향을 미칩니다.
이 문제를 해결하려면 virtio
네트워킹 장치 정의에서 packed=off
매개 변수를 사용하여 패키징된 virtqueue를 비활성화합니다. 패키징된 virtqueue가 비활성화된 상태에서 네트워킹 장치의 상태는 RAM에서 복구할 수 있습니다.
중단된 VM 마이그레이션 복구에 실패할 수 있습니다.
VM(가상 머신)의 복사 후 마이그레이션이 중단되고 수신되는 동일한 포트에서 즉시 다시 시작되면 마이그레이션이 실패할 수 있습니다. 이미 사용 중인 주소
이 문제를 해결하려면 복사 후 마이그레이션을 다시 시작하거나 마이그레이션 복구를 위해 다른 포트로 전환하기 전에 10초 이상 기다립니다.
AMD EPYC CPU에서 NUMA 노드 매핑이 제대로 작동하지 않음
QEMU는 AMD EPYC CPU에서 NUMA 노드 매핑을 올바르게 처리하지 않습니다. 결과적으로 NUMA 노드 구성을 사용하는 경우 이러한 CPU가 있는 VM(가상 머신)의 성능에 부정적인 영향을 미칠 수 있습니다. 또한 VM에는 부팅 중에 다음과 유사한 경고가 표시됩니다.
sched: CPU #4's llc-sibling CPU #3 is not on the same node! [node: 1 != 0]. Ignoring dependency. WARNING: CPU: 4 PID: 0 at arch/x86/kernel/smpboot.c:415 topology_sane.isra.0+0x6b/0x80
sched: CPU #4's llc-sibling CPU #3 is not on the same node! [node: 1 != 0]. Ignoring dependency.
WARNING: CPU: 4 PID: 0 at arch/x86/kernel/smpboot.c:415 topology_sane.isra.0+0x6b/0x80
이 문제를 해결하려면 NUMA 노드 구성에 AMD EPYC CPU를 사용하지 마십시오.
VM 마이그레이션 중 NFS 실패로 인해 마이그레이션 실패 및 소스 VM 코어 덤프
현재 VM(가상 머신) 마이그레이션 중에 NFS 서비스 또는 서버가 종료되면 다시 실행을 시작할 때 소스 VM의 QEMU가 NFS 서버에 다시 연결할 수 없습니다. 결과적으로 마이그레이션이 실패하고 소스 VM에서 코어dump가 시작됩니다. 현재는 사용할 수 있는 해결방법이 없습니다.
PCIe ATS 장치는 Windows VM에서 작동하지 않음
Windows 게스트 운영 체제를 사용하여 VM(가상 머신)의 XML 구성에서 PCIe 주소 변환 서비스(ATS) 장치를 구성할 때 게스트는 VM을 부팅한 후 ATS 장치를 활성화하지 않습니다. Windows는 현재 virtio
장치에서 ATS를 지원하지 않기 때문입니다.
자세한 내용은 Red Hat KnowledgeBase 를 참조하십시오.
virsh blkiotune --weight
명령이 올바른 cgroup I/O 컨트롤러 값을 설정하지 못했습니다.
현재 virsh blkiotune --weight
명령을 사용하여 VM weight가 예상대로 작동하지 않습니다. 이 명령은 cgroup I/O 컨트롤러 인터페이스 파일에 올바른 io.bfq.weight
값을 설정하지 못합니다. 현재는 해결방법이 없습니다.
NVIDIA A16 GPU로 VM을 시작하면 호스트 GPU가 작동하지 않는 경우가 있습니다.
현재 NVIDIA A16 GPU 패스스루 장치를 사용하는 VM을 시작하면 경우에 따라 호스트 시스템의 NVIDIA A16 GPU 물리적 장치가 작동하지 않습니다.
이 문제를 해결하려면 하이퍼바이저를 재부팅하고 GPU 장치의 reset_method
를 버스로
설정합니다.
echo bus > /sys/bus/pci/devices/<DEVICE-PCI-ADDRESS>/reset_method cat /sys/bus/pci/devices/<DEVICE-PCI-ADDRESS>/reset_method
# echo bus > /sys/bus/pci/devices/<DEVICE-PCI-ADDRESS>/reset_method
# cat /sys/bus/pci/devices/<DEVICE-PCI-ADDRESS>/reset_method
bus
자세한 내용은 Red Hat 지식베이스를 참조하십시오.
Jira:RHEL-7212[1]
스토리지 오류로 인해 Windows VM이 응답하지 않을 수 있음
Windows 게스트 운영 체제를 사용하는 VM(가상 머신)에서 I/O 로드가 높은 경우 시스템이 응답하지 않는 경우도 있습니다. 이 경우 시스템은 viostor Reset to device, \Device\RaidPort3 오류가 발생했습니다
.
Jira:RHEL-1609[1]
특정 PCI 장치가 있는 Windows 10 VM이 부팅 시 응답하지 않을 수 있음
현재 로컬 디스크 백엔드가 VM에 연결된 virtio-win-scsi
PCI 장치가 VM에 연결된 경우 Windows 10 게스트 운영 체제를 사용하는 VM(가상 머신)이 부팅 중에 응답하지 않을 수 있습니다. 이 문제를 해결하려면 multi_queue
옵션이 활성화된 VM을 부팅합니다.
Jira:RHEL-1084[1]
메모리 balloon 장치가 설정된 Windows 11 VM은 재부팅 중에 예기치 않게 종료될 수 있습니다.
현재 Windows 11 게스트 운영 체제 및 메모리 풍선 장치를 사용하는 VM(가상 머신)을 재부팅하면 DRIVER POWER STAT FAILURE
blue-screen 오류와 함께 실패합니다.
Jira:RHEL-935[1]
경우에 따라 postcopy VM 마이그레이션을 다시 시작할 수 없습니다.
현재 VM(가상 머신)의 postcopy 마이그레이션을 수행할 때 마이그레이션의 RECOVER 단계에서 프록시 네트워크 오류가 발생하면 VM이 응답하지 않고 마이그레이션을 다시 시작할 수 없습니다. 대신 복구 명령은 다음과 같은 오류를 표시합니다.
error: Requested operation is not valid: QEMU reports migration is still running
error: Requested operation is not valid: QEMU reports migration is still running
virtio balloon 드라이버는 Windows 10 VM에서 작동하지 않는 경우가 있습니다.
특정 상황에서는 virtio-balloon 드라이버가 Windows 10 게스트 운영 체제를 사용하는 VM(가상 머신)에서 제대로 작동하지 않습니다. 결과적으로 이러한 VM은 할당된 메모리를 효율적으로 사용하지 못할 수 있습니다.
Windows VM에서 virtio 파일 시스템의 최적의 성능이 있습니다.
현재 Windows 게스트 운영 체제를 사용하는 가상 머신(virtiofs)에 virtio 파일 시스템(virtiofs)이 구성된 경우 VM의 virtiofs 성능은 Linux 게스트를 사용하는 VM에서보다 훨씬 더 심각합니다.
Jira:RHEL-1212[1]
Windows VM에서 스토리지 장치를 핫플러그 해제하는 데 실패할 수 있습니다.
Windows 게스트 운영 체제를 사용하는 VM(가상 머신)에서 VM이 실행 중일 때 스토리지 장치를 제거합니다(장치 핫 언플러그라고도 함). 결과적으로 스토리지 장치는 VM에 연결된 상태로 유지되고 디스크 관리자 서비스가 응답하지 않을 수 있습니다.
Windows VM에 CPU를 핫플러그하면 시스템 오류가 발생할 수 있습니다.
대규모 페이지가 활성화된 Windows VM(가상 머신)에 최대 CPU 수를 핫 플러그로 연결하면 게스트 운영 체제가 다음 중지 오류와 충돌할 수 있습니다.
PROCESSOR_START_TIMEOUT
PROCESSOR_START_TIMEOUT
Windows VM에서 virtio
드라이버 업데이트 실패
Windows 가상 머신(VM)에서 KVM 반가상화(virtio
) 드라이버를 업데이트할 때 업데이트로 인해 마우스의 작동이 중지되고 새로 설치된 드라이버가 서명되지 않을 수 있습니다. 이 문제는
파일의 일부인 virtio
-win.isovirtio-win-guest-tools
패키지에서 설치하여 virtio 드라이버를 업데이트할 때 발생합니다.
이 문제를 해결하려면 Windows 장치 관리자를 사용하여 virtio
드라이버를 업데이트합니다.
Jira:RHEL-574[1]
vhost-kernel
을 사용하는 VM에서는 TX 대기열 크기를 변경할 수 없습니다.
현재는 vhost-kernel
을 virtio
네트워크 드라이버의 백엔드로 사용하는 KVM 가상 머신(VM)에 TX 대기열 크기를 설정할 수 없습니다. 결과적으로 TX 큐에 기본값인 256만 사용할 수 있으므로 VM 네트워크 처리량을 최적화하지 못할 수 있습니다.
Jira:RHEL-1138[1]
가상 머신에서 AMD SRSO 취약점을 잘못 보고
AMD September 3 및 4 CPU 아키텍처가 있는 RHEL 9 호스트에서 실행되는 RHEL 9.4 가상 머신(VM)은 Speculative Return Stack Overflow (SRSO) 공격에 취약점을 잘못 보고합니다.
lscpu | grep rstack
# lscpu | grep rstack
Vulnerability Spec rstack overflow: Vulnerable: Safe RET, no microcode
이 문제는 누락된 cpuid
플래그로 인해 발생하며 실제로 다음과 같은 조건에서 VM에서 취약점이 완전히 완화됩니다.
-
여기에 설명된 대로 호스트에 업데이트된
linux-firmware
패키지가 있습니다. cve-2023-20569. -
호스트 커널에는 기본 동작인 완화 기능이 활성화되어 있습니다. 완화 조치가 활성화되면 호스트의
lscpu
명령 출력에Safe RET
가 표시됩니다.
Jira:RHEL-26152[1]
많은 양의 vCPU 및 가상 디스크가 있는 가상 머신이 실패할 수 있습니다.
현재 많은 양의 vCPU 및 가상 디스크를 RHEL 가상 머신(VM)에 할당하면 VM이 부팅되지 않을 수 있습니다.
이 문제를 해결하려면 가능한 경우 블록 장치 대신 SCSI(Small Computer System Interface) 가상 스토리지 장치를 사용하십시오. 자세한 내용은 CLI를 사용하여 vHBA 장치를 사용하여 SCSI 기반 스토리지 풀 생성을참조하십시오.
가상 블록 장치를 사용해야 하는 경우 -global virtio-blk-pci.vectors= <number-of-vectors> QEMU 옵션으로 VM을 시작하여 인터럽트벡터 수
를 줄일 수도 있습니다. VM을 성공적으로 부팅할 수 있는 인터럽트 벡터가 충분히 적습니다.
Jira:RHEL-32990[1]
상태가 e1000e
또는 igb
모델 인터페이스로 다운
된 경우에도 VM에 link 상태가 표시됩니다.
VM을 부팅하기 전에 e1000
또는 igb
모델 네트워크 인터페이스에 대한 이더넷 링크의 상태를 아래로
설정합니다. 이 경우에도 VM이 부팅된 후에도 네트워크 인터페이스는
상태를 유지합니다. 이더넷 링크의 상태를 중단한 다음 VM을 중지했다가 다시 시작하면 VM이 자동으로 다시 설정되기 때문입니다. up
결과적으로 네트워크 인터페이스의 올바른 상태가 유지 관리되지 않습니다. 이 문제를 해결하려면 명령을 사용하여 네트워크 인터페이스 상태를 VM 내부에서
down
으로 설정합니다.
ip link set dev eth0 down
# ip link set dev eth0 down
또는 VM이 실행되는 동안 이 네트워크 인터페이스를 제거하고 다시 추가할 수 있습니다.
NBD를 사용하여 TLS 연결을 통해 VM 스토리지를 마이그레이션하면 제대로 작동하지 않음
현재 TLS 연결을 통해 NBD(Network Block Device) 프로토콜을 사용하여 VM(가상 머신) 및 스토리지 장치를 마이그레이션할 때 TLS 핸드셰이크의 데이터 경쟁으로 인해 마이그레이션이 성공한 것처럼 보일 수 있습니다. 그러나 대상 VM의 QEMU 프로세스가 추가 상호 작용에 응답하지 않게 됩니다.
네트워크를 신뢰할 수 있는 경우 VM 스토리지 마이그레이션 중에 사용되는 NBD 프로토콜에 TLS 연결 대신 일반 텍스트를 사용하여 이 문제를 해결할 수 있습니다.
AMD SEV-SNP가 있는 가상 머신에서 kdump 실패
현재 kdump는 SEV(Secure Encrypted Virtualization)를 SNP(Secure Nested Paging) 기능과 함께 사용하는 RHEL 9 VM(가상 머신)에서 실패합니다.
Jira:RHEL-10019[1]
VM에서 AMD EPYC 모델에서 spec_rstack_overflow
매개변수의 취약한
상태를 잘못 보고
호스트를 부팅하면 spec_rstack_overflow
매개변수의 취약점을 탐지하지 않습니다. 로그에 대한 매개변수를 쿼리한 후 메시지가 표시됩니다.
cat /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow Mitigation: Safe RET
# cat /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow
Mitigation: Safe RET
동일한 호스트에서 VM을 부팅한 후 VM은 spec_rstack_overflow
매개변수에서 취약점을 감지합니다. 로그에 대한 매개변수를 쿼리하면 다음과 같은 메시지가 표시됩니다.
cat /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow Vulnerable: Safe RET, no microcode
# cat /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow
Vulnerable: Safe RET, no microcode
그러나 이는 잘못된 경고 메시지이며 VM 내부의 /sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow
파일의 상태를 무시할 수 있습니다.
Jira:RHEL-17614[1]
11.17. 클라우드 환경의 RHEL 링크 복사링크가 클립보드에 복사되었습니다!
Nutanix AHV에서 LVM을 사용하는 RHEL 9 가상 머신을 복제하거나 복원하면 루트가 아닌 파티션이 사라집니다.
Nutanix AHV 하이퍼바이저에서 호스팅되는 VM(가상 머신)에서 RHEL 9 게스트 운영 체제를 실행하는 경우 스냅샷에서 VM을 복원하거나 VM 복제로 인해 게스트가 LVM(Logical Volume Management)을 사용하는 경우 VM의 루트가 아닌 파티션이 사라집니다. 결과적으로 다음과 같은 문제가 발생합니다.
- 스냅샷에서 VM을 복원하면 VM을 부팅할 수 없으며 대신 긴급 모드로 전환됩니다.
- 복제로 생성된 VM은 부팅할 수 없으며 대신 긴급 모드로 전환됩니다.
이러한 문제를 해결하려면 VM의 긴급 모드에서 다음을 수행합니다.
-
LVM 시스템 장치 파일 제거:
rm /etc/lvm/devices/system.devices
-
LVM 장치 설정 다시 생성: Cryo
statimportdevices -a
- VM 재부팅
이렇게 하면 복제 또는 복원된 VM이 올바르게 부팅될 수 있습니다.
또는 VM을 복제하거나 VM 스냅샷을 생성하기 전에 문제가 발생하지 않도록 하려면 다음을 수행합니다.
-
/etc/lvm/lvm.conf
파일에서use_devicesfile = 0
행의 주석을 제거합니다. - VM 재부팅
Bugzilla:2059545[1]
ESXi에서 RHEL 9 게스트를 사용자 정의하면 네트워킹 문제가 발생하는 경우가 있습니다.
현재 VMware ESXi 하이퍼바이저에서 RHEL 9 게스트 운영 체제를 사용자 정의하면 NetworkManager 키 파일에서 올바르게 작동하지 않습니다. 결과적으로 게스트가 키 파일을 사용하는 경우 IP 주소 또는 게이트웨이와 같은 잘못된 네트워크 설정이 됩니다.
자세한 내용 및 해결 방법은 VMware 기술 자료 를 참조하십시오.
Bugzilla:2037657[1]
cloud-init
에서 프로비저닝하고 NFSv3 마운트 항목으로 구성된 경우 Azure의 RHEL 인스턴스가 부팅되지 않음
현재 Microsoft Azure 클라우드 플랫폼에서 RHEL VM(가상 머신)을 부팅하면 VM이 cloud-init
툴에 의해 프로비저닝되고 VM의 게스트 운영 체제에 /etc/fstab
파일에 NFSv3 마운트 항목이 있는 경우 실패합니다.
Bugzilla:2081114[1]
VMware 호스트의 RHEL 가상 머신에서 고정 IP 설정이 작동하지 않음
현재 RHEL을 VMware 호스트에서 VM(가상 머신)의 게스트 운영 체제로 사용하는 경우 DatasourceOVF 기능이 올바르게 작동하지 않습니다. 결과적으로 cloud-init
유틸리티를 사용하여 VM의 네트워크를 고정 IP로 설정한 다음 VM을 재부팅하면 VM 네트워크가 DHCP로 변경됩니다.
이 문제를 해결하려면 VMware 기술 자료 를 참조하십시오.
kmemleak
옵션이 활성화된 경우 대규모 VM이 디버그 커널에 부팅되지 않을 수 있습니다.
RHEL 9 VM(가상 머신)을 디버그 커널에 부팅할 때 머신 커널이 kmemleak=on
인수를 사용하는 경우 다음 오류로 인해 부팅이 실패할 수 있습니다.
Cannot open access to console, the root account is locked. See sulogin(8) man page for more details. Press Enter to continue.
Cannot open access to console, the root account is locked.
See sulogin(8) man page for more details.
Press Enter to continue.
이 문제는 부팅 순서에서 더 많은 시간을 소비하기 때문에 주로 대규모 VM에 영향을 미칩니다.
이 문제를 해결하려면 시스템에서 /etc/fstab
파일을 편집하고 /boot 및 /
마운트 지점에 시간 초과 옵션을 추가합니다. 예를 들면 다음과 같습니다.
boot
/efi
UUID=e43ead51-b364-419e-92fc-b1f363f19e49 /boot xfs defaults,x-systemd.device-timeout=600,x-systemd.mount-timeout=600 0 0 UUID=7B77-95E7 /boot/efi vfat defaults,uid=0,gid=0,umask=077,shortname=winnt,x-systemd.device-timeout=600,x-systemd.mount-timeout=600 0 2
UUID=e43ead51-b364-419e-92fc-b1f363f19e49 /boot xfs defaults,x-systemd.device-timeout=600,x-systemd.mount-timeout=600 0 0
UUID=7B77-95E7 /boot/efi vfat defaults,uid=0,gid=0,umask=077,shortname=winnt,x-systemd.device-timeout=600,x-systemd.mount-timeout=600 0 2
Jira:RHELDOCS-16979[1]
11.18. 지원 관련 기능 링크 복사링크가 클립보드에 복사되었습니다!
IBM Power Systems, Little Endian에 대한 보고서
실행 시간 초과
IBM Power Systems, Little Endian with hundreds or thousands of CPUs에서 sos report
명령을 실행할 때 /sys/devices/system/cpu
디렉터리의 대규모 콘텐츠를 수집할 때 프로세서 플러그인은 기본 시간 초과 300초에 도달합니다. 이 문제를 해결하려면 그에 따라 플러그인의 시간 초과를 늘립니다.
- 일회성 설정의 경우 다음을 실행합니다.
sos report -k processor.timeout=1800
# sos report -k processor.timeout=1800
-
영구적으로 변경하려면
/etc/sos/sos.conf
파일의[plugin_options]
섹션을 편집합니다.
[plugin_options] # Specify any plugin options and their values here. These options take the form # plugin_name.option_name = value #rpm.rpmva = off processor.timeout = 1800
[plugin_options]
# Specify any plugin options and their values here. These options take the form
# plugin_name.option_name = value
#rpm.rpmva = off
processor.timeout = 1800
예제 값은 1800으로 설정됩니다. 특정 시간 제한 값은 특정 시스템에 따라 크게 달라집니다. 플러그인의 시간 제한을 적절하게 설정하려면 다음 명령을 실행하여 시간 초과 없이 하나의 플러그인을 수집하는 데 필요한 시간을 먼저 추정할 수 있습니다.
time sos report -o processor -k processor.timeout=0 --batch --build
# time sos report -o processor -k processor.timeout=0 --batch --build
Bugzilla:1869561[1]
11.19. 컨테이너 링크 복사링크가 클립보드에 복사되었습니다!
이전 컨테이너 이미지 내에서 systemd 실행이 작동하지 않음
이전 컨테이너 이미지(예: centos:7
)에서 systemd를 실행하면 작동하지 않습니다.
podman run --rm -ti centos:7 /usr/lib/systemd/systemd
$ podman run --rm -ti centos:7 /usr/lib/systemd/systemd
Storing signatures
Failed to mount cgroup at /sys/fs/cgroup/systemd: Operation not permitted
[!!!!!!] Failed to mount API filesystems, freezing.
이 문제를 해결하려면 다음 명령을 사용하십시오.
mkdir /sys/fs/cgroup/systemd mount none -t cgroup -o none,name=systemd /sys/fs/cgroup/systemd podman run --runtime /usr/bin/crun --annotation=run.oci.systemd.force_cgroup_v1=/sys/fs/cgroup --rm -ti centos:7 /usr/lib/systemd/systemd
# mkdir /sys/fs/cgroup/systemd
# mount none -t cgroup -o none,name=systemd /sys/fs/cgroup/systemd
# podman run --runtime /usr/bin/crun --annotation=run.oci.systemd.force_cgroup_v1=/sys/fs/cgroup --rm -ti centos:7 /usr/lib/systemd/systemd
Jira:RHELPLAN-96940[1]
루트 파일 시스템은 기본적으로 확장되지 않습니다.
bootc-image-builder
를 사용하여 AMI 또는 QCOW2 컨테이너 이미지를 생성하는 데 cloud-init
를 포함하지 않는 기본 컨테이너 이미지를 사용하는 경우 부팅 시 루트 파일 시스템 크기가 프로비저닝된 가상 디스크의 전체 크기로 동적으로 확장되지 않습니다.
이 문제를 해결하려면 사용 가능한 다음 옵션 중 하나를 적용합니다.
-
이미지에
cloud-init
를 포함합니다. - 컨테이너 이미지에 사용자 지정 논리를 포함하여 루트 파일 시스템을 확장합니다. 예를 들면 다음과 같습니다.
/usr/bin/growpart /dev/vda 4 unshare -m bin/sh -c 'mount -o remount,rw /sysroot && xfs_growfs /sysroot'
/usr/bin/growpart /dev/vda 4
unshare -m bin/sh -c 'mount -o remount,rw /sysroot && xfs_growfs /sysroot'
-
보조 파일 시스템에 추가 공간을 사용하려면 사용자 지정 논리를 포함합니다(예:
/var/lib/containers
).
기본적으로 물리적 루트 스토리지는 /sysroot
파티션에 마운트됩니다.
부록 A. 구성 요소별 티켓 목록 링크 복사링크가 클립보드에 복사되었습니다!
이 문서에는 Bugzilla 및 JIRA 티켓이 기재되어 있습니다. 링크는 티켓을 설명하는 이 문서의 릴리스 노트로 이어집니다.
부록 B. 버전 내역 링크 복사링크가 클립보드에 복사되었습니다!
0.2-2
2024년 12월 4일 Gabriela Fialová (gfialova@redhat.com)
- 고객 포털 랩 섹션 업데이트
- 설치 섹션 업데이트
0.2-1
2024년 11월 22일 Gabi Fialova (gfialova@redhat.com)
- 버그 수정 RHEL-56786 (IdM) 추가
0.2-0
2024년 11월 19일 Gabi Fialova (gfialova@redhat.com)
- 알려진 문제 BZ-2057471 (IdM) 제거
- 알려진 문제 RHEL-4888 (IdM) 업데이트
0.1-9
2024년 10월 31일 Gabriela Fialová (gfialova@redhat.com)
- 알려진 문제 RHEL-17614 (가상화) 추가
0.1-8
Wed Oct 09 2024, Gabriela Fialová (gfialova@redhat.com)
- 더 이상 사용되지 않는 기능 RHELPLAN-100639 (Identity Management) 업데이트
0.1-7
Thu 03 2024, Gabriela Fialová (gfialova@redhat.com)
- 알려진 문제 RHEL-56135 (Installer) 추가
0.1-6
Fri September 27 2024, Gabriela Fialová (gfialova@redhat.com)
- 새로운 알려진 문제 RHELDOCS-18924 (Installer) 추가
0.1-5
2024년 8월 14일 Gabriela Fialová (gfialova@redhat.com)
- 새로운 기술 프리뷰 RHEL-7936 (파일 시스템 및 스토리지) 추가
0.1-4
Thu 8 2024, Gabriela Fialová (gfialova@redhat.com)
- 새로운 알려진 문제 RHEL-45727 (Security) 추가
0.1-3
2024년 7월 25일 Gabriela Fialová (gfialova@redhat.com)
- 기능 강화 RHEL-14485 (네트워크) 텍스트 업데이트
0.1-2
2024년 7월 18일 Gabriela Fialová (gfialova@redhat.com)
- 더 이상 사용되지 않는 기능 BZ-1899167 (Installer) 업데이트
- 더 이상 사용되지 않는 기능 섹션에서 abstract가 업데이트됨
0.1-1
Thu 11 2024, Lenka Cryostatková (lspackova@redhat.com)
- 알려진 문제 RHEL-45705 (시스템 역할) 추가
0.1-0
Mon Jul 08 2024, Lenka Cryostatková (lspackova@redhat.com)
- RHEL-23798 (컴파일러 및 개발 툴)에서 고정 형식 및 참조
0.0-9
2024년 6월 27일 Gabriela Fialová (gfialova@redhat.com)
- 알려진 문제 제거 Jira-RHELDOCS-17720 (System roles)
0.0-8
2024년 6월 25일 Lenka Cryostatková (lspackova@redhat.com)
- 알려진 문제 RHELDOCS-18435 (Dynamic 프로그래밍 언어, 웹 및 데이터베이스 서버) 추가
0.0-7
2024년 6월 12일 브라이언스카 (bangelic@redhat.com)
- 기능 개선 RHELPLAN-169666 (Identity Management) 업데이트
0.0-6
2024년 5월 29일 Gabriela Fialová (gfialova@redhat.com)
- 기능 개선 RHEL-12490 (컴파일러 및 개발 툴) 추가
- 기능 개선 RHEL-12491 (컴파일러 및 개발 툴) 추가
- 기능 개선 RHEL-13760 (RHEL 시스템 역할) 업데이트
- 인플레이스 업그레이드 섹션 업데이트
0.0-5
2024년 5월 28일 Lenka Cryostatková (lspackova@redhat.com)
- RHEL-16629 형식 수정 (컴파일러 및 개발 툴)
0.0-4
Thu 2024년 5월 23일 Gabriela Fialová (gfialova@redhat.com)
- 기능 강화 RHEL-23798 (컴파일러 및 개발 도구)
0.0-3
Tue May 21 2024, Lenka Cryostatková (lspackova@redhat.com)
- 기능 개선 RHEL-35685 (Dynamic 프로그래밍 언어, 웹 및 데이터베이스 서버) 추가
0.0-2
Thu 1624년 5월 16일 Gabriela Fialová (gfialova@redhat.com)
- RHEL-16336 (RHEL 시스템 역할) 개선 사항 추가
- RHEL-13760 (RHEL 시스템 역할) 개선 사항 추가
0.0-1
Wed May 01 2024, Gabriela Fialová (gfialova@redhat.com)
- Red Hat Enterprise Linux 9.4 릴리스 노트 릴리스 정보.
0.0-0
2024년 3월 27일 Gabriela Fialová (gfialova@redhat.com)
- Red Hat Enterprise Linux 9.4 베타 릴리스 노트 릴리스.