8장. 업데이트된 패키지
8.1. abrt
버그 수정
- BZ#854668
- /etc/abrt/abrt.conf 파일이 동일한 디렉토리를 참조하는 "DumpLocation" 및 "WatchCrashdumpArchiveDir" 변수가 수정되면 ABRT 유틸리티는 해당 디렉토리의 파일을 아카이브 및 새 문제 디렉토리로 처리하려고 시도하여 예측할 수 없는 결과를 초래했습니다. 이번 업데이트를 통해 ABRT는 이러한 잘못된 구성이 감지되면 시작을 거부합니다.
- BZ#896090
- 케이스를 생성하는 동안 reporter-rhtsupport 유틸리티는 RHT 고객 센터 서버가 허용하지 않은 운영 체제(OS) 버전 값을 전송했습니다. 그 결과 새 케이스를 생성하지 못하고 오류 메시지가 반환되었습니다. 이번 업데이트를 통해 OS 버전 값의 "베타"와 같은 접미사가 제거되지 않고 RHT 고객 센터 서버는 버전 값을 허용하며 케이스가 생성됩니다.
- BZ#952773
- 이번 업데이트 이전에는 커널 오류가 주기적으로 발생하면 abrt-watch-log 및 abrt-dump-oops 유틸리티에서 너무 많은 새 문제 디렉터리를 생성했습니다. 그 결과 사용자가 문제 보고와 함께 충돌했으며 /var 파티션이 오버플로될 수 있었습니다. 이 버그를 해결하기 위해 abrt-dump-oops가 5개 이상 표시된 후 몇 분 동안 모든 추가 문제를 무시하도록 변경되었습니다. 결과적으로 사용자는 문제 보고에 의해 플러드되지 않습니다.
기능 개선
- BZ#952704
- Red Hat 지원 툴에는 ABRT의 충돌을 쿼리하기 위한 API가 필요했습니다. 이번 업데이트를 통해 ABRT용 python API가 제공되었으며 이제 python API를 사용하여 ABRT가 발견한 버그를 쿼리할 수 있습니다.
- BZ#961231
- 그래픽 환경(headless systems)을 사용하지 않는 사용자가 ABRT 유틸리티에서 감지한 문제를 놓치게 될 가능성이 높습니다. 사용자가 abrt-console-notification 패키지를 설치할 때 마지막 로그인 이후 감지된 새로운 문제와 관련하여 콘솔에 경고 메시지가 표시됩니다.
8.2. anaconda
버그 수정
- BZ#818233
- 이전에는 이 장치에 파티션이 없으므로 anaconda 에서 USB 드라이브에 작성된 DVD ISO 이미지를 설치의 소스 리포지토리로 인식하지 못했습니다. 결과적으로 ISO는
boot.iso
처럼 작동했으며 포함된 패키지를 설치할 수 없었습니다. 이번 업데이트를 통해 ISO 9660 포맷이 있는 장치를 포함하고 이 장치에/repodata/repomd.xml
파일이 포함된 경우 모든 장치를 소스 리포지토리로 구성하도록 수정되었습니다. 결과적으로 anaconda 는 이제 USB의 ISO를 예상대로 인식합니다. - BZ#845572
- 이번 업데이트 이전에는 anaconda loader 명령으로 NetworkManager 의 inotify 메커니즘을 트리거하지 않은 새 임시 파일의 이름을 변경하여
/etc/sysconfig/network
파일을 생성했습니다. 결과적으로network --hostname
kickstart 옵션에 의해 설정된 호스트 이름은 DHCP 또는 DNS를 통해 얻은 호스트 이름을 사용하여 NetworkManager 에 의해 재정의될 수 있었습니다. 이번 업데이트를 통해 새 값을/etc/sysconfig/network
에 직접 작성하도록 로더 가 수정되었습니다. 결과적으로 NetworkManager 는 이제 이 파일에 지정된 호스트 이름 값을 허용합니다. - BZ#846336
- 이전에는 첫 번째 선택 항목이 이미 사용 중인 경우 anaconda 에서 다른 루프 장치를 사용하지 않았습니다. 결과적으로 kickstart %pre 섹션에서 루프 장치를 사용하는 경우 HDD ISO 설치에 실패했습니다. 이번 업데이트를 통해 첫 번째 루프 장치를 이미 사용 중인 경우 anaconda 가 다른 루프 장치를 사용하도록 수정되었습니다. 결과적으로 HDD ISO 설치가 예상대로 작동합니다.
- BZ#847600
- 이번 업데이트를 통해 출력에
/dev/srX
장치를 나열하지 않도록 list-harddrives 명령이 수정되었습니다. - BZ#851284
- 이번 업데이트를 통해 LVM 정보 대화 상자에서 몇 가지 오타 오류가 수정되었습니다.
- BZ#852523
- clearpart --drives 및 part --ondisk 명령에 다른 디스크 세트를 사용하면 backtrace가 반환되었습니다. 이로 인해 설치가 성공적으로 완료되지 않았습니다. 이번 업데이트를 통해 이러한 명령과 함께 하나의 디스크 세트만 사용됩니다. 사용자는 하나의 clearpart 명령으로 여러 디스크를 지정해야 합니다. 그러지 않으면 마지막 clearpart --drives 인수만 사용됩니다.
- BZ#859420
- 이번 업데이트 이전에는 파티션을 잘못 지정할 때 적절한
No free 슬롯
대화 상자 대신 사용 가능한 공간 오류 - BZ#859569
- 이전 버전에서는 anaconda 의 복구 모드에서
.discinfo
파일을 검색하기 전에 소스 ISO를 마운트 해제했습니다. 그 결과stage2
매개변수가 두 번 로드되어 부팅 시간이 늘어났습니다. 이번 업데이트를 통해 anaconda 가 복구 모드에서.discinfo
검사를 건너뛰도록 수정되었습니다. 따라서stage2
는 예상대로 한 번만 로드됩니다. - BZ#873281
- 이전 버전에서는 LVM raid1 볼륨이 이미 구성된 시스템을 다시 설치할 때 anaconda 가 예기치 않게 종료되었습니다. 이 버그는 수정되었으며 앞서 언급한 시나리오에서 anaconda 가 더 이상 충돌하지 않습니다.
- BZ#875644
- IBM System z 아키텍처에서 Kickstart 업그레이드가 수행되면 anaconda 는 kickstart 구성에 reboot 명령이 있는 경우에도 시스템을 재부팅하지 않고 종료합니다. 결과적으로 수동 재부팅이 필요했습니다. 이번 업데이트에서는 System z에서 Kickstart 업그레이드 지원이 추가되어 이 버그를 수정합니다.
- BZ#877852
- 이전 버전에서는 여러 디스크가 있는 시스템에 Red Hat Enterprise Linux 6를 설치하고 이러한 디스크 중 하나 이상이 PPC PReP Boot 파티션이 포함된 경우 anaconda 는 선택한 설치 디스크에 빈 PPC PReP Boot 파티션을 생성했지만 이미 기존 PPC PReP Boot 에 필요한 부팅 파일을 저장했습니다. 결과적으로 설치 후 시스템을 부팅하지 못했습니다. 이번 업데이트를 통해 anaconda 가 부팅 파일에 올바른 PPC PReP Boot 를 사용하도록 수정되어 이 버그를 수정합니다.
- BZ#878907
- 스왑 크기를 계산하는 알고리즘은 설치에 사용되는 공간을 고려하지 않았습니다. 결과적으로 작은 디스크에도 설치 프로그램이 대규모 스왑 공간을 생성하더라도 시스템의 나머지 부분에서는 충분한 공간만 남겨 두는 경우가 많습니다. 이 알고리즘은 설치에 사용된 공간의 양을 등록하도록 수정되었습니다. 그 결과 작은 디스크가 나머지 시스템에 더 많은 공간을 남겨 두는 시스템에서 더 적은 디스크 공간(사용된 디스크 공간) 스왑이 생성됩니다.
- BZ#880577
- 이전에는 anaconda 가
XFS
파일 시스템에서 16TB보다 큰 파티션을 생성하지 않았습니다. 이 버그는 수정되었으며 이제 승인한 대로 100TB의 공식 제한이 사용됩니다. - BZ#881005
- 이번 업데이트 이전에는 이미 정의된 prepboot 파티션에서 autopart 명령이 제대로 작동하지 않았습니다. 그 결과, prepboot 파티션을 정의한 part 명령이 포함된
Kickstart
파일을 사용할 때anaconda 는 세그먼트 오류를 사용하여 예기치 않게 종료되었습니다. 이번 업데이트를 통해 앞서 언급한 구성에서 autopart 가 올바르게 수정되었습니다. 결과적으로 설치가 예상대로 계속됩니다. - BZ#882452
- 이전 버전에서는 anaconda GUI에서 네트워크 장치를 구성할 때 FCoE 네트워크 기술을 사용하는 장치가 NetworkManager 에 의해 제어되지 않도록 자동으로 설정되었습니다. 결과적으로 NetworkManager 는 이러한 장치를 비활성화하여 이전에 FCoE SAN 디스크가 GUI에서 사라집니다. 이 버그가 수정되었으며 GUI에서 네트워크 장치 구성을 편집해도 이전에 설정된 FCoE 장치의 연결이 끊어지지 않습니다.
- BZ#886020
- 이전에는 새 파일 시스템을 생성하지 않고 / 마운트 지점에 원시 파티션을 사용할 때 anaconda 에서 경고 메시지를 반환하지 않았습니다. 이번 업데이트를 통해 anaconda 가 이러한 시나리오에 경고 메시지를 표시하도록 수정되었습니다.
- BZ#888292
- 특정 상황에서는 anaconda GUI를 사용하여 파티션을 관리할 때 예기치 않은 창 초점 손실이 발생했습니다. 이번 업데이트를 통해 상위 창 설정이 수정되어 이 버그를 수정합니다.
- BZ#893849
- 이번 업데이트를 통해 anaconda 의 일본어 로케일에서 몇 가지 오타 및 번역 오류가 수정되었습니다.
- BZ#894050
- 이전에는 anaconda 에서 새로 설치 또는 업그레이드가 수행되었는지 여부에 관계없이 기본 커널 매개변수 세트를 사용하여
/etc/zipl.conf
구성 파일을 생성했습니다. 그 결과 anaconda 를 사용하여 IBM System z 시스템을 업그레이드할 때 사용자가/etc/zipl.conf
에 추가된 커널 매개변수가 손실되었습니다. 이번 업데이트에서는 System z 아키텍처가 있는 시스템에 대한 부트 로더 업그레이드 지원이 추가되었습니다. 결과적으로 사용자가/etc/zipl.conf
에 추가한 커널 매개 변수는 앞서 언급한 시나리오에서 보존됩니다. - BZ#895098
- 이번 업데이트 이전에는 anaconda GUI를 사용하여 충돌하는 패키지를 설치하려고 할 때 잘못된 경고 메시지가 표시되었습니다. 이번 업데이트를 통해 이 메시지는 패키지 충돌을 알리기 위해 수정되었습니다.
- BZ#895982
- MD 물리 볼륨 상단에 32MB 미만의 물리 확장 기능으로 anaconda 는 볼륨 그룹의 용량을 계산하는 데 문제가 발생합니다. 이 문제를 해결하려면 논리 볼륨을 할당할 때 최소 32MB의 물리적 확장 크기를 사용하거나 사용 가능한 공간을 두 배로 두 배로 늘리십시오.
- BZ#901515
- 패키지 설치 단계를 진행하기 전에 anaconda 는 선택한 리포지토리에서 코어 패키지 그룹을 사용할 수 있는지 확인하지 않았습니다. 이 그룹이 없으면 설치가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 anaconda 가 코어 의 존재를 확인하도록 변경되었습니다. 결과적으로 코어 를 사용할 수 없는 경우 경고 메시지가 표시되고 설치에 더 이상 충돌하지 않습니다.
- BZ#903689
- 이전 버전에서는 설치 중에 eth0.171 과 같은 VLAN 네트워크 장치를 구성할 때 상위 장치에도 동일한 구성이 잘못 적용되었습니다. 그 결과 설치 중에 eth0 과 같은 VLAN 상위 장치가 잘못 구성되었습니다. 버그가 수정되었으며 VLAN 장치 구성이 올바르게 적용됩니다.
- BZ#909463
- 특정 상황에서는 anaconda 에서 생성하고 GRUB 에 전달된 커널 명령줄 항목이 제대로 작동하지 않았습니다. 결과적으로 다중 경로 구성에서 커널 명령에 지정된 마지막 FCoE 인터페이스가 온라인 상태가 아닐 때 BFS(Boot File System)가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 커널 명령줄 항목이 수정되었으며 앞서 언급한 시나리오에서 BFS가 더 이상 실패하지 않습니다.
- BZ#919409
- 이전에는 설치 후
/etc/multipath/bindings
파일에 잘못된 SElinux 컨텍스트가 있었습니다. 이 버그가 수정되었으며/etc/multipath/bindings
가 올바른 SElinux 컨텍스트로 설치됩니다. - BZ#921609
- 이번 업데이트 이전에는 생성된
Kickstart
파일에 VLAN 인터페이스에 대한 올바른 네트워크 명령이 포함되어 있지 않았습니다. 결과적으로 설치 중에 이러한 명령을 재사용할 수 없었습니다. 이 버그는 수정되었으며 생성된킥스타트
에 재사용 가능한 네트워크 명령이 포함됩니다. - BZ#928144
- 안정성을 위해 기본적으로 AMD IOMMU 드라이버는 Red Hat Enterprise Linux 6에서 비활성화되어 있습니다. 그러나 신뢰할 수 있는 부팅을 위해 IOMMU가 있을 것으로 예상되는 경우 이 드라이버가 필요합니다. 이번 업데이트를 통해
tboot
패키지가 설치될 때 커널 부팅 매개변수에서 AMD IOMMU를 활성화하도록 anaconda 가 수정되었습니다. MD IOMMU는 신뢰할 수 있는 부팅을 사용하고 BIOS에 AMD IOMMU 사양이 있고 활성화되어 있을 때 활성화됩니다. 이러한 설정을 되돌리기 위해 안정성 문제가 발생하는 경우 사용자는 "amd_iommu=on" 커널 매개변수를 제거할 수 있습니다. - BZ#947704
- 이전에는 Red Hat Enterprise Linux 6를 설치하는 동안 usb-storage 모듈을 블랙리스트로 지정할 수 없었습니다. 이 버그가 수정되었으며 usb-storage는 이제 복잡도 없이 블랙리스트에 추가할 수 있습니다.
- BZ#949409
- 드문 경우도 있지만 linuxrc.s390 설치 중에 dasd_>-<d_mod 드라이버가 로드되지 않았으며 anaconda 는 응답하지 않습니다. 이번 업데이트를 통해 이 문제를 방지하기 위해 패치가 적용되었습니다.
- BZ#971961
- 이전에는 본딩 네트워크 장치가 설치 초기 단계에서만 활성화되었습니다. 결과적으로
stage2
파일에서 네트워크 명령으로 구성된 본딩 장치가 활성화되지 않았습니다. 이 동작이 변경되었으며 이제 설치 후 단계에서 본딩 장치를 활성화할 수 있습니다. - BZ#994504
- 이전에는 anaconda 가 설치하는 동안 특정 필수 패키지를 여러 번 로드했습니다. 결과적으로 종속성 문제를 해결하는 데 시간이 오래 걸리며 디스크 및 파일 시스템의 수가 늘어났습니다. 이번 업데이트를 통해 anaconda 는 패키지를 선택하는 보다 효율적인 방법을 사용하도록 수정되어 종속성 문제 해결에 소요되는 시간을 줄일 수 있습니다.
- BZ#998486
- 이번 업데이트를 통해 anaconda 에는 IBM System z 아키텍처에 설치하기 위해 더 이상 fcoe-utils 패키지가 필요하지 않습니다.
- BZ#1003844
- 이번 업데이트 이전에는
Kickstart
파일에서--hibernation
옵션을 사용하는 경우에도 anaconda 에서 스왑 크기를 디스크 공간의 10%로 제한했습니다. 이번 업데이트를 통해 anaconda 가--hibernation
옵션을 수락하도록 수정되었으며 이 옵션이 지정되면 스왑 크기는 더 이상 디스크 공간의 10%로 제한되지 않습니다. - BZ#1004752
/etc/ssh/sshd_config.anaconda
구성 파일의 잘못된 설정으로 인해 FIPS 모드의 IBM System z 아키텍처에 설치 중에sshd
데몬이 시작되지 않았습니다. 이로 인해 설치에 성공하지 못했습니다. 이 버그가 수정되었으며 이제 FIPS 모드에서 설치 중에sshd
가 예상대로 실행됩니다.- BZ#1007641
- 이번 업데이트 이전에는 VNC 모드에서 설치 중에 다중 경로 장치가 나열되지 않았습니다. 이 버그가 수정되었으며 이러한 장치가 이제 올바르게 나열됩니다.
- BZ#1007683
- 파티션이 없는 파일 시스템으로 직접 포맷된 장치는 Red Hat Enterprise Linux 6에서 지원되지 않습니다. 이전에는 anaconda 에서 장치가 이 조건을 충족하는지 확인하지 않았습니다. 결과적으로 지원되지 않는 장치에서 새 파티션을 생성하려고 하면 anaconda 가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 anaconda 가 장치를 파티션 해제하고 이러한 경우 파티셔닝을 중단하여 충돌을 방지하도록 수정되었습니다.
- BZ#1007884
- 이전에는 zipl 부트 로더의 버그로 인해 anaconda 에서 런타임 오류가 발생했습니다. 결과적으로 iSCSI LUN에서 rootfs가 있는 IBM System z 아키텍처는 Red Hat Enterprise Linux 6.4에서 6.5로 업그레이드한 후 부팅되지 않았습니다. 이 버그가 수정되었으며 시스템 업그레이드 후 부팅에 실패한 문제가 더 이상 발생하지 않습니다.
- BZ#1008731
- anaconda 에서 Broadcom 어댑터에 대한 오래된 FCoE 탐지로 인해 HP 시스템에 FCoE BFS를 설치한 후 OS에서 시스템을 부팅할 수 없었습니다. 이번 업데이트를 통해 anaconda 는 Broadcom 어댑터에서 FCoE를 올바르게 감지하도록 수정되었으며 앞서 언급한 시나리오에서 부팅 문제가 더 이상 발생하지 않습니다.
- BZ#1008941
- 특정 상황에서 Red Hat Enterprise Linux 6.4에서 6.5로 업그레이드한 후 IBM System z 시스템은 올바른 스토리지 장치에서 부팅되지 않았습니다. 이 버그가 수정되었으며 System z 시스템은 업그레이드 후 올바른 장치에서 부팅됩니다.
- BZ#1009691
- 10GBaseT Twin Pond 와 같은 특정 어댑터는 연결하는 데 시간이 더 오래 걸립니다. 이 시간은 설치 프로그램에서 사용하는 fipvlan 툴의 시간 초과 제한을 초과한 경우가 많습니다. 결과적으로 GUI에 FCoE 대상을 추가하는 것은 시간 초과에 실패했습니다. 이번 업데이트를 통해 fipvlan 의 시간 초과 제한이 발생했습니다. 그 결과 FCoE 대상이 이제 어댑터 유형에 관계없이 성공적으로 추가됩니다. 그러나 GUI에서 추가된 장치를 보려면 사용자가 두 화면을 다시 언어 선택으로 이동해야 합니다.
- BZ#1013176
- 이전에는 FCoE LUN 목록이 특수 스토리지 BFS 설치 중에 두 번째 어댑터를 추가한 후 anaconda 의 SAN 장치 탭에서 사라졌습니다. 이 버그가 수정되었으며 이제 설치 중에 목록이 올바르게 표시됩니다.
- BZ#1018703
- 이번 업데이트 이전에는 anaconda 에서 NVMe 장치의 파티션 이름을 잘못 추출했습니다. 그 결과 NVMe 장치에서 부트 로더 설치에 실패했습니다. 이 버그가 수정되었으며 NVMe 장치가 성공적으로 설치되었습니다.
기능 개선
- BZ#890095
- 이번 업데이트에서는 kickstart 부트 로더의
--driveorder
옵션 내에서 디스크 참조에 대한 보다 유연한 지원이 추가되었습니다. 이제--driveorder
의 인수로/dev/disk/by-*/
폴더를 사용하는 디스크를 지정할 수 있습니다. - BZ#905227
- 이번 업데이트에서는 기본 IPv6 게이트웨이를 지정할 수 있는 kickstart network 명령에
--ipv6gateway
옵션을 추가합니다. 이제 각각--gateway
또는--ipv6gateway
를 사용하여 IPv4 및 IPv6 기본 게이트웨이를 모두 network kickstart 명령에 지정할 수 있습니다. - BZ#915666
- 이번 업데이트를 통해 x86 아키텍처의 부팅 파티션이 항상 2TB 미만인 경우 GRUB 부트 로더에 필요한 파티션 크기 검사가 anaconda 에 추가되었습니다.
- BZ#917815
- 이번 업데이트를 통해 설치 프로그램에서 DDNS 메서드를 허용하도록 anaconda 가 수정되었습니다. DHCP 프로토콜을 사용하는 네트워크 장치의 Kickstart 구성에 호스트 이름이 지정되면 이
호스트 이름이
dhclient 유틸리티로 전달됩니다.
8.3. arptables_jf
버그 수정
- BZ#807315
- 이번 업데이트 이전에는 "mangle-hw-s" 및 "mangle-hw-d" 옵션 모두 "-arhln" 옵션을 사용해야 했습니다. 그러나 명령줄에 "--arhln" 옵션이 지정되어 있어도 "arptables" 명령이 이를 인식하지 못했습니다. 결과적으로 이 두 옵션을 성공적으로 사용할 수 없었습니다. 이러한 업데이트된 패키지는 이 버그를 수정하며 "--arhln" 옵션을 이제 mangle 하드웨어 옵션과 함께 사용할 수 있습니다.
- BZ#963209
- "-L" 명령줄 옵션(예: 값)을 "-L"(List Rules) 옵션과 함께 사용하면 arptables 유틸리티에서 규칙을 나열하지 않았지만 "-x" 옵션이 "-L"이라는 오류 메시지를 발행했습니다. 이번 업데이트를 통해 이제 규칙을 나열할 때 arptables 유틸리티에서 "-x" 옵션을 사용합니다.
8.4. Augeas
보안 수정
- CVE-2012-0786, CVE-2012-0787
- 업데이트 시 Augeas가 구성 파일을 처리하는 방식에서 여러 취약점이 발견되었습니다. Augeas를 사용하여 다른 사용자가 쓸 수 있는 디렉토리의 구성 파일(예: 루트가 아닌 서비스 사용자가 소유한 디렉터리에서 파일을 업데이트하는 root로 실행 중인 애플리케이션)을 사용하는 애플리케이션은 임의의 파일을 덮어쓰거나 마운트 지점 공격을 통해 정보를 유출하도록 속일 수 있습니다.
버그 수정
- BZ#799885
- 이전에는 XML 속성에 작은따옴표를 사용할 때 Augeas가 XML approach를 사용하여 파일을 구문 분석할 수 없었습니다. 작은따옴표가 유효한 문자로 처리되고 구문 분석이 더 이상 실패하지 않도록 업스트림 패치가 제공되었습니다.
- BZ#855022
- 이번 업데이트 이전에는 vsftpd.conf 파일에 "require_ssl_reuse" 옵션을 설정할 수 없었습니다. 업데이트된 패치는 이 옵션을 적절하게 인식하도록 vsftpd technology를 수정하므로 이 버그를 수정합니다.
- BZ#799879
- 이전에는 XML connector가 Unix가 아닌 줄 끝을 지원하지 않았습니다. 결과적으로 Augeas는 이러한 줄 끝을 포함하는 파일을 로드할 수 없었습니다. XML connector는 CRLF 라인 끝을 가진 파일을 처리하도록 수정되어 이 버그를 수정했습니다.
- BZ#826752
- 이전 버전에서는 Augeas가 modprobe.conf 파일을 "=" 옵션 지시문의 "=" 문자와 함께 구문 분석할 수 없었습니다. modprobe approach가 업데이트되어 구문 분석이 더 이상 실패하지 않습니다.
8.5. Cryostat
제어
합니다. 데몬은 사용 중일 때 파일 시스템을 자동으로 마운트하고 사용량이 없을 때 파일 시스템을 마운트 해제합니다.
버그 수정
- BZ#859078
- 특정 상황에서 Cryostat 유틸리티는 구성된 모든 설정을 준수하지 않고 UDP 프로토콜을 사용하여 네트워크 파일 시스템의 가용성을 조사했습니다. 이로 인해 일부 서버가 메시지와의 연결을 거부할 수 있습니다.
Client x.x.x.x is violating the NFSv4 specification by sending a UDP/IP datagram to the NFSv4 server.
이번 업데이트에서는 명시적으로 정의된 NFSv4 요청을 준수하도록 수정되어 이 버그를 수정합니다. - BZ#886623
- Cryostat 유틸리티의 변경으로 인해 마운트 시 서버 가용성을 검증할 때 RDMA 프로토콜을 사용하여 마운트가 더 이상 인식되지 않습니다. 이번 업데이트를 통해 RDMA 프로토콜을 사용하는 마운트의 가용성을 조사하지 않도록 수정되었습니다.
- BZ#903944
- 이전에는 Cryostat 유틸리티에서
--random-multimount-selection
옵션을 무시했습니다. 결과적으로 이 설정은 지정된 경우에도 로컬 파일 시스템을 마운트할 때 사용되지 않았습니다. 이 버그가 수정되었으며--random-multimount-selection
이 예상대로 작동합니다. - BZ#908020
- 이전에는 거의 동시 마운트 요청이 두 개 이상 표시되었을 때 Cryostat 유틸리티에 의해 마운트된 NFS 마운트가 종종 종료되었습니다. 이는 프로토콜을 식별하기 위해 잘못된 프록시 구조를 사용했기 때문입니다. 이번 업데이트를 통해 protoent 구조 대신 숫자 프로토콜 ID를 사용하도록 수정되었습니다. 결과적으로 NFS 마운트 시도가 더 이상 설명 된 시나리오에서 실패하지 않습니다.
- BZ#971131
- 이번 업데이트 이전에는
SELinux context=
옵션을 인식하지 못하고 옵션을 사용할 때 구문 오류를 반환했습니다. 마스터 맵 구문 분석기가SELinux 컨텍스트=
를 인식하도록 업데이트되어 이제 복잡하지 않고 사용할 수 있습니다. - BZ#974884
- 이전에는 Cryo stat 유틸리티에서 시스템 관리자가 증가한 후 열린 최대 파일의 제한을 인식하지 못했습니다. 결과적으로 새 구성에 관계없이 기본 제한이 사용되었습니다. 이번 업데이트를 통해 이 제한의 변경 사항을 확인하고 올바르게 적용하도록했습니다.
- BZ#996749
- 이전에는
libldap
라이브러리가 스레드로부터 안전한 방식으로 초기화되지 않았습니다. 결과적으로ber_memalloc_x()
기능을 실행하면 분할 오류로 인해 기능이 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해libldap
의 initializaliton이 스레드로부터 안전하게 수정되었으며 앞서 언급한 시나리오에서ber_memalloc_x()
가 더 이상 충돌하지 않습니다. (BZ#996749) - BZ#979929
- 데몬에서 호스트 가용성을 확인하고 네트워크 인터페이스 중 하나가 "DOWN"으로 표시되면 segmentation fault로 종료되었습니다.
이번 업데이트를 통해 이 사례에 대한 검사가 추가되어 세그먼트 오류가 더 이상 발생하지 않습니다.
- BZ#994296
- Daemon이 종료 신호를 수신하면 Cryostat 다시 로드 명령을 실행하면 auto.master 맵에서 여러 맵이 제거될 때 계속 실행을 중지했습니다.
이 버그를 해결하기 위해 패치가 추가되어 있는 경우, 기술된 경우 해당 버그가 더 이상 종료되지 않습니다.
- BZ#994297
- 현재 맵 항목을 추가하기 위한 코드를 제거한 변경으로 인해 와일드카드 간접 다중 마운트 맵 항목이 마운트되지 않았습니다. 와일드카드 다중 맵 회귀 문제를 해결하는 패치가 추가되어 맵 항목이 성공적으로 마운트됩니다.
- BZ#1002896
- 만료 스레드를 생성할 때 발생한 실행 순서 경합으로 인해 daemon이 응답하지 않게 되었습니다.
만료된 스레드 생성을 처리하는 코드가 앞서 언급한 문제를 방지하기 위해 수정되었습니다.
- BZ#996749
- 이전에는 LDAP 초기화 호출을 중심으로 잠금이 수행되지 않았습니다. 그러나 이러한 함수는 스레드로부터 안전하지 않으며 경합 조건이 발생할 수 있었습니다. 이번 업데이트를 통해 잠금이 추가되어 경합 상태의 위험이 줄어듭니다.
기능 개선
8.6. extensionik
버그 수정
- BZ#631677
- 이번 업데이트에서는 빈 Cryostatik-debuginfo 패키지가 제거됩니다.
- BZ#867701, BZ#995471
- 이전에는 rasterizer 유틸리티를 사용하여 SVG 이미지를 JPEG 형식으로 변환하려고 하면 오류가 반환되었습니다. 이번 업데이트에서는 이 버그를 수정하기 위해 패치를 적용하고 rasterizer는 이제 SVG 이미지를 JPEG 형식으로 올바르게 변환합니다.
- BZ#883464
- 이전에는 manifest.mf 파일에 "bundle-version" 대신 "version" 키워드가 포함되어 있었습니다. 결과적으로 Eclipse 플랫폼이 Batik 유틸리티에서 제대로 작동하지 않았습니다. 이 버그가 수정되었으며 Eclipse가 예상대로 작동합니다.
- BZ#979527, BZ#995471
- 기본 소스 코드의 버그로 인해 ttf2svg 글꼴 컨버터를 예외와 함께 사용하지 못했습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 적용하고 ttf2svg가 올바르게 작동합니다.
- BZ#995471
- 이전에는 extensionik 패키지에는 JPEG 형식을 처리하기 위해 누락된 모듈과 연결된 classpath 오류 및 오류가 많이 포함되어 있었습니다. 결과적으로 raterizer, svgpp, ttf2svg와 같은 Batik 유틸리티는 예외적으로 실패했습니다. 이번 업데이트를 통해 이러한 버그를 수정하도록 기본 소스 코드가 수정되었으며 앞서 언급한 유틸리티가 예상대로 작동합니다.
8.7. bFA-firmware
8.8. bind-dyndb-ldap
버그 수정
- BZ#908780
- 이전에는 bind-dyndb-ldap 플러그인에서 "idnsUpdatePolicy" 속성이 제대로 없는 DNS 영역을 처리하지 않아 무해하지만 잘못된 오류 메시지가 발생했습니다.영역 직렬([zone serial])이 변경되지 않았습니다. 영역이 슬레이브로 전송되지 않을 수 있습니다.이 메시지는 각 영역을 다시 로드한 후 또는 영향을 받는 DNS 영역이 변경될 때마다 기록되었습니다. "idnsUpdatePolicy" 속성이 DNS 영역에 정의되지 않은 경우 bind-dyndb-ldap 플러그인이 수정되어 더 이상 오류 메시지를 출력하지 않습니다.
- BZ#921167
- 이전에는 bind-dyndb-ldap 플러그인이 "zonesub" match-type을 사용하여 업데이트 정책을 잘못 처리하여 update-policy 매개변수 처리 중에 BIND 데몬이 예기치 않게 종료되었습니다. bind-dyndb-ldap 플러그인은 "zonesub" match-type으로 update-policy를 올바르게 처리하도록 수정되어 이 시나리오에서 더 이상 충돌하지 않습니다.
- BZ#923113
- bind-dyndb-ldap 플러그인은 설정을 너무 일찍 처리하여 시작 또는 다시 로드하는 동안 어설션 실패로 BIND 데몬이 예기치 않게 종료되었습니다. bind-dyndb-ldap 플러그인은 나중에 옵션을 처리하도록 수정되어 시작 또는 다시 로드하는 동안 더 이상 충돌하지 않습니다.
- BZ#1010396
- 이번 업데이트 이전에는 기본 구성으로 bind-dyndb-ldap 플러그인에서 포인터 레코드(PTR) 동기화 기능에 대해 LDAP 서버에 대한 충분한 연결을 설정하지 않아 PTR 레코드 동기화가 실패했습니다. 이번 업데이트를 통해 기본 연결 수가 4개로 증가되고 PTR 레코드 동기화가 예상대로 작동합니다.
8.9. biosdevname
버그 수정
- BZ#1000386
- 이전에는 addlot() 함수가 두 개 이상의 인터페이스에 대해 동일한 "dev->index_in_slot" 값을 반환했습니다. 결과적으로 두 개 이상의 네트워크 인터페이스의 이름이 "renameN"이 될 수 있었습니다. 이번 업데이트에서는 biosdevname 버전 0.3.11에 존재하는 포트 번호를 가져오는 데 사용되는 논리를 복원하고 결과적으로 모든 인터페이스의 이름이 예상대로 지정됩니다.
8.10. boost
8.10.1. RHBA-2013:1187 - 버그 수정 업데이트 향상
버그 수정
- BZ#820670
- Boost 패키지에는 C++ 라이브러리 확장의 기술 보고서에 지정된 대로 복잡한 숫자와 gamma, beta 및 erf 특수 기능에 대한 trigonometric 함수의 역추적 기능을 포함하는 Boost.Math 공유 라이브러리 라이브러리가 포함되어 있지 않았습니다. 이번 업데이트에서는 언급된 기능에 해당하는 기호가 포함된 boost-math 하위 패키지가 추가되었습니다.
8.11. busybox
보안 수정
- CVE-2013-1813
- mdev BusyBox 유틸리티는 world-writable 권한이 있는 /dev 내에 특정 디렉터리를 만들 수 있습니다. 권한이 없는 로컬 사용자는 이 취약점을 사용하여 /dev 디렉토리 트리의 일부를 조작할 수 있습니다.
버그 수정
- BZ#820097
- 이전에는 IBM System z 아키텍처에서 너무 빠른 문자열 크기 최적화로 인해 다음 오류와 함께 표준 입력을 처리한 후 "wc" BusyBox 명령이 실패했습니다.wc: 해당 파일 또는 디렉터리 없음이 버그는 문자열 크기 최적화를 비활성화하여 해결되었습니다. "wc" 명령은 IBM System z 아키텍처에서 제대로 작동합니다.
- BZ#859817
- 이번 업데이트 이전에는 "mknod" 명령으로 255보다 큰 메이저 또는 마이너 번호가 있는 장치 노드를 생성할 수 없었습니다. 그 결과 kdump 유틸리티에서 이러한 장치를 처리하지 못했습니다. 기본 소스 코드가 수정되었으며 "mknod" 명령을 사용하여 255보다 큰 메이저 또는 마이너 번호가 있는 장치 노드를 생성할 수 있습니다.
- BZ#855832
- NFS 서버의 네트워크 설치를 선택한 경우 "mount" 명령은 기본적으로 UDP 프로토콜을 사용했습니다. 서버에서 TCP 마운트만 지원하는 경우 mount 명령이 실패합니다. 결과적으로 Anaconda에서 설치를 계속할 수 없었습니다. 이 버그가 수정되었으며 NFS 마운트 작업이 기본적으로 TCP 프로토콜로 설정됩니다.
8.12. ca-certificates
기능 개선
- BZ#544376
- 이번 업데이트에서는 인증서 신뢰 결정에 필요한 구성 데이터를 위한 시스템 전체 신뢰 스토리지인 공유 시스템 인증 기관 스토리지를 제공합니다. 이는 클래식 인증 기관 구성 파일과 libnssckbi NSS 신뢰 모듈의 기능적으로 호환되는 대체 모듈입니다. 이 기능은 관리자가 명시적으로 활성화해야 합니다. 기능에 대한 자세한 설명은 ca-certificates 패키지의 update-ca-trust 도움말 페이지를 참조하십시오.
8.13. CIFS-utils
8.14. cjkuni-fonts
버그 수정
- BZ#651651
- 이전에는 일부 구성에 따라 중국어 시작 메뉴에 중국어 로케일(zh-CN 및 zh-TW 모두)이 표시되지 않았지만 일본어와 한국어에는 이 문제가 없었습니다. 이번 업데이트를 통해 이제 Cryostat 시작 메뉴가 중국어 로케일로 표시됩니다.
8.15. 클러스터 및 gfs2-utils
버그 수정
- BZ#996233
- 이번 업데이트 이전에는 gfs2_tool, gfs2_quota, gfs2_grow 또는 gfs2_jadd 명령 중 하나가 예기치 않게 종료되면 해당 툴에서 사용하는 임시 Cryostat2 메타데이터 마운트 지점을 마운트할 수 있었습니다. 마운트 지점도 /etc/mtab 파일에 등록되지 않았으므로 "umount -a -t gfs2" 명령은 마운트 해제하지 않았습니다. 이 마운트 지점은 시스템이 제대로 재부팅되지 않도록 할 수 있으며 일반 Cryostat2 마운트 지점 이후 수동으로 마운트 해제된 경우 커널이 패닉 상태가 될 수 있습니다. 이번 업데이트에서는 임시 마운트 지점에 대한 mtab 항목을 생성하여 문제가 해결되어 신호가 수신될 때 종료하기 전에 마운트 해제합니다.
- BZ#893925
- 이전에는 차단 지연 없이 two_node 모드에서 실행되는 클러스터에 짧은 네트워크 오류가 발생하면 cman 유틸리티가 제대로 작동하지 않았습니다. 그 결과 두 노드는 연결이 다시 설정될 때 서로를 종료했습니다. 이번 업데이트에서는 노드 ID가 높은 노드의 "fenced" 데몬에 5초 지연이 추가되고 설명된 문제가 더 이상 발생하지 않습니다. 또 다른 옵션은 Red Hat 지식 베이스에 설명된 대로 "cluster.conf" 파일에 차단 지연을 추가하는 것입니다( https://access.redhat.com/site/solutions/54829참조).
- BZ#982670
- 이번 업데이트 이전에는 "restart" 명령을 실행할 때 cman init 스크립트에서 잠금 파일을 올바르게 처리하지 않았습니다. 결과적으로 노드를 재부팅하는 동안 다른 구성원에 의해 클러스터에서 노드를 제거할 수 있었습니다. cman init 스크립트가 잠금 파일을 올바르게 처리하도록 수정되었으며 이제 클러스터의 다른 노드에서 펜싱 작업을 수행하지 않습니다.
- BZ#889564
- 이전 버전에서는 corosync 유틸리티에서 "프로세스 일시 중지"를 감지하면 이전 프로세스가 유효하지 않으므로 제어 그룹 ID가 gfs_controld 데몬으로 전송되는 경우가 있었습니다. 그 결과 gfs_controld가 응답하지 않았습니다. 이번 업데이트에서는 gfs_controld가 이전 제어 그룹 ID가 있는 메시지를 삭제하도록 수정되었으며 이 시나리오에서는 gfs_controld가 더 이상 중단되지 않습니다.
- BZ#888857
- 이번 업데이트 이전에는 데몬 중지 중에 "fenced" 데몬 및 기타 관련 데몬에서 corosync 라이브러리에서 계속 참조하는 파일 설명자를 종료했습니다. 이로 인해 데몬이 제대로 종료되지 않았으며 클러스터 유틸리티를 종료하지 못했습니다. 이 버그가 수정되어 파일 설명자가 열린 상태로 유지되어 데몬에서 사용하지 않는 것으로 표시되고 데몬이 올바르게 종료됩니다.
- BZ#989647
- 이전에는 fsck.gfs2 유틸리티에서 특정 유형의 파일 시스템 손상을 제대로 처리하지 않았습니다. 결과적으로 fsck.gfs2는 오류 메시지로 종료되고 손상을 복구하지 않았습니다. 이번 업데이트에서는 파일 시스템 손상을 처리하기 위해 fsck.gfs2의 기능을 확장하며 설명된 문제가 더 이상 발생하지 않습니다.
- BZ#1007970
- 이전에는 mkfs.gfs2 유틸리티에서 "-K" 옵션을 사용할 수 없었습니다. 결과적으로 mkfs.gfs2는 "잘못된 옵션" 오류 메시지를 반환했으며 사용하지 않는 블록을 유지하고 삭제하지 않도록 이 옵션을 사용할 수 없었습니다. 이번 업데이트를 통해 mkfs.gfs2는 "-K" 옵션을 올바르게 처리합니다.
- BZ#896191
- cluster.conf(5) 매뉴얼 페이지에는 기본 syslog 기능이 "daemon"인 잘못된 정보가 포함되어 있습니다. 이번 업데이트에서는 이 설명이 "local4"로 수정되었습니다.
- BZ#902920
- 이전에는 GFS2(Global File System 2)의 디렉터리에 대한 정보가 잘못 배치된 경우 fsck.gfs2 유틸리티에서 케이스를 올바르게 인식하지 못했습니다. 또한 fsck.gfs2가 polkit2 디렉터리 해시 테이블의 일관성을 제대로 확인하지 못했습니다. 그 결과 fsck.gfs2에서 파일 시스템과 손상된 디렉터리의 파일을 사용할 수 없었습니다. 이번 업데이트를 통해 fsck.gfs2가 광범위한 온전성 검사를 수행하도록 수정되었으며 이제 다른 사람 간에 설명된 문제를 식별하고 해결할 수 있습니다.
- BZ#963657
- 이번 업데이트 이전에는 polkit2 리소스를 중지할 때 중첩된 GFS2 마운트 지점을 고려하지 않았습니다. 그 결과 마운트 지점이 올바른 순서로 마운트 해제되지 않았으며 gfs2 유틸리티를 중지하지 못했습니다. gfs2 init 스크립트가 올바른 순서로 Cryostat2 마운트 지점을 마운트 해제하도록 수정되었으며 이 시나리오에서는 gfs2를 중지해도 더 이상 실패하지 않습니다.
- BZ#920358
- 이전에는 qdiskd 데몬이 불필요한 재부팅되지 않은 새로 재연결된 노드를 올바르게 처리하지 않았습니다. 결과적으로 qdiskd는 초기화 후 이러한 노드를 제거했습니다. 이번 업데이트를 통해 qdiskd는 "S_NONE" 상태에서 노드의 누락된 업데이트 수를 건너뛰고 더 이상 설명된 시나리오에서 노드를 제거하지 않습니다.
- BZ#888318
- 이전에는 "cluster.conf" 파일에서 토큰 시간 초과가 잘못 설정된 경우 qdiskd 데몬에서 특정 오류 메시지를 발행하지 않았습니다. 결과적으로 qdiskd는 "qdiskd: configuration failed" 오류 메시지로 종료되어 세부 정보가 표시되지 않습니다. 이번 업데이트에서는 설명된 사례에 대한 특정 오류 메시지가 추가되었습니다.
- BZ#886585
- 이전 버전에서는 gfs2_grow 유틸리티에서 장치가 얼마나 많이 배출되지 않았기 때문에 증가가 불가능한 경우에도 0 종료 상태를 반환했습니다. 결과적으로 gfs2_grow를 테스트하는 데 특히 사용되는 자동화된 스크립트가 잘못된 "0" 반환 코드를 수신했습니다. 이번 업데이트를 통해 작업이 실패할 때 gfs2_grow가 0이 아닌 종료 상태를 반환하도록 수정되었습니다.
- BZ#871603
- 이전에는 "ccs_tool create" 명령의 도움말 텍스트에 "addfence" 하위 명령에 대한 잘못된 매개 변수, 즉 "login" 대신 "user"가 포함되어 있었습니다. 결과적으로 사용자가 잘못된 "cluster.conf" 파일을 생성할 수 있었습니다. 이번 업데이트를 통해 도움말 텍스트가 수정되었습니다.
- BZ#985796
- 이전에는 fsck.gfs2 유틸리티에서 수퍼 블록을 복구할 때 "cluster.conf" 파일에서 잠금 구성 필드를 조회했습니다. 결과적으로 수퍼 블록을 복구할 때 "lockproto" 및 "locktable" 필드가 부적절하게 설정될 수 있었습니다. 이번 업데이트를 통해 이제 "lockproto" 및 "locktable" 필드가 합리적인 기본값으로 설정되고 사용자는 이제 fsck.gfs2 실행이 끝날 때 tunegfs2 유틸리티로 필드를 설정하라는 지시를 받았습니다.
- BZ#984085
- 이전에는 fsck.gfs2 유틸리티에서 디렉터리 리프 블록이 중복된 경우 케이스를 올바르게 처리하지 않았습니다. 그 결과 손상된 디렉터리의 파일을 찾을 수 없어 fsck.gfs2가 응답하지 않았습니다. 이번 업데이트를 통해 fsck.gfs2는 모든 디렉터리에서 중복 블록을 확인하고, 손상을 식별하고 수정하며, 이 시나리오에서는 더 이상 중단되지 않습니다.
8.16. ClusterMon
버그 수정
- BZ#951470
- 이번 업데이트 이전에는 로컬 시스템의 주소를 특정 클러스터 노드 항목과 연결하려고 할 때 부적절한 CMAN API 호출을 수행했지만 성공하지 못했습니다. 결과적으로 modclusterd는 5초마다 로그 메시지를 반환했습니다. 또한 CMAN에 대한 로깅이 활성화되면 멤버십 메시지가 포함되어 CMAN API 오용에서 발생하는 메시지가 출력되었습니다. 이제 CMAN API 호출이 올바르게 사용되어 앞서 언급한 결과를 수정합니다.
- BZ#908728
- 이전에는 IPv6를 사용할 수 있을 때만 사용된 메모리 액세스로 인해 중지되었을 때 IPv4 전용 환경에서 modclusterd 서비스가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 IPv4 전용 환경에서 modclusterd가 더 이상 충돌하지 않습니다.
- BZ#888543
- 이전에는 클러스터 상태를 노출하고 cluster-snmp로 제공된 SNMP(Simple Network Management Protocol) 에이전트로 인해 이 모듈이 로드될 때 SNMP 서버(snmpd)가 예기치 않게 종료되고 포함된 서버는 다시 로드하라는 지시를 받았습니다. 이는 특히 이 서버에 의해 촉진되는 리소스의 부적절한 처리로 인해 발생했습니다. 이제 모듈이 언로드될 때 이러한 리소스를 올바르게 정리하여 다시 로드 시 충돌이 발생하지 않습니다.
8.17. compat-openmpi
버그 수정
- BZ#876315
- 이전에 compat-openmpi 패키지는 이전 버전의 Open MPI 공유 라이브러리와의 호환성을 보장하지 않았습니다. 결과적으로 사용자는 Red Hat Enterprise Linux 6.3에서 Open MPI를 사용하여 특정 애플리케이션을 실행하지 못했으며 나중에 Red Hat Enterprise Linux 6.2 및 이전 버전에서 사용되는 Open MPI 버전에 대해 애플리케이션이 컴파일된 경우 해당 애플리케이션을 실행하지 못했습니다. 이번 업데이트 후 compat-openmpi 패키지는 이제 Red Hat Enterprise Linux 6에서 이전 버전의 Open MPI와의 호환성을 유지합니다.
8.18. conman
버그 수정
- BZ#891938
- 이전에는 시간대 문자열의 길이 범위로 알려진 모든 시간대 코드를 처리하는 데 충분하지 않았습니다. 그 결과 시간대 이름이 5개 이상의 문자로 구성된 경우 conmand 데몬을 시작하지 못했습니다. 최대 문자열 길이가 32로 설정되었으며 conmand는 항상 예상대로 시작됩니다.
8.19. Cargekey
버그 수정
- BZ#806038
- 이전 버전에서, Cintkey는 스마트 카드 리더를 사용할 수 없는 경우 NSS(Network Security Services) 및 PC/SC Lite 프레임워크의 문제를 방지하기 위해 항상 보그스(e-gate) 스마트 카드 리더를 생성했습니다. 그러나 스마트 카드 인증에 e-gate 스마트 카드는 더 이상 사용할 수 없으며 NSS 및 pcsc-lite 패키지가 업데이트되어 e-gate reader가 연결되지 않은 상황을 처리합니다. 따라서, Colkey의 이 bogus reader가 필요하지 않게 되어 특정 상황에서 일부 애플리케이션에 문제가 발생할 수 있습니다. 이번 업데이트에서는 각 코드가 수정되어, maykey가 더 이상 bogus 스마트 카드를 생성하지 않도록 합니다.
- BZ#906537
- 이전 버전의 형식 키에서는 PKINIT와 같은 일부 서명 작업이 CAC 및 PIV 인터페이스를 모두 지원하는 PIV 끝점 카드에서 실패할 수 있었습니다. 기본 레지드 키 코드가 수정되어 이러한 PIV 끝점 카드가 이제 정상적으로 작동하게 됩니다.
- BZ#991515
- NSS DBM 데이터베이스에만 등록된 coldkey 라이브러리는 이제 SQLite 데이터베이스 형식도 사용하는 것이 좋습니다. 이번 업데이트에서는 두 NSS 데이터베이스에 올바르게 등록하도록 coldkey를 수정합니다.
기능 개선
- BZ#951272
- ECC(Elliptic Curve Cryptography) 인증서가 포함된 토큰에 대한 지원이 힐러 키 패키지에 추가되어, Colkey 라이브러리가 ECC 프로비저닝된 카드에서 작동합니다.
8.20. coreutils
보안 수정
- CVE-2013-0221, CVE-2013-0222, CVE-2013-0223
- sort, uniq 및 join 유틸리티에서 alloca() 함수 사용을 제대로 제한하지 않는 것이 발견되었습니다. 공격자는 이 취약점을 악용하여 긴 입력 문자열을 제공하여 이러한 유틸리티를 손상시킬 수 있습니다.
버그 수정
- BZ#747592
- 이전에는 하위 프로세스의 신호 전파가 잘못되어 "su" 명령의 반환 값이 잘못되었으며 상위 프로세스에 코어 덤프 정보가 표시되지 않았습니다. 이번 업데이트를 통해 하위 프로세스의 신호 전파가 수정되었으며 "su" 명령의 반환 값이 수정되었습니다. 결과적으로 하위 프로세스의 코어 덤프 메시지는 더 이상 무시되지 않으며 "su" 명령은 올바른 종료 값을 반환합니다.
- BZ#749679
- 이전에는 su 명령에서 하위 프로세스의 끝을 기다리지 않았습니다. 결과적으로 su 유틸리티가 하위 프로세스가 완료되기 전에 종료될 수 있었습니다. 이 버그는 수정되었으며 "su"는 하위 프로세스가 종료될 때까지 대기합니다.
- BZ#816708
- 이전 버전에서는 사용자 이름 인수 없이 호출할 때 "id -G" 및 "id --groups" 명령에서 암호 데이터베이스에 나열된 기본 그룹 ID를 출력했습니다. 경우에 따라 이 ID가 잘못되었거나 특히 변경된 경우 유효하지 않습니다. 이번 업데이트 후 사용자가 지정되지 않은 경우 앞서 언급한 명령은 유효 ID와 실제 ID만 출력합니다.
- BZ#827199
- "tail -f" 명령은 inotify를 사용하여 파일의 변경 사항을 추적합니다. 원격 파일 시스템의 경우 [-/,] inotify를 사용할 수 없습니다. 알 수 없는 파일 시스템의 경우 (예: panasas), "tail -f"는 폴링으로 대체하지 못했습니다. 이제 알려진 파일 시스템 목록이 업데이트되고 알 수 없는 파일 시스템에 대한 폴링으로 대체되도록 "tail -f"가 수정되었습니다. 결과적으로 "tail -f"는 이제 알 수 없는 파일 시스템에서도 올바르게 작동합니다. 알 수 없는 파일 시스템에 대한 경고만 경고하고 폴링으로 대체됩니다.
- BZ#842040
- 이전에는 "df" 명령이 출력 마운트 이름의 제어 문자를 해석했습니다. 결과적으로 출력에 "\n"과 같은 제어 문자가 있는 경우 스크립트에 읽고 문제가 발생할 수 있었습니다. 문제가 있는 문자는 물음표 기호("?")로 대체되었으며 이러한 출력은 더 이상 읽기 어렵지 않습니다.
- BZ#867984
- 이전에는 코어 유틸리티에서 멀티바이트 로케일 지원에 대한 Red Hat 특정 패치에 대한 "cut" 명령의 "--output-delimiter" 옵션 처리가 누락되었습니다. 결과적으로 지정된 경우 옵션이 무시되었습니다. "-output-delimiter" 옵션에 대한 지원이 coreutils에서 구현되었으며 사용자는 다중 바이트 로케일과 함께 이 옵션을 사용할 수 있습니다.
- BZ#889531
- 이전에는 신호에 의해 "su" 세션이 종료되면 잘못된 종료 상태가 반환되었습니다. 이로 인해 ksh 잠금과 같은 다양한 문제가 발생했습니다. 이번 업데이트에서는 종료 상태 처리가 수정되어 앞서 언급한 상황이 더 이상 발생하지 않습니다.
- BZ#911206
- 이전에는 stat 유틸리티에서 setpwent() 및 setgrent() 함수를 사용했습니다. 이로 인해 stat 유틸리티가 호출될 때 NIS 데이터베이스 다운로드 문제가 발생하여 성능 문제가 발생했습니다. 이번 업데이트 후 앞서 언급한 시스템 호출이 더 이상 stat 유틸리티 소스 코드에 표시되지 않습니다. 결과적으로 모든 stat 유틸리티 실행에는 NIS 데이터베이스 다운로드가 필요하지 않습니다.
- BZ#956143
- 파일의 콘텐츠를 구문 분석할 때 더 이상 사용되지 않는 키 형식(+POS -POS)을 사용하여 필드의 끝을 지정한 경우 정렬 유틸리티에서 필드의 끝을 잘못 결정하여 잘못된 출력이 생성되었습니다. 이번 업데이트에서는 사용되지 않는 키 형식을 사용할 때 "-k" 옵션 사용과 일치하도록 구문 분석 논리가 수정되었습니다. 이제 sort 유틸리티는 이 상황에서 예상되는 결과를 반환합니다.
- BZ#960160
- 이전에는 date 유틸리티에서 잘못된 입력을 구문 분석할 수 있는 경우도 있었습니다. 이는 구문 분석 메커니즘에서 "다른" 바이트의 기호 확장 때문입니다. 이로 인해 일부 잘못된 입력의 예기치 않은 결과가 발생했습니다. 구문 분석 메커니즘이 수정되었으며 date 유틸리티에서 적절한 경우 잘못된 입력을 올바르게 인식합니다.
- BZ#965654
- 이전에는 "dd" 유틸리티에서 "status=noxfer"가 지정된 경우에도 전송 통계 출력을 생성했습니다. 이 버그를 해결하기 위해 모든 정보 출력을 억제하기 위해 새로운 옵션인 "status=none"이 구현되었습니다. 결과적으로 dd에 의해 생성된 불필요한 정보는 더 이상 이 옵션으로 표시되지 않습니다.
- BZ#967623
- "su" 유틸리티에는 일부 환경 변수를 유지하는 "-p" 옵션이 있습니다. 그러나 su(1) 매뉴얼 페이지는 전체 환경이 유지되었다고 잘못 언급했습니다. 이번 업데이트 후 보존된 환경 변수를 모두 나열하도록 도움말 페이지가 조정됩니다.
- BZ#980061
- 두 파일 시스템 간에 디렉터리를 이동할 때 "mv" 유틸리티는 POSIX 표준을 위반한 빈 디렉터리를 덮어쓰지 못했습니다. 이번 업데이트 후 mv는 더 이상 빈 대상 디렉터리를 덮어쓰지 못하고 POSIX 표준 규칙을 따릅니다.
- BZ#997537
- 이전에는 "-n" 옵션을 지정할 때 "pr" 유틸리티에서 하위 최적화 코드 루틴을 사용하고 0 또는 공백을 사용하여 일관되지 않은 패딩을 사용했습니다. 결과적으로 "-n" 옵션이 32 이상인 경우 예기치 않게 종료되었습니다. 또한 일관되지 않은 패딩은 스크립트에서 구문 분석하기 어려웠습니다. 이번 업데이트 후 줄 번호는 공백으로 일관되게 패딩되고 "-n" 옵션의 높은 값을 올바르게 처리하도록 프로그램이 개선되었습니다. 결과적으로 "pr" 유틸리티는 더 이상 예기치 않게 종료되지 않습니다.
- BZ#1006221
- 이전에는 "tail -f" 명령이 종료된 심볼릭 링크를 올바르게 모니터링하지 않았습니다. 결과적으로 "tail -f"는 심볼릭 링크가 종료된 후 심볼릭 링크에 대한 업데이트를 무시했습니다. 이 버그는 수정되었으며 "tail -f"는 이제 dead symbolic link가 다시 설정되고 참조 내용의 테두리를 다시 시작합니다.
기능 개선
- BZ#836557
- 이번 업데이트 이전에는 바인딩 마운트에 의해 유도된 디렉터리 사이클이 치명적인 오류(예: 디스크 손상)로 처리되었습니다. 그러나 이러한 사이클은 비교적 일반적이며 효율적으로 감지될 수 있습니다. "du" 명령이 수정되어 설명 경고를 표시하고 적절한 0이 아닌 종료 값을 반환합니다. 이를 통해 다양한 서비스의 바인딩 마운트가 올바르게 처리할 수 있습니다.
- BZ#908980
- Red Hat Enterprise Linux 6에서 "dd" 명령에는 다양한 변환 유형을 지원하는 "conv" 옵션이 있습니다. 이번 업데이트에서는 스파스 파일에 사용되는 "스parse" 변환 옵션에 대한 지원이 추가되었습니다. 이 기능은 블록 장치를 파일에 복사하여 실제 데이터 양을 최소화할 때 유용합니다. 또한 iSCSI 및 NFS를 포함하여 다양한 스토리지 유형의 가상 머신 이미지를 관리하는 데 사용할 수 있습니다.
8.21. Corosync
버그 수정
- BZ#854216
- failed_to_recv 구성 옵션 설정을 사용하여 결함이 있는 네트워크에서 corosync를 실행하는 경우 클러스터 노드가 "수신 실패"로 표시된 후 corosync가 세그먼트 오류로 종료되었습니다. 이는 클러스터 노드 멤버십 결정 중에 assert 조건이 충족되었기 때문에 발생했습니다. 이 문제를 해결하기 위해 "수신 실패"로 표시된 노드에서 트리거한 경우 어설션을 무시하도록 기본 코드가 수정되었습니다. 이 경우 단일 노드 멤버십이 항상 설정되기 때문에 안전합니다.
- BZ#877349
- corosync-notifyd 서비스는 corosync 알림기의 기본 구성이 없기 때문에 설치 직후 시작되지 않았습니다. 이번 수정에서는 /etc/sysconfig/corosync-notifyd 파일에 이 서비스의 기본 구성이 추가되어 추가 구성 없이 설치 직후 corosync-notifyd를 시작할 수 있습니다.
- BZ#880598
- 기본 코드의 버그로 인해 corosync API는 초기화되지 않은 메모리를 읽을 수 있으므로 구성 및 통계 데이터베이스에서 특정 오브젝트의 값을 늘리거나 줄일 때 잘못된 값을 반환할 수 있습니다. 이번 업데이트에서는 [u]int16 유형 값을 반환할 때 32비트 대신 메모리 16비트만 읽도록 해당 코드를 수정합니다. corosync API는 더 이상 초기화되지 않은 메모리를 읽지 않고 올바른 값을 반환합니다.
- BZ#881729
- corosync 로깅 시스템의 드문 경합 조건으로 인해 corosync는 NULL 포인터를 역참조하려는 시도 후 세그먼트 오류로 종료될 수 있습니다. 이제 로그 포맷 및 로그 인쇄 함수 간의 경쟁 조건을 피할 수 있도록 pthread 뮤지스트 잠금이 해당 형식 변수에 추가되었습니다.
- BZ#906432
- 이전에는 corosync에서 IPv6 이중 콜론 표기법을 지원하지 않았으며 corosync.conf 파일을 구문 분석할 때 중괄호가 올바르게 닫히지 않았습니다. 결과적으로 IPv6를 사용할 때 totem 서비스가 시작되지 않았습니다. 구성 파일에 추가 닫기 중괄호가 포함된 경우 구성 파일이 성공적으로 구문 분석되지 않은 이유를 사용자에게 알리는 오류가 표시되지 않았습니다. 이번 업데이트에서는 이제 totem 서비스를 성공적으로 시작할 수 있도록 이러한 구문 분석 버그를 수정하고 corosync.conf 파일에 추가 닫기 중괄호가 포함된 경우 오류 메시지가 표시됩니다.
- BZ#907894
- corosync 코드의 여러 버그로 인해 corosync 서비스가 여러 클러스터 노드에서 종료된 경우 중복 또는 메시지가 애플리케이션에 전달되지 않았습니다. 이번 업데이트에서는 이러한 버그를 수정하는 일련의 패치를 적용하여 corosync가 더 이상 이 시나리오에서 메시지가 손실되거나 중복되지 않도록 합니다.
- BZ#915490
- corosync-fplay 유틸리티는 세그먼트 오류로 종료되거나 corosync fdata 파일이 손상되면 예기치 않은 동작이 발생할 수 있습니다. 이번 업데이트를 통해 corosync-fplay가 코드에서 루프를 감지하고 fdata 파일을 올바르게 검증하도록 수정되었습니다. fdata 손상의 다른 원인을 방지하기 위해 corosync는 이제 하위 프로세스가 로깅하지 못하도록 합니다. 이러한 변경으로 인해 corosync가 더 이상 충돌하지 않거나 이 상황에서 응답하지 않습니다.
- BZ#915769
- corosync.conf 파일의 service 섹션에 서비스 이름이 포함되어 있지 않은 경우 corosync는 세그먼트 오류로 종료되거나 알 수 없는 서비스를 시작하기를 거부했습니다. 이번 업데이트를 통해 corosync에서 name 키를 올바르게 확인하고 서비스 이름을 찾을 수 없는 경우 오류 메시지를 반환하고 정상적으로 종료합니다.
- BZ#916227
- 서비스 초기화가 완료되기 전에 종료 요청(SIGINT 신호)이 수신되면 corosync 서비스에서 상황을 올바르게 처리하지 못했습니다. 그 결과 corosync가 응답하지 않고 SIGKILL을 제외한 모든 신호가 무시되었습니다. 이번 업데이트에서는 세마포어를 추가하여 이 상황에서 corosync가 정상적으로 종료되도록 합니다.
- BZ#922671
- Corosync 프로세스 간 통신(IPC) 라이브러리를 사용한 애플리케이션을 실행할 때 dispatch() 함수의 일부 메시지가 손실되거나 중복되었습니다. 이번 업데이트를 통해 corosync는 dispatch_put() 함수의 반환 값을 올바르게 확인하고 IPC 링 버퍼에서 올바른 나머지 바이트를 반환하며, IPC 클라이언트가 링 버퍼의 실제 메시지 수에 대한 정보를 올바르게 알립니다. dispatch() 함수의 메시지는 더 이상 손실되거나 중복되지 않습니다.
- BZ#924261
- 경우에 따라 "corosync-cfgtool -H" 명령을 사용하여 corosync 서비스를 종료하고 CS_ERR_TRY_AGAIN 오류 코드를 반환한 경우 후속 종료 시도가 CS_ERR_EXISTS 오류로 실패했습니다. corosync-cfgtool 유틸리티는 shutdown 명령을 자동으로 재시도하도록 수정되었으며 Corosync의 Cfg 라이브러리에서 후속 종료 호출을 여러 개 처리할 수 있습니다. 이제 "corosync-cfgtool -H" 명령이 고도로 로드된 클러스터 노드에서도 예상대로 작동합니다.
- BZ#947936
- corosync.conf 파일의 uidgid 섹션에 존재하지 않는 사용자 또는 그룹이 포함된 경우 corosync에 오류가 표시되지 않았습니다. 이제 getpwnam_r 시스템 호출에서 반환된 값을 올바르게 확인하고 이 상황에서 적절한 오류 메시지를 표시하도록 기본 코드가 수정되었습니다.
- BZ#959184
- IPC 클라이언트가 연결 핸드셰이크의 특정 기간 내에 종료되면 corosync 기본 프로세스에서 SIGPIPE 신호를 수신하여 종료됩니다. 이번 업데이트를 통해 sendto() 함수에 의해 SIGPIPE 신호가 올바르게 처리되고 corosync 기본 프로세스가 더 이상 이 상황에서 종료되지 않습니다.
- BZ#959189
- 종료 시 corosync 프로세스는 SIGINT 신호를 보내거나 corosync-cfgtool 유틸리티를 사용하여 많은 수의 confdb IPC 연결을 열어서 응답하지 않을 수 있습니다. 이번 업데이트에서는 corosync가 예상대로 종료되도록 구성 및 통계 데이터베이스에 대한 모든 IPC 연결이 종료되도록 corosync 코드를 수정합니다.
기능 개선
- BZ#949491
- 이제 corosync 데몬은 corosync 기본 프로세스가 장기간 예약되지 않은 시기를 감지하고 관련 메시지를 시스템 로그에 보냅니다.
- BZ#956739
- 문제 탐지 프로세스를 개선하기 위해 corosync-blackbox 명령의 출력에 이벤트 타임스탬프가 포함되어 있습니다. 이 기능은 이전 버전의 corosync의 출력(fdata)이 올바르게 처리되도록 이전 버전과 호환됩니다.
8.22. cpupowerutils
버그 수정
- BZ#886225
- 이전에는 cpupowerutils 패키지의 일부 명령에 수동 페이지가 누락되었습니다. turbostat, x86_energy_perf_policy, cpufreq-bench 및 cpufreq-bench_plot.sh 명령에 대한 수동 페이지가 추가되어 이 버그를 수정합니다.
- BZ#886226
- 루트가 아닌 사용자가 cpufreq-bench 유틸리티를 실행하려고 하면 세그먼트 오류로 인해 예기치 않게 종료되고, ABRT 알림이 데스크탑에 표시되었습니다. 이번 업데이트를 통해 대신 사용자에게 경고 메시지가 표시되고 유틸리티를 root로 실행해야 함을 알립니다.
- BZ#886227
- 이번 업데이트 이전에는 /dev/cpu/*/msr/ 디렉터리를 열려고 할 때 x86_energy_perf_policy 유틸리티가 실패했습니다. 그 결과 "권한 거부됨" 오류 메시지가 반환되었습니다. 이번 업데이트를 통해 새 오류 메시지는 명령에 root 권한이 필요하고 x86_energy_perf_policy가 완전히 종료되었음을 설명합니다.
- BZ#886228
- 이전에는 x86_energy_perf_policy 유틸리티에 대한 대화형 도움말이 짧고 혼동되었습니다. 명령줄 옵션의 의미를 명확히 하기 위해 도움말 텍스트가 확장되었습니다.
- BZ#914623
- "cpupower set -m" 명령에 대한 구현이 누락되어 명령을 시작할 때 오류 메시지가 반환됩니다. 이전에는 이 메시지가 시스템에서 sched-mc 유틸리티가 지원되지 않는다는 것을 잘못 부정확했습니다. 이번 업데이트에서는 sched-mc가 아직 구현되지 않았음을 명확하게 표시하도록 메시지를 명확히 표시합니다.
- BZ#914787
- 이전에는 "cpupower -v" 또는 "cpupower --version" 명령을 실행하면 잘못된 버전 정보를 반환했습니다. 이 버그가 수정되었으며 cpupower의 선택한 구성 요소가 이제 올바른 버전 릴리스 번호를 보고합니다.
기능 개선
- BZ#852831
- Intel turbostat v3.0 유틸리티는 Red Hat Enterprise Linux에 포함되어 있습니다. 유틸리티는 현재 CPU 코어 빈도 및 활성 C 상태를 읽는 데 사용됩니다.
8.23. 크래시
8.23.1. RHEA-2013:1565 - 충돌 개선 업데이트
기능 개선
- BZ#902141
- 현재 snappy 압축 형식을 사용하여 makedumpfile 유틸리티에서 생성한 덤프 파일을 이제 크래시 유틸리티에서 읽을 수 있습니다. snappy 형식은 엔터프라이즈 애플리케이션을 사용하는 모든 상황에서 안정적인 성능이 필요한 크래시 덤프 메커니즘에 적합합니다.
- BZ#902144
- 이번 업데이트를 통해 LZO 압축 형식을 사용하여 makedumpfile 유틸리티에서 생성한 덤프 파일을 이제 크래시 유틸리티로 읽을 수 있습니다. LZO 압축 형식은 임의의 데이터에 대해 빠르고 안정적입니다.
- BZ#1006622
- 이번 업데이트에서는 makedumpfile 유틸리티에서 생성한 압축 덤프 파일에 대한 지원이 추가되었으며, 이는 44비트 이상의 물리적 메모리가 있는 시스템에서 생성된 것입니다.
- BZ#1017930
- 이번 업데이트에서는 KVM 게스트 덤프 파일의 bt 명령으로 생성된 결함이 있는 panic-task backtrace가 수정되었습니다. 이제 게스트 운영 체제가 패닉 상태인 경우 bt 명령에 추적이 표시됩니다.
- BZ#1019483
- 이번 업데이트에서는 초기화 중에 CPU가 255개 이상, set 명령, ps 명령, 작업 주소, PID, CPU 및 명령 이름으로 구성된 작업별 헤더를 표시하는 모든 명령을 사용하여 시스템의 CPU 번호를 수정합니다. 패치가 없으면 CPU 255의 sys 명령은 "NO_PROC_ID"를 표시하고, 다른 명령은 CPU 번호에 대해 "-"를 표시합니다. 다른 명령의 경우 255보다 큰 CPU 번호의 경우 가비지 값이 CPU 번호 필드에 표시됩니다.
8.24. crash-gcore-command
버그 수정
- BZ#890232
- Red Hat Enterprise Linux 6 커널의 백포트된 madvise/MADV_DONTDUMP 변경으로 인해 VDSO(Virtual Dynamically linked Shared Objects) 및 vsyscall 페이지가 생성된 프로세스 코어 덤프에서 누락되었습니다. 이번 업데이트를 통해 VDSO 및 vsyscall 페이지가 항상 생성된 프로세스 코어 덤프에 포함됩니다.
8.25. createrepo
버그 수정
- BZ#877301
- 이전에는 파일이 없는 경우 time-stamp 검사가 전달되지 않았습니다. 그 결과 빈 리포지토리가 최신 상태로 잘못 표시되었습니다. "createrepo --checkts" 명령은 빈 리포지토리에 대해 아무 작업도 수행하지 않았습니다. 이번 업데이트를 통해 이제 누락된 파일이 실패로 간주되고 통과가 아닙니다. 이제 "createrepo --checkts" 명령이 빈 리포지토리에서 호출될 때 새 리포지토리를 올바르게 생성합니다.
- BZ#892657
- --basedir, --retain-old-md, --update-md-path 옵션은 createrepo 유틸리티 도움말 메시지에서만 보고되었지만 도움말 페이지에는 보고되지 않았습니다. 이번 업데이트에서는 도움말 페이지가 수정되어 이제 도움말 메시지와 도움말 페이지에 옵션이 올바르게 설명되어 있습니다.
8.26. cronie
버그 수정
- BZ#697485
- 이전에는 crond deamon에서 popen() 시스템 함수를 호출하기 전에 사용자 권한에 대한 데이터를 삭제하지 않았습니다. 그 결과 루트가 아닌 사용자가 함수를 호출할 때 /var/log/crond 파일에 권한 변경에 대한 경고가 기록되었습니다. 이번 업데이트를 통해 popen()을 호출하기 전에 사용자 권한을 삭제하도록 crond가 수정되었습니다. 결과적으로 이 시나리오에 더 이상 경고가 기록되지 않습니다.
- BZ#706979
- 이번 업데이트를 통해 cron 구성 파일의 파일 권한이 root 사용자만 읽을 수 있도록 변경되었습니다.
- BZ#733697
- 이번 업데이트 이전에는 cron init 파일에서 재시작이라는 정의가 올바르지 않았습니다. 그 결과 crond 데몬을 다시 시작할 때 오류가 잘못 보고되었습니다. init 파일이 수정되었으며 crond 재시작 후 중복 실패 메시지가 더 이상 표시되지 않습니다.
- BZ#738232
- LDAP(Lightweight Directory Access Protocol) 서버 또는 NFS(Network File System)에 마운트된 홈 디렉터리가 있는 사용자의 cron 작업은 종종 분리된 것으로 표시되었기 때문에 거부되었습니다(일반적으로 NIS 및 LDAP 서버에 연결할 수 없는 경우 임시 NSS 조회 실패로 인해). 이번 업데이트를 통해 고립된 데이터베이스가 생성되고 cron 작업이 예상대로 수행됩니다.
- BZ#743473
- 이번 업데이트를 통해 /etc/cron.hourly/0anacron 구성 파일에서 더 이상 사용되지 않는 주석이 제거되었습니다.
- BZ#821046, BZ#995089
- cron의 시간대 지원에 대한 버그로 인해 계획된 작업이 여러 번 실행되었습니다. 이 버그의 영향은 봄의 시간 변경에서만 볼 수 있었습니다. 이 버그가 수정되었으며 이제 변경 시 작업이 올바르게 실행됩니다.
- BZ#887859
- 이번 업데이트를 통해 anacron 테이블 설정을 표시하는 잘못된 예제가 anacrontab 도움말 페이지에서 수정되었습니다.
- BZ#919440
- 이전에는 crond 데몬에서 데몬의 기존 잠금을 확인하지 않았습니다. 결과적으로 crond의 여러 인스턴스가 동시에 실행될 수 있었습니다. 잠금 메커니즘이 업데이트되어 한 번에 여러 cron 인스턴스를 실행할 수 없습니다.
- BZ#985888
- 이번 업데이트 이전에는 crond 데몬에서 $LANG 설정을 읽지 않았습니다. 그 결과 시스템 전체의 $LANG 설정으로 cron 작업이 실행되지 않았습니다. 이 버그는 수정되었으며 이제 cron 작업에서 예상대로 $LANG를 사용합니다.
- BZ#985893
- 이전에는 crond 데몬에서 putenv 시스템 호출을 사용했기 때문에 crond가 세그먼트 오류로 인해 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 putenv()가 setenv() 시스템 호출으로 교체되어 세그먼트 오류가 발생하지 않습니다.
- BZ#990710
- 이번 업데이트 이전에는 cron 또는 crontable로 PATH 변수를 설정할 수 있었지만 PAM 설정으로 변경할 수 없습니다. 이번 업데이트를 통해 PAM 설정을 통해 PATH를 변경할 수 있습니다. 그 결과 "-P" 옵션이 사용되는 경우 PATH를 환경에서 상속할 수 있습니다.
- BZ#1006869
- 이전에는 루트가 아닌 사용자가 crond 데몬을 다시 시작하려고 할 때 잘못된 오류 코드가 반환되었습니다. 이번 업데이트를 통해 설명된 사례에서 올바른 코드가 반환됩니다.
기능 개선
8.27. CVS
버그 수정
- BZ#671460
- CVS 클라이언트가 DNS 부하 분산 클러스터 노드에 대한 GSSAPI 인증 연결을 설정하려고 하면 각 노드에 고유한 호스트 이름이 있었기 때문에 인증이 실패했습니다. 이번 업데이트를 통해 GSSAPI CVS 서버는 "cvs" 서비스 및 모든 호스트 이름과 일치하는 Kerberos 키를 검색하도록 수정되었습니다. 결과적으로 CVS 서버는 서버의 호스트 이름이 도메인 이름과 일치하지 않는 경우에도 GSSAPI를 사용하여 클라이언트를 인증할 수 있으며, 따라서 Kerberos 주체 호스트 이름 부분이 모든 클러스터 노드에 공통됩니다. CVS 서버 관리자는 각 노드에 두 개의 Kerberos 주체를 배포하는 것이 좋습니다. 노드의 호스트 이름과 일치하는 주체와 클러스터의 도메인 이름과 일치하는 주체입니다.
기능 개선
- BZ#684789
- 이전에는 CVS 서버가 클라이언트 주소를 PAM(Pluggable Authentication Modules) 시스템에 전달하지 않았습니다. 결과적으로 네트워크 주소로 클라이언트를 PAM 시스템으로 구분할 수 없었고 시스템은 인증 또는 권한 부여 목적으로 클라이언트 주소를 사용할 수 없었습니다. 이번 업데이트를 통해 클라이언트 네트워크 주소가 원격 호스트 항목(PAM_RHOST)으로 PAM 하위 시스템에 전달됩니다. 또한 일부 PAM 모듈이 설정되지 않은 값으로 작동할 수 없기 때문에 터미널 항목(PAM_TTY)은 더미 값 "cvs"로 설정됩니다.
8.28. device-mapper-multipath
버그 수정
- BZ#975676
- DM-Multipath(Device Mapper Multipath)는 sysfs 함수에서 이를 역참조하기 전에 NULL 값에 대한 포인터를 테스트하지 않았습니다. 결과적으로 다중 경로 장치의 경로가 제거되는 동안 다중 경로 장치의 크기를 조정한 경우 다중 경로 데몬은 분할 오류를 사용하여 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 DM-Multipath는 sysfs 함수에서 NULL 포인터 검사를 수행하고 설명된 시나리오에서 더 이상 충돌하지 않습니다.
- BZ#889429
- 이번 업데이트 이전에는 시스템 시작 시 검색된 모든 다중 경로 경로가 구성될 때까지 multipathd 데몬이 udev 이벤트(uevents)를 수신 대기하지 않았습니다. 그 결과 multipathd에서 발견된 경로를 처리할 수 없었습니다. 이 버그가 수정되었으며 이제 다중 경로에서 설명된 시나리오에서 모든 경로를 예상대로 처리합니다.
- BZ#889441
- multipathd에 대한 udev 규칙을 잘못 정렬했기 때문에 initramfs udev 규칙을 사용하여 다중 경로 장치를 생성할 때 다중 경로 경로에 대해 링크 우선 순위가 설정되지 않았습니다. 결과적으로 /dev/disk/by-uuid/<uuid> 심볼릭 링크는 다중 경로 장치 대신 다중 경로 경로를 가리켰습니다. 이로 인해 특정 상황에서 부팅 문제가 발생할 수 있습니다. 이번 업데이트를 통해 앞서 언급한 심볼릭 링크가 예상대로 다중 경로 장치를 가리키도록 multipathd udev 규칙이 올바르게 정렬되었습니다.
- BZ#902585, BZ#994277
- 이전에는 DM-Multipath에서 sysfs "state" 속성에 충분한 공간을 할당하지 않았습니다. 그 결과 경로가 "transport-offline" 상태로 전환되면 버퍼 오버플로가 트리거되어 시스템 로그에 오류 메시지가 기록되었습니다. 또한 DM-Multipath는 "quiesce" 상태에서 올바르게 경로를 처리하지 않아 이러한 경로가 불필요하게 실패했습니다. 이번 업데이트를 통해 DM-Multipath는 sysfs "state" 속성의 모든 유효한 값을 저장하기에 충분한 공간을 할당합니다. 이제 "quiesce" 상태의 경로가 "보류 중" 상태로 이동되어 경로가 실패하지 않습니다.
- BZ#928831
- 이전에는 DM-Multipath에서 커널이 설정하기 전에 "retain_attached_hw_handler" mpath 대상 기능을 지원했는지 확인하지 않았습니다. 그 결과 "retain_attached_hw_handler"를 설정한 다중 경로 장치가 이 기능을 지원하지 않고 이전 커널이 있는 시스템에서 작동하지 않았습니다. 이번 업데이트를 통해 DM-Multipath는 커널이 설정하기 전에 커널이 "retain_attached_hw_handler" 기능을 지원하는지 확인합니다. 이제 최신 버전의 DM-Multipath를 사용하는 이전 커널이 있는 시스템에서 다중 경로 장치가 예상대로 작동합니다.
- BZ#995251
- 특정 설정에서 대상 컨트롤러가 대상 포트의 비대칭 액세스 상태를 "사용할 수 없음"으로 보고하면 RDAC(Redundant Disk Array Controller)에서 경로를 down으로 표시하지 않았습니다. 결과적으로 multipathd 데몬은 I/O를 사용할 수 없는 경로로 반복적으로 전송하려고 했습니다. 이 버그는 수정되었으며 다중 경로에서는 더 이상 I/O를 사용할 수 없는 경로로 보내지 않습니다.
- BZ#1011341
- 이전 버전에서는 kpartx 유틸리티에서 MS-DOS 파티션 테이블의 파티션을 만들 때 장치의 실제 섹터 크기를 고려하지 않았습니다. 섹터당 512바이트 크기가 있다고 가정했습니다. 따라서 kpartx는 적절한 크기의 1/8 파티션을 만들었으며, 4KB의 섹터 크기가 있는 장치가 MS-DOS 파티션 테이블을 사용했습니다. 이번 업데이트를 통해 kpartx는 장치의 섹터 크기를 확인하고 장치가 MS-DOS 파티션 테이블을 사용하는 경우 적절한 파티션 크기를 계산합니다.
- BZ#892292
- 지정된 다중 경로 장치의 다중 경로 토폴로지를 표시할 때 DM-Multipath는 구성된 모든 다중 경로 장치의 모든 다중 경로 경로에 대해 불필요하게 WWID를 취득했습니다. 결과적으로 "multipath -l" 명령은 특히 다중 경로 장치가 포함된 시스템에서 예상보다 광범위하게 완료하는 데 시간이 오래 걸렸습니다. 이 동작이 변경되었으며 지정된 다중 경로 장치의 토폴로지를 표시할 때 다중 경로 명령은 이제 이러한 장치에 속하는 경로에 대해서만 WWID를 확보합니다.
- BZ#974129
- DM-Multipath는 이전에 dev_loss_tmo 옵션을 설정하기 전에 fast_io_fail_tmo 설정 옵션을 설정했습니다. 그러나 fast_io_fail_tmo의 새 값은 dev_loss_tmo의 현재 값보다 크거나 같을 수 없습니다. 따라서 앞서 언급한 제한으로 인해 두 옵션 및 sysfs의 값을 늘릴 때 앞서 언급한 제한으로 인해 fast_io_fail_tmo를 설정하지 못할 때 dev_loss_tmo도 새 값으로 설정할 수 없었습니다. 이번 업데이트를 통해 fast_io_fail_tmo의 새 값이 너무 높으면 DM-Multipath가 가장 높은 유효한 값, 즉 dev_loss_tmo의 현재 값을 1로 설정합니다. 이제 fast_io_fail_tmo 및 dev_loss_tmo 옵션을 둘 다 설정하면 dev_loss_tmo가 먼저 증가합니다.
- BZ#889987
- detect_prio 옵션이 설정되면 DM-Multipath에서 장치에서 AULA 우선순위를 설정하기 전에 스토리지 장치가 AULA(AULA)를 지원하는지 확인하지 않았습니다. 결과적으로 장치가 AULA를 지원하지 않으면 multipathd가 경로의 AULA 우선 순위를 감지하지 못하고 시스템 로그에 오류 메시지를 발송했습니다. DM-Multipath가 스토리지 장치에 AULA 우선순위를 설정하기 전에 AULA 우선순위로 경로를 설정할 수 있는지 여부를 확인할 수 있도록 이 버그가 수정되었습니다.
- BZ#875199
- NULL 포인터 역참조 버그로 인해 다중 경로 장치에 대한 실패한 경로를 제거할 때 멀티패스 오류가 세그먼트 오류로 종료될 수 있었습니다. 이번 업데이트에서는 코드에 NULL 포인터 테스트를 추가하여 이 시나리오에서 다중 경로가 실패하지 않도록 합니다.
- BZ#904836
- GUID 파티션 테이블(GPT)에 대한 파티션을 생성할 때 kpartx 유틸리티는 512바이트가 아닌 섹터 크기가 있는 장치의 실제 섹터 크기를 고려하지 않았습니다. 그 결과 kpartx는 실제 장치 파티션과 일치하지 않는 파티션을 생성했습니다. 이번 업데이트를 통해 kpartx는 생성된 파티션의 크기를 스토리지 장치의 실제 블록 크기와 일치하도록 올바르게 계산합니다.
- BZ#918825
- kpartx 유틸리티는 루프백 장치에 할당된 파일 설명자를 올바르게 해제하지 않아 파일 설명자 누출이 발생했습니다. 이번 업데이트에서는 kpartx 코드가 수정되었으며 kpartx는 루프백 장치를 해제한 후 더 이상 파일 설명자를 열지 않습니다.
- BZ#958091
- multipath 명령이 읽기/쓰기 권한으로 다중 경로 장치 맵을 로드하지 못하면 다중 경로 장치가 읽기 전용 액세스 권한으로 잘못 설정되었을 수 있었습니다. 이 문제는 EROFS 오류로 인해 실패하지 않은 경우에도 multipath 명령이 항상 읽기 전용 권한으로 map 테이블을 다시 로드했기 때문에 발생했습니다. 이번 업데이트를 통해 다중 경로는 EROFS 오류로 첫 번째 로드 시도가 실패한 경우에만 읽기 전용 권한으로 다중 경로 장치를 올바르게 다시 로드합니다.
- BZ#986767
- 이전에는 DM-Multipath에서 tapdev 장치에 다중 경로 장치를 생성하지 못했으며, 예기치 않은 경로 형식으로 인해 다중 경로 I/O의 대상이 될 수 없었습니다. 결과적으로 tapdev 장치 상단에 다중 경로 장치가 생성되면 시스템에서 tapdev 장치의 제거에 대한 세그먼트 오류로 multipathd가 종료되었습니다. 이번 업데이트를 통해 tapdev 장치가 기본적으로 블랙리스트에 추가되고 이 문제가 더 이상 발생하지 않을 수 있습니다.
기능 개선
- BZ#947798
- 이번 업데이트에서는 새로운 기본 키워드인 "reload_readwrite"를 /etc/multipath.conf 파일에 추가합니다. "yes"로 설정하면 multipathd가 경로 변경 이벤트를 수신 대기하고 경로에 대상 스토리지에 대한 읽기-쓰기 액세스 권한이 있는 경우 multipathd가 이를 다시 로드합니다. 이를 통해 모든 경로가 수동으로 개입하지 않고 스토리지에 대한 읽기-쓰기 액세스 권한이 있는 즉시 다중 경로 장치가 읽기-쓰기 권한을 자동으로 부여할 수 있습니다.
- BZ#916667
- multipathd 데몬에는 이제 경로의 추가 및 제거 시 로깅되는 메시지에 대한 경로의 이름과 함께 대상 SCSI 스토리지 장치의 메이저 및 마이너 번호가 포함됩니다. 이를 통해 특정 다중 경로 장치와 경로를 더 잘 연결할 수 있습니다.
- BZ#920448
- 다중 경로 장치의 일관성을 유지하기 위해 /etc/multipath/bindings 파일을 수동으로 편집한 경우에도 DM-Multipath에서 사용 가능한 가장 작은 사용자 친화적인 이름을 설정합니다. 가장 작은 사용자 친화적인 이름을 결정할 수 없는 경우 DM-Multipath는 이전 동작을 유지하고 다중 경로 장치 심볼릭 이름을 사용 가능한 가장 큰 이름으로 설정합니다.
- BZ#924924
- 새로운 기본 매개변수인 "replace_wwid_whitespace"가 /etc/multipath.conf 파일에 추가되었습니다. "yes"로 설정하면 기본 구성 섹션의 scsi_id 명령은 모든 SCSI 장치를 적용하기 위해 밑줄로 대체된 공백 문자가 있는 WWID를 반환합니다.
8.29. device-mapper-persistent-data
버그 수정
8.30. dhcp
8.30.1. RHBA-2013:1572 - dhcp 버그 수정 업데이트
버그 수정
- BZ#996518
- 이전 버전에서는 dhcpd 데몬 또는 dhclient 유틸리티가 별칭 인터페이스와 공유 네트워크가 정의된 InfiniBand 네트워크 인터페이스 카드(NIC)에서 시작할 때 세그먼트 오류로 예기치 않게 종료되었습니다. 결과적으로 dhcpd 및 dhclient를 InfiniBand NIC의 다른 서브넷의 별칭 인터페이스와 함께 사용할 수 없었습니다. 이 문제를 해결하기 위해 패치가 적용되었으며 이 시나리오에서는 dhcpd 또는 dhclient가 충돌하지 않습니다.
- BZ#902966
- 이번 업데이트 이전에는 range6 문에서 subnet6에서 선언한 서브넷 범위에 일부 IPv6 주소가 없는 경우 DHCPv6 서버에서 클라이언트 서브넷에서 없는 주소를 잘못 제공했습니다. range6 문 구문 분석 코드는 주소가 서브넷에 속하는지, range6 문이 선언되었는지 확인하도록 수정되었습니다. 이번 업데이트를 통해 range6 문이 올바르지 않으면 DHCPv6 서버가 오류 메시지로 시작되지 않습니다.
- BZ#863936
- 이전에는 dhcrelay가 IPv4 주소가 할당되지 않은 인터페이스를 통해 패킷을 수신한 경우 DHCPv4 릴레이 에이전트(dhcrelay)가 세그먼트화 결함으로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 dhcrelay는 수신된 패킷을 추가로 처리하기 전에 인터페이스에 할당된 주소가 있는지 확인하고 이 시나리오에서 릴레이 에이전트가 더 이상 충돌하지 않습니다.
- BZ#952126
- 이전 버전에서는 DHCPv6 클라이언트의 DHCPv6 요청이 임의의 포트 번호에서 온 경우 DHCPv6 서버에서 IPv6의 표준인 UDP 포트 546으로 보내는 대신 메시지의 소스 포트로 다시 응답을 전송했습니다. 결과적으로 클라이언트는 잘못된 포트에서 응답을 받았습니다. DHCPv6 서버 코드에서 응답 처리가 수정되었으며 서버는 이제 UDP 포트 546에 응답합니다.
- BZ#978420
- 이전에는OMAPI(Object Management API)를 통해 오브젝트를 조작할 때 dhcpd 데몬 관리 메모리 할당이 잘못 설정되었습니다. 그 결과 dhcpd에서 여러 메모리 누수가 확인되었습니다. 이번 업데이트를 통해 메모리 할당 관리가 수정되었으며 dhcpd에서 더 이상 이 시나리오에서 메모리를 유출하지 않습니다.
- BZ#658855
- 이번 업데이트 이전에는 dhclient 유틸리티에서 "next-server" 옵션이 포함된 리스를 얻을 때 dhclient에서 옵션을 dhclient-script 환경에 노출하지 않았습니다. 그 결과 NetworkManager에서 dhclient의 "next-server" 옵션을 사용할 수 없었습니다. 이 버그가 수정되어 이제 dhclient가 "next-server" 옵션을 올바르게 노출하고 NetworkManager는 dhclient의 리스에서 옵션을 사용할 수 있습니다.
- BZ#919221
- 이전에는 dhcpd 서버에서 두 개 이상의 키 문을 포함하는 영역 정의 구문 분석을 올바르게 처리할 수 없었습니다. 결과적으로 dhcpd는 내부 불일치에 대한 잘못된 오류 메시지를 반환했습니다. zone 문 구문 분석 코드가 수정되었습니다. dhcpd에서 보고한 오류 메시지가 이제 영역에 대한 여러 키 정의가 있음을 나타내는 이 시나리오에서 더 정확합니다.
- BZ#1001742
- 이전 버전에서는 dhclient 유틸리티가 여러 인터페이스를 사용하여 IPv6에서 실행 중일 때 마지막으로 시작된 인스턴스만 구성된 반면 다른 인스턴스는 임대 시간이 만료된 후 연결이 끊어졌습니다. 결과적으로 dhclient의 마지막 시작 인스턴스는 서버와 통신하지 못하는 동안 모든 DHCPv6 패킷을 수신했습니다. 이번 업데이트를 통해 dhclient가 지정된 인터페이스에 바인딩되고 dhclient의 여러 인스턴스가 올바르게 통신됩니다.
8.31. Dovecot
버그 수정
- BZ#1010279
- dovecot의 SSL 매개변수 생성기의 버그로 인해 FIPS 모드가 활성화된 Red Hat Enterprise Linux 6을 설치하면 dovecot 패키지를 설치할 때 응답하지 않을 수 있었습니다. 이 문제가 해결되어 이제 설명된 시나리오에서 설치가 성공적으로 완료됩니다.
8.32. dracut
보안 수정
- CVE-2012-4453
- dracut이 world readable로 initramfs 이미지를 생성했음을 알 수 있습니다. 로컬 사용자는 이 취약점을 악용하여 iSCSI 인증 암호, 암호화된 루트 파일 시스템 암호 또는 기타 정보와 같은 중요한 정보를 얻을 수 있습니다.
버그 수정
- BZ#610462
- 이전에는 mkinitrd 유틸리티에 사용자가 액세스할 수 있는 도움말 페이지가 없었습니다. 이번 업데이트에서는 mkinitrd(8) 매뉴얼 페이지가 추가되었습니다.
- BZ#720684
- 이전에는 dracut 유틸리티에서 "--yes" 옵션을 사용하여 "lvchange" 명령을 호출하지 않았습니다. 결과적으로 LVM 스냅샷을 부팅할 때 원래 논리 볼륨 이름(rd_LVM_LV)의 사양이 필요했습니다. 이번 업데이트를 통해 "--yes" 옵션을 사용하여 "lvchange"를 호출하고 LVM 스냅샷 부팅이 더 직관적으로 표시됩니다.
- BZ#857048
- 이번 업데이트 이전에는 dracut 유틸리티에서 모든 리디렉션을 따르지 않고 시스템에서 initramfs로 심볼릭 링크를 복사했습니다. 결과적으로 initramfs에 오래된 심볼릭 링크가 포함되어 시스템이 잘못 부팅될 수 있었습니다. 이 버그가 수정되었습니다. 이제 dracut이 심볼릭 링크 리디렉션을 올바르게 복사하고 initramfs에는 실제 시스템과 동일한 레이아웃이 포함되어 있으며 이 시나리오에서는 부팅 문제가 더 이상 발생하지 않습니다.
- BZ#886194
- dracut 유틸리티는 암호화 장치를 설정할 때 /etc/crypttab 파일의 모든 매개 변수를 고려하지 않았습니다. 결과적으로 /etc/crypttab의 옵션과 파일 이름은 initramfs에 영향을 미치지 않았습니다. 이번 업데이트를 통해 암호화 장치를 설정할 때 dracut은 옵션과 파일 이름을 cryptsetup 툴에 전달하고 /etc/cryppttab의 옵션과 파일이 올바르게 적용됩니다.
- BZ#910605
- 이전에는 dracut 유틸리티에서 iSCSI(Internet Small Computer System Interface)로 부팅하기 위해 커널 명령줄에 네트워크 구성이 필요했습니다. 결과적으로 네트워크 구성이 필요하지 않은 경우 iSCSI로 부팅할 수 없었습니다. 이제 커널 명령줄의 네트워크 구성 매개변수와 관계없이 dracut이 iSCSI 서비스를 시작하고 더 이상 설명되는 문제가 발생하지 않습니다.
- BZ#912299
- 이전에는 dracut 유틸리티에서 "GREP_OPTIONS" 환경 변수를 설정하지 않고 grep 툴을 사용했습니다. 그 결과 사용자가 yum을 호출하거나 dracut을 실행하는 동안 GREP_OPTIONS를 설정한 경우 임의의 옵션으로 인해 grep이 제대로 작동하지 않았습니다. 이번 업데이트를 통해 dracut은 이제 GREP_OPTIONS를 설정하지 않고 이 변수의 사용자 설정은 더 이상 dracut의 올바른 작업에 영향을 미치지 않습니다.
- BZ#916144
- 이번 업데이트 이전에는 루트 장치가 다중 경로 장치가 아니더라도 다중 경로 구성 파일이 항상 initramfs에 포함되었습니다. 결과적으로 관리자는 다중 경로 구성을 변경할 때 재부팅하기 전에 initramfs를 업데이트해야 했습니다. dracut 유틸리티는 루트 장치가 다중 경로 장치인 경우에만 다중 경로 구성을 포함하도록 수정되었습니다. 또한 관리자는 initramfs에서 사용되는 루트 장치의 구성을 분할할 수 있습니다. 현재 dracut은 다음을 인식합니다.
- /etc/multipath-root.conf
- /etc/multipath-root/*
- /etc/xdrdevices-root.conf
이러한 파일은 initramfs에서 다음과 같이 사용됩니다.- /etc/multipath.conf
- /etc/multipath/*
- /etc/xdrdevices.conf
관리자는 전체 구성을 복사하지 않으려면 루트 장치의 특정 다중 경로 구성만 initramfs에 포함되어 있는지 확인할 수 있습니다. - BZ#947729
- 이전 버전에서는 라이브 이미지에 커널의 Red Hat Enterprise Virtualization Hypervisor 패키지를 사용할 때 초기 부팅 중에 확인해야 하는 커널 경로가 올바르게 작동하지 않았습니다. 그 결과 FIPS(Federal Information Processing Standard) 모드에서 커널의 체크섬 테스트가 실패했으며 시스템이 부팅되지 않았습니다. 이번 업데이트를 통해 dracut-fips 모듈은 다른 경로에서 커널 이미지를 찾고 initramfs의 체크섬 파일이 있는 해당 경로를 확인합니다. 결과적으로 FIPS 모드에서 설치를 부팅하면 올바른 커널 이미지가 확인되고 체크섬이 올바르면 FIPS 모드에서 시스템이 계속 부팅됩니다.
- BZ#960729
- dracut 유틸리티는 initramfs 이미지에 xhci-hcd 커널 모듈을 포함하지 않았습니다. 결과적으로 커널은 초기 부팅 단계에서 USB 3.0 장치를 인식하지 못했으며 ystem은 USB 3.0 디스크에서 마운트할 수 없었습니다. 이번 업데이트를 통해 dracut에는 initramfs에 xhci-hcd 드라이버가 포함되어 있으며 시스템은 USB 3.0 디스크에서 부팅할 수 있습니다.
- BZ#1011508
- 이전 버전에서는 "biosdevname=1" 매개변수가 커널 명령줄에 지정되지 않은 경우 dracut 유틸리티에서 모든 시스템에서 biosdevname 네트워크 인터페이스 이름을 비활성화했습니다. 그 결과, Dell 시스템에서 initramfs에서 사용되는 인터페이스에는 부팅 프로세스에서 biosdevname 인터페이스 이름 변경이 활성화되어 있어도 자동 biosdevname 이름이 없었습니다. 이번 업데이트를 통해 매개변수가 "0"로 설정된 경우에만 dracut은 biosdevname을 비활성화합니다. Dell이 아닌 머신의 경우 biosdevname은 이제 "biosdevname=1"이 커널 명령줄에 지정된 경우에만 인터페이스의 이름을 바꾸고, Dell 머신에 initramfs에 이름이 지정된 biosdevname 인터페이스가 있습니다.
- BZ#1012316
- 이전에는 10GBaseT Twin Pond 어댑터에서 FcoE(Fibre Channel over Ethernet)를 활성화하는 데 필요한 시간이 너무 길었습니다. 그 결과 dracut에 의해 호출되는 fipvlan 유틸리티가 링크가 올 때까지 기다리는 과정에서 시간 초과되고 부팅에 실패했습니다. 이번 업데이트를 통해 링크가 표시될 때까지 30초 동안 대기하기 위해 fipvlan이 매개 변수를 사용하여 호출되고 문제가 더 이상 발생하지 않습니다.
- BZ#1018377
- 이전 버전에서는 dracut 유틸리티가 ldd 도구를 실행할 때 ldd는 cat의 SELinux 권한을 사용하여 출력을 표시하도록 cat 유틸리티로 출력을 전달했습니다. 그 결과 ldd가 출력을 cat으로 전달하여 cat이 출력을 추가로 전달했고 파이프 리더가 조기에 종료되면 cat은 "EPIPE" 신호를 수신하여 표준 오류 출력에 보고했습니다. 이번 업데이트를 통해 dracut은 ldd 호출의 표준 오류를 /dev/null 파일로 리디렉션하고 이 시나리오에서는 cat의 오류 메시지가 표시되지 않습니다.
기능 개선
- BZ#851666
- dracut 유틸리티는 initramfs에서 네트워크 인터페이스 본딩을 지원합니다. 본딩 매개변수는 다음 형식의 커널 명령줄에 지정할 수 있습니다.
bond=<bondname>[:<bondslaves>:[:<options>]]
이렇게 하면 <bondnames> 상단에 <bondname> 본딩 장치가 설정됩니다. 자세한 내용은 "modinfo bonding" 명령을 실행합니다. - BZ#1012626
- NIST(National Institute of Standards and Technology)에서는 FIPS 모듈을 암호화 시스템으로 정의해야 합니다. 따라서 이 업데이트에서는 dracut-fips rpm 패키지가 설치될 때 /etc/system-fips 파일 마커를 추가합니다. 라이브러리 및 애플리케이션에서 사용할 FIPS 제품 결정에 대한 안정적인 파일 위치를 제공합니다.
버그 수정
- BZ#1029844
- FIPS 모드에서 바이너리의 자체 검사는 /etc/system-fips 파일이 있는 경우에만 수행됩니다. 이번 업데이트 이전에는 dracut 유틸리티에서 초기 ram 파일 시스템(initramfs)의 /etc/system-fips 파일과 일부 체크섬 파일을 복사하지 않았습니다. 결과적으로 파티션의 암호를 해독하는 데 필요한 툴의 자체 검사가 수행되지 않았으며 도구가 예기치 않게 종료되었습니다. 이 버그가 수정되어 dracut이 initramfs에 필요한 모든 파일을 복사하며 암호화된 디스크가 있는 시스템을 FIPS 모드에서 성공적으로 부팅할 수 있습니다.
- BZ#1029846
- 라이브 ISO 이미지에서 FIPS 모드로 부팅할 때 dracut은 잘못된 위치에서 커널 이미지의 체크섬 파일을 검색합니다. 이로 인해 부팅 프로세스가 실패했습니다. 이번 업데이트를 통해 체크섬 파일의 경로가 수정되었으며 라이브 ISO 이미지가 이제 FIPS 모드에서 예상대로 부팅될 수 있습니다.
8.33. e2fsprogs
버그 수정
- BZ#922847
- 이전에는 e2fsck 유틸리티에서 범위 트리에서 겹치는 내부 또는 리프 노드와 관련된 불일치를 감지할 수 없었습니다. 그 결과 일부 ext4 범위의 트리 손상이 e2fsck에 의해 감지되거나 복구되지 않았지만 런타임 시 커널에 의해 감지되었습니다. 이번 업데이트를 통해 e2fsck는 예상대로 설명된 문제를 감지하고 복구할 수 있습니다.
- BZ#994615
- 이전에는 e2fsck 유틸리티에서 초기화되지 않은 확장 영역(EOF)이 유효하지 않은 것으로 잘못 감지되었습니다. 결과적으로 e2fsck는 EOF 이전의 사전 할당된 블록을 손상된 것으로 확인했습니다. 이 버그가 수정되었으며 e2fsck는 EOF 이전의 초기화되지 않은 확장 영역을 올바르게 식별합니다.
- BZ#873201
- resize2fs 유틸리티는 ext4 파일 시스템의 크기 조정을 더 작은 크기로 올바르게 처리하지 않았습니다. 결과적으로 크기 조정 프로세스 중에 이동하면 확장 영역이 포함된 파일이 손상될 수 있었습니다. 이번 업데이트를 통해 확장 영역이 포함된 파일을 이동할 때 resize2fs가 일관된 범위 트리를 유지 관리하며 이러한 파일은 더 이상 설명 된 시나리오에서 손상되지 않습니다.
- BZ#974975
- 이전에는 ext4 파일 시스템의 크기를 더 작은 크기로 조정할 때 resize2fs 유틸리티에서 inode를 올바르게 재배치하지 않았으며 비트맵을 차단했습니다. 결과적으로 비트맵이 새 파일 시스템 크기 내에서 이동되지 않으면 일부 파일 시스템이 손상되었습니다. 이 버그를 해결하기 위해 패치가 제공되었으며 resize2fs가 이제 설명된 시나리오에서 일관된 파일 시스템을 유지 관리합니다.
- BZ#885083
- 이전에는 e2fsck 유틸리티에서 파일 시스템 오류에 대한 정보를 올바르게 저장하지 못했습니다. 그 결과 저널의 항목이 파일 시스템 수퍼 블록으로 올바르게 전파되지 않은 경우가 있었습니다. 이 버그가 수정되었으며 e2fsck는 이제 모든 파일 시스템 오류를 예상대로 처리합니다.
- BZ#895679
- 이전에는 ext4 파일 시스템을 처리할 때 e2fsck 유틸리티에서 오류 로그를 지우지 않았습니다. 결과적으로 e2fsck는 자세한 오류 정보를 ext4 파일 시스템 수퍼 블록에 저장하고 마운트 시 주기적으로 반환했습니다. 이번 업데이트를 통해 e2fsck가 완료되면 오류 로그가 지워지고 중복 오류 메시지가 더 이상 반환되지 않습니다.
- BZ#927541
- 이번 업데이트 이전에는 filefrag 유틸리티에서 잘못된 범위 수를 보고한 경우가 있었습니다. 이 문제를 해결하기 위해 패치가 적용되었으며 이제 Extent가 올바르게 계산됩니다.
8.34. efibootmgr
버그 수정
- BZ#924892
- 이전에는 유효하지 않은 값이 "efibootmgr -o" 명령에 전달되면 명령에서 문제를 인식하지 못하고 잘못된 값을 다른 함수에 전달했습니다. 이로 인해 명령이 응답하지 않는 것과 같은 몇 가지 문제가 발생할 수 있습니다. 이번 업데이트를 통해 efibootmgr이 잘못된 입력을 테스트하도록 수정되었습니다. 결과적으로 앞서 언급한 시나리오에 오류 메시지가 표시됩니다.
8.35. Emacs
버그 수정
- BZ#678225
- Lucida Typewriter 및 Lucida Console 글꼴은 Red Hat Enterprise Linux 6의 Emacs 23.1에서 사용할 수 없었습니다. 그 결과 메시지 버퍼에 다음과 같은 오류 메시지가 "set-face-attribute: font not available"에 표시되었습니다. 이번 업데이트를 통해 이 시나리오에 오류 메시지가 표시되지 않으며 선택한 글꼴을 사용하여 버퍼 내용을 표시할 수 있습니다.
8.36. environment-modules
버그 수정
- BZ#918540
- environment-modules 패키지를 업데이트할 때 /usr/share/Modules/init/.modulespath 구성 파일의 변경 사항이 업그레이드로 자동 교체되었습니다. 이제 파일이 사양 파일에서 %config(noreplace)로 표시되므로 업데이트 사이에 유지됩니다.
- BZ#929007
- csh 및 tcsh의 환경 스크립트는 PATH 변수를 지정하지 않고 "test" 명령을 사용했습니다. 대신 "test"라는 사용자 바이너리가 실행될 수 있으므로 예기치 않은 동작이 발생할 수 있습니다. 이번 업데이트를 통해 "테스트" 바이너리가 전체 경로에 의해 호출됩니다. 임의의 테스트 바이너리를 호출하여 발생하는 오류 발생은 더 이상 불가능합니다.
- BZ#953198
- environment-modules 패키지를 업데이트할 때 /etc/profile.d의 환경 스크립트를 변경하는 것은 유지되지 않았습니다. 이번 업데이트를 통해 해당 스크립트는 구성 스크립트로 표시되어 업데이트 간에 유지됩니다.
8.37. esc
8.37.1. RHBA-2013:1698 - esc 버그 수정 업데이트
버그 수정
- BZ#920826
- ESC 유틸리티는 XULRunner 런타임 환경의 최신 17 시리즈 릴리스가 시스템에 설치되었을 때 시작되지 않았습니다. 이 업데이트에는 ESC가 최신 버전의 XULRunner에서 예상대로 작동하도록 하는 데 필요한 변경 사항이 포함되어 있습니다.
- BZ#961582
- ESC 유틸리티는 카드를 삽입할 때 수동으로 또는 자동으로 시작할 수 있습니다. 이전 버전에서는 ESC가 자동으로 시작될 때 ~/.redhat/ 디렉터리가 생성되고 읽기, 쓰기, 실행 권한으로 부여되었습니다. 그러나 이 디렉터리 내의 일부 파일에는 읽기 및 쓰기 권한만 있었습니다. 이 불일치가 이 업데이트로 수정되었으며 이제 설명된 시나리오에서 권한이 올바르게 설정됩니다.
- BZ#981156
- esc.desktop 파일의 버그로 인해 /var/log/messages/ 디렉터리에 오류 메시지가 기록되었습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하고 오류 메시지가 더 이상 반환되지 않습니다.
8.38. 진화
보안 수정
- CVE-2013-4166
- 이메일을 암호화할 때 Evolution이 GnuPG 공개 키를 선택한 방식에서 취약점이 발견되었습니다. 이로 인해 이메일이 의도된 수신자에 속하는 키가 아닌 다른 공개 키로 암호화될 수 있습니다.
버그 수정
- BZ#665967
- Exchange Cryostat는 Microsoft Exchange 2010 서버를 사용할 때 회의 회의에 대한 "Free" 및 "Busy" 정보를 가져올 수 없어 이 정보를 표시할 수 없습니다. 이는 Microsoft Exchange 2010 서버가 "Free" 및 "Busy" 정보에 대해 더 엄격한 규칙을 사용하기 때문에 발생했습니다. 이번 업데이트를 통해 openchange 패키지의 각 코드가 수정되어 "Free" 및 "Busy" 정보가 수정되어 Microsoft Exchange 2010 서버에서 가져오는 규칙을 준수합니다. 이제 "Free" 및 "Busy" 정보가 이제 Exchange Cryostat에서 예상대로 표시될 수 있습니다.
8.39. fcoe-target-utils
버그 수정
- BZ#854708
- 사용 중으로 표시된 장치를 오류가 발생하기 때문에 이전에 매핑된 블록 백 저장소를 매핑하려고 하면 실패했습니다. 이번 업데이트를 통해 블록 백 저장소의 매핑이 올바르게 해제되고 블록 장치를 다시 매핑합니다.
- BZ#880542
- 이번 업데이트 이전에는 fcoe-target 데몬이 중지되면 커널이 예기치 않게 종료되었습니다. 이 버그를 해결하기 위해 패치가 제공되었으며 이제 커널이 더 이상 충돌하지 않습니다.
- BZ#882121
- 이전에는 대상이 시퀀스 수준 오류 복구를 잘못 지원했다고 보고했습니다. 결과적으로 FCoE 대상과 bnx2fc 이니시에이터 간의 연결을 중단하면 이니시에이터가 교환 수준 오류 대신 시퀀스 수준 오류 복구를 잘못 수행하여 대상에 연결된 모든 장치가 실패할 수 있습니다. 이 버그는 수정되었으며 다른 장치를 중단하지 않고 bnx2fc 이니시에이터와의 연결이 중단될 수 있습니다.
- BZ#912210
- 이번 업데이트 이전에는 python-rtslib 라이브러리에 오류가 발생했습니다. 결과적으로 Cryostat 유틸리티에서 pscsi(SCSI 패스스루) 스토리지 오브젝트를 생성할 때 python-rtslib에서 역추적을 반환했습니다. 라이브러리의 오류가 수정되었으며 이제 pscsi 스토리지 오브젝트가 오류 없이 생성됩니다.
- BZ#999902
- fcoe-utils 명령줄 인터페이스는 fcoe-target-utils 패키지에 필요하며 s390x 아키텍처에서 지원되지 않기 때문에 fcoe-target-utils는 s390x에서 제대로 작동하지 않으므로 제거되었습니다.
8.40. fCoE-utils
버그 수정
- BZ#903099
- 커널의 버그로 인해ixbge 어댑터를 사용하는 동안 N_Port ID Virtualization(NPIV) 포트를 제거하면 fcoe service init 스크립트가 종료 시 응답하지 않을 수 있었습니다. 연결된 가상 포트를 먼저 제거하기 위해 init 스크립트 패치가 적용되었으며 설명된 시나리오에서 fcoe 서비스가 더 이상 중단되지 않습니다.
기능 개선
- BZ#981062
- readme 파일이 Red Hat Enterprise Linux 6의 기본 설치에서 파일 시스템 자동 완성 기능이 활성화되어 있음을 명확히 설명하여 업데이트되었습니다.
8.41. febootstrap
버그 수정
- BZ#902478
- 이전에는 "-g" 옵션과 함께 febootstrap-supermin-helper를 사용할 때 명령에서 추가 그룹을 올바르게 설정하지 않았습니다. 그 결과 libguestfs를 실행하는 사용자의 일부 그룹이 어플라이언스 빌드 프로세스에 유출되었습니다. 이번 업데이트 후 추가 그룹이 올바르게 설정됩니다.
8.42. fence-agents
버그 수정
- BZ#872308
- 이전에는 차단 에이전트 설명서에서 fence_ipmilan 에이전트를 펜싱 장치 HP iLO 3에 사용하는 방법을 언급하지 않았습니다. 이번 업데이트에서는 fence_ipmilan(8) 매뉴얼 페이지에 이 정보가 추가되었습니다.
- BZ#896603
- 이전에는 차단 에이전트 fence_cisco_ucs에서 "delay" 속성을 준수하지 않았습니다. 이 버그는 수정되었으며 fence_cisco_ucs가 예상대로 적절한 시간을 기다립니다.
- BZ#978325
- 이전에는 펜스 에이전트 fence_cisco_ucs에서 로그인 프로세스 중에 적절한 시간 초과를 사용하지 않아 로그인에 영향을 미칠 수 있었습니다. 이번 업데이트를 통해 이 시간 초과는 올바르게 설정되며 표준 구성 방법을 통해 사용자가 사용자 지정할 수 있습니다.
- BZ#978326
- 이전에는 호스트 이름을 IP 주소로 확인할 수 없는 경우 fence_cisco_ucs가 역추적 오류로 실패했습니다. 이번 업데이트를 통해 fence_cisco_ucs가 적절한 오류 메시지와 함께 종료됩니다.
- BZ#978328
- 이전에는 fence_scsi에서 pacemaker "unfence" 작업에 올바른 메타데이터를 제공하지 않았습니다. 이번 업데이트를 통해 "비결" 작업은 로컬 노드에서만 실행할 수 있습니다.
- BZ#912773, BZ#994186
- 이전에는 fence_scsi에서 "delay" 속성을 준수하지 않았습니다. 이 버그가 수정되었으며 fence_scsi가 적절한 시간을 기다립니다. 결과적으로 2-노드 클러스터의 노드는 더 이상 서로 펜싱할 수 없습니다.
- BZ#959490
- 이전 버전에서는 "-ssh" 옵션과 함께 fence_bladecenter 에이전트를 사용할 때 차단 에이전트에 "--password" 또는 "--identity-file" 옵션도 필요했습니다. 그러나 이 동작은 문서화되지 않았습니다. 결과적으로 "-ssh" 옵션과 함께 fence_bladecenter를 사용하는 경우 fence_bladecenter가 너무 일반적이라는 오류 메시지와 함께 실패했습니다. 이 버그는 수정되었으며 fence_bladecenter가 연결에 실패하면 더 구체적인 오류 메시지가 표시됩니다.
- BZ#887349
- 이전에는 fence_scsi(8) 매뉴얼 페이지에 fence_scsi가 클러스터 환경에서 제대로 작동하는 데 필요한 "비효" 작업이 표시되지 않았습니다. 이번 업데이트를 통해 클러스터 환경의 "unfence"에 대한 정보가 포함된 주석이 fence_scsi(8) 도움말 페이지에 추가되었습니다.
- BZ#902404
- 이전 버전에서는 fence_soap_vmware 차단 에이전트를 사용하여 Red Hat Enterprise Linux 클러스터 노드를 펜싱할 때 IP 주소의 호스트 이름을 확인할 수 없는 경우 에이전트는 역추적으로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 설명된 시나리오에 적절한 오류 메시지가 표시됩니다.
- BZ#905478
- SSH 연결 중에 줄 바꿈 문자에서 잘못된 감지로 인해 Red Hat Enterprise Linux 클러스터 노드를 펜싱할 때 fence_drac5 에이전트가 역추적 연결을 종료할 수 있었습니다. 첫 번째 펜싱 작업만 성공적으로 완료되었지만 노드의 상태를 올바르게 확인하지 못했습니다. 결과적으로 펜스 에이전트가 성공적으로 펜싱을 보고하지 못했습니다. "reboot" 작업이 호출되면 노드의 전원이 꺼졌습니다. 이번 업데이트를 통해 줄 바꿈 문자가 올바르게 감지되고 펜싱이 예상대로 작동합니다.
- BZ#981086
- 이전에는 fence_ipmilan(8) 매뉴얼 페이지의 fence_ipmilan "lanplus" 옵션에 대한 설명이 불완전했습니다. 이번 업데이트에서는 "lanplus" 옵션에 대한 설명이 개선되고 보안에 미치는 영향에 대한 정보가 포함되어 있습니다.
- BZ#1014000
- 이전에는 VMware 차단 에이전트에서 안전하지 않은 임시 디렉터리를 사용하여 로컬 공격자가 차단 에이전트를 실행하는 요인에 의해 임의의 로컬 파일을 덮어쓰는 데 사용할 수 있었습니다. 이번 업데이트에서는 심볼릭 링크 공격(CVE-2013-2217)에 취약한 python-suds 라이브러리에 대한 종속성을 제거하고 VMware 차단 에이전트는 이제 mkdtemp를 사용하여 고유한 임시 디렉터리를 생성합니다.
기능 개선
8.43. fence-virt
버그 수정
- BZ#883588
- 이전에 fence_virt(8) 및 fence_xvm(8) 도움말 페이지에 대한 각 gzip 파일이 이전에 모든 사용자에 대한 실행 가능 권한으로 생성되었으며 이는 올바르지 않습니다. 이 문제는 수정되었으며 이러한 파일은 이제 644 권한으로 올바르게 생성됩니다.
- BZ#903172
- fence_virt 펜싱 에이전트의 버그로 인해 에이전트가 가상 인터페이스 내의 직렬 채널을 사용하여 fence_virtd 데몬에서 펜싱할 수 있는 가상 머신이 나열되지 않을 수 있습니다. 이는 클러스터 노드에서 fence_virtd 데몬을 시작한 후 가상 머신이 시작되거나 실시간 마이그레이션될 때 발생했습니다. 버그가 수정되었으며 fence_virt가 이 시나리오에서 가상 머신이 예상대로 나열됩니다.
8.44. firstboot
버그 수정
- BZ#876018
- 2 버튼 대화 상자에 대한 응답을 처리하는 코드는 사용자에게 버튼 중 하나를 클릭하라는 메시지를 표시합니다. 닫기 버튼을 클릭하거나 Escape 키를 누른 후 응답이 무시되고 Red Hat Enterprise Linux 6의 EULA(최종 사용자 라이센스 계약)에 동의하지 않은 후에도 설치 후 프로세스가 계속되었습니다. 이번 업데이트를 통해 대화 상자를 닫고 기본 화면을 유지하도록 코드가 수정되었습니다. 결과적으로 닫기 버튼을 클릭하거나 Escape 키를 누르면 예상대로 작동합니다.
8.45. Foomatic
버그 수정
8.46. fprintd
버그 수정
- BZ#1003940
- PAM(Pluggable Authentication Module) 구성에 pam_fprintd 모듈이 포함된 경우 PAM은 dlclose() 함수가 실행되는 glib2 함수를 사용하여 glib2 라이브러리를 언로드합니다. 그러나 이 방법은 다중 스레드 애플리케이션을 위해 설계되지 않았습니다. PAM 작업이 생성되면 Red Hat Enterprise Linux 6의 Directory Server는 종료 단계에서 예기치 않게 종료되었습니다. 이는 이전에 fprintd 서비스에 의해 언로드된 glib2 destructor를 언로드하려고 하기 때문입니다. 이번 업데이트에서는 pam_fprintd 가 닫힐 때 fprintd가 더 이상 glib2를 언로드하지 않도록 패치를 적용합니다. 결과적으로 Directory Server가 닫히고 서버가 정상적으로 종료되면 glib2 라이브러리가 언로드됩니다.
8.47. freeipmi
버그 수정
- BZ#616846, BZ#715605
- 이번 업데이트 이전에는 ipmidetectd 데몬에서 입력 명령줄 매개변수를 완전히 검증하지 않았습니다. 결과적으로 ipmidetectd는 잘못된 명령줄 옵션을 구문 분석할 때 세그먼트 오류를 사용하여 예기치 않게 종료되었습니다. 이번 업데이트를 통해 ipmidetectd는 명령줄 입력을 올바르게 검증하므로 이 경우 더 이상 충돌하지 않습니다.
- BZ#818168
- 이전에는 bmc-watchdog 데몬이 PID 파일을 생성하지 않았으며 PID 번호를 파일에 쓰지 않았습니다. 그 결과 누락된 PID 값에 따른 도구가 올바르게 작동하지 않았습니다. 이 버그가 수정되어 PID 번호가 생성된 PID 파일에 저장되고 설명된 문제가 더 이상 발생하지 않습니다.
8.48. FTP
8.48.1. RHBA-2013:0845 - ftp 버그 수정 업데이트
버그 수정
- BZ#861113
- 이번 업데이트 이전에는 승격된 권한이 있는 쉘에서 FTP 클라이언트를 사용할 때( su 또는 sudo 유틸리티를 통해) 사용자가 클라이언트를 시작하는 대신 원래 로그인의 UID를 잘못 가정했습니다. 그 결과 로컬 홈 디렉터리가 올바르지 않았습니다. 이번 업데이트를 통해 getpwuid Cryostat 유틸리티 함수 호출을 사용하여 로그인 인증 정보를 올바르게 가져오도록 기본 코드가 수정되었습니다. 이제 로컬 홈 디렉터리가 클라이언트를 실행하는 사용자에 따라 설정됩니다.
8.49. gcc
버그 수정
- BZ#906234
- 읽기 토큰의 작은 로컬 버퍼로 인해 GCC (GNU Compiler Collection)는 프로그램에서 digraphs를 읽을 때 스택 스미시링 보호기를 트리거 할 수 있습니다. 버퍼가 확대되어 메모리 손상을 주지 않고 digraph 토큰을 읽을 수 있습니다.
- BZ#921758
- 이전에는 "va_list" 멤버 필드가 포함된 구조를 포함하는 C++ 코드를 컴파일할 때 GCC가 예기치 않게 종료될 수 있었습니다. 이러한 구조의 초기화가 수정되었으며 GCC는 더 이상 이러한 코드에 충돌하지 않습니다.
- BZ#959564
- 이번 업데이트 이전에는 "__attribute__(ms_abi)" 주석이 달린 함수의 스택을 축소 해제할 때 libgcc 유틸리티가 예기치 않게 종료될 수 있었습니다. 이 버그는 알 수 없는 열 번호에 대한 unwind 데이터를 무시하여 수정되었으며 libgcc가 더 이상 충돌하지 않습니다.
- BZ#967003
- 이전에는 debug 문을 처리할 때 GCC가 예기치 않게 종료될 수 있었습니다. 이 버그는 이러한 디버그 문에서 변수에 바인딩된 값을 제거하여 수정되었으며 GCC는 설명된 시나리오에서 더 이상 충돌하지 않습니다.
기능 개선
- BZ#908025
- GCC는 이제 인라인 어셈블러 코드 내에서 중괄호와 세로 막대가 있는 문자열을 지원합니다. 즉, '{', '}', '|' 앞에 '%' 기호를 붙일 수 있습니다. 이 경우 전화 구분 기호로 처리되지 않고 대신 어셈블러로 직접 전달됩니다.
8.50. gdm
8.50.1. RHBA-2013:1708 - gdm 버그 수정 업데이트
버그 수정
- BZ#712959
- 기본 디스플레이 관리자로KDM(KDM)을 설정하는 동안 GNOME을 사용하여 시스템에 로그인하면 사용자가 중단되는 경우가 있습니다. 그 결과 Applet를 다시 로드하지 않으면 사용자를 전환할 수 없었습니다. 기본 코드가 여러 대기열의 사용자 정보의 개입을 방지하기 위해 수정되어 이 시나리오에서 사용자-스위치 히트릿이 더 탄력적으로 충돌할 수 있습니다.
- BZ#759174
- 이전에는 GDM이 XDMCP(X Display Manager Control Protocol) 간접 쿼리를 적절한 시스템의 올바른 포트에 전달하지 않았습니다. 결과적으로 GDM 호스트 선택기가 제대로 작동하지 않았으며 XDMCP 연결을 설정할 수 없었습니다. 이번 업데이트를 통해 이제 XCDMCP 쿼리를 리디렉션할 때 GDM에서 올바른 포트를 사용하고 선택한 원격 호스트를 사용하여 예상대로 XDMCP 연결을 설정할 수 있습니다.
- BZ#785775, BZ#865832
- 이전에는 GDM에서 일부 사용자가 메시지를 읽을 수 없도록 충분하지 않은 기간 동안 로그인 메시지를 표시했습니다. 이번 업데이트에서는 로그인 시 표시되는 메시지인 시간 기간이 최소 3초로 증가합니다.
- BZ#795920
- 이전에 GDM은 "/var/cache/gdm/$USERNAME/" 디렉터리에 있는 drmc 파일의 캐시된 사본을 읽기 전에 "~/.dmrc" 파일의 내용을 참조하지 않았습니다. 이 동작으로 인해 네트워크 마운트된 홈 디렉토리를 사용하는 환경에서 기본 그래픽 데스크탑 세션 또는 언어와 같이 잘못된 사용자 환경 설정이 발생할 수 있습니다. 이는 "~/.dmrc"에 대한 변경 사항이 "~/.dmrc" 파일을 수정하기 전에 사용자가 로그인 및 로그아웃한 머신에는 영향을 미치지 않았기 때문입니다. 이번 업데이트를 통해 GDM은 사용자 환경 구성에 대한 업데이트가 적용되도록 "/var/cache/gdm/$USERNAME/dmrc" 전에 "~/.dmrc"를 읽습니다.
- BZ#818074
- 사용자가 이미 활성 세션으로 전환하면 GDM은 임시 내부 리소스를 두 번 정리하려고 했습니다. 이로 인해 시스템 로그에 잘못된 오류 메시지가 기록되었습니다. GDM이 해당 리소스를 올바르게 정리하도록 기본 코드가 수정되었습니다.
- BZ#844004
- PreSession 쉘 스크립트가 실패하면 사용자가 시스템에 대한 로그인이 거부될 것으로 예상됩니다. GDM은 이전에 PreSession 실패를 무시했기 때문에 사용자가 시스템에 대한 무단 로그인을 진행할 수 있었습니다. 이번 업데이트에서는 GDM이 PreSession 스크립트 실패 시 로그인 프로세스가 실패하도록 이 동작이 수정되었습니다.
- BZ#861114
- GDM은 인증 메시지의 길이에 따라 로그인 창의 너비를 조정했습니다. 인증 메시지가 매우 길면 로그인 창이 불합리하게 넓혀 표시되는 화면에서 텍스트가 표시됩니다. 이번 업데이트를 통해 긴 인증 메시지가 자동으로 래핑되므로 로그인 창이 예상 크기를 유지하고 메시지가 올바르게 표시됩니다.
- BZ#874202
- 사용자가 시스템에서 로그아웃하거나 실행 수준을 전환하면 gdm-smartcard-worker 확장 기능이 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트에서는 gdm-smartcard-worker 가 정상적으로 작동되도록 GDM을 수정합니다.
- BZ#874707
- GDM 기본 Cryostater는 LANG 환경 변수를 표준 형식으로 설정하지 않았습니다. 결과적으로 Mac OS X 시스템을 포함하는 네트워크와 같은 혼합 환경 배포에서 LANG 인코딩이 비 Linux 시스템에서 올바르게 인식되지 않았습니다. 이번 업데이트에서는 GDM이 환경 변수를 표준 형식으로 설정합니다.
- BZ#953552
- gdm-smartcard-worker 확장은 스마트 카드 지원 없이 시스템이 시작된 경우 시작 시 세그먼트 오류로 예기치 않게 종료되었습니다. 이 시나리오에서 gdm-smartcard-worker 의 각 코드가 수정되어 GDM 확장이 더 이상 충돌하지 않습니다.
- BZ#977560
- "disable_user_list=True" 옵션과 함께 스마트 카드 인증 방법을 사용하는 경우 사용자가 다른 인증 방법을 사용하여 성공적으로 로그인할 때까지 잘못된 PIN을 입력하면 추가 스마트 카드 로그인이 비활성화됩니다. 이번 업데이트에서는 이 경우 대화 상자 창을 적절히 재설정하고 사용자가 스마트 카드 인증 시도를 반복할 수 있습니다.
- BZ#1006947
- IBM S/390 시스템에서 level 5로 부팅할 때 GDM은 X 서버를 시작할 수 없다는 경고 메시지를 전송했으며 이는 무해했지만 사용자에게 혼란을 줄 수 있습니다. 기본 GDM 코드는 더 이상 IBM S/390 시스템에서 X 서버를 시작하지 않도록 수정되었으며 메시지는 더 이상 시스템 로그에 기록되지 않습니다.
8.51. gegl
8.51.1. RHBA-2013:1021 - gegl 버그 수정 업데이트
버그 수정
- BZ#620378
- 문서 파일이 실행 파일이 설치되었습니다. 결과적으로 해당 구성으로 인해 테스트 도구가 실패했습니다. 이 버그를 해결하기 위해 문서 파일에서 실행 비트가 제거되었으며 테스트 도구가 이제 설명된 시나리오에서 예상대로 작동합니다.
8.52. Ghostscript
버그 수정
- BZ#893775
- CID 키 유형 2 글꼴을 복사하는 기능의 버그로 인해 문서 변환 시도로 인해 ps2pdf 유틸리티가 세그먼트 오류로 예기치 않게 종료되는 경우가 있었습니다. 이 버그를 해결하기 위해 패치가 제공되어 기능이 제대로 글꼴을 복사하며 문서를 변환할 때 ps2pdf가 더 이상 충돌하지 않습니다.
- BZ#916162
- JBIG2 인코딩 리전의 TPGDON 옵션이 지원되지 않아 일부 PDF 파일이 올바르게 표시되지 않았습니다. 이제 TPGDON 옵션을 사용하는 PDF 파일이 올바르게 표시되도록 이 지원을 추가하기 위한 패치가 제공되었습니다.
- BZ#1006165
- 이전 버전에서는 ASCII base-85 인코딩 이미지가 불완전한 일부 PDF 파일로 인해 유스트립트 유틸리티가 다음 오류로 인해 종료되었습니다./SyntaxError in ID이 문제는 이미지가 PDF 사양에 정의된 대로 "~>"("~>"(틸드, 올바른 각 브래킷) 대신 "~"로 종료되면 문제가 발생했습니다. 이 인코딩이 부적절한 인코딩이지만 업스트림 패치가 적용되었으며 유스트로더는 이제 오류 없이 이러한 PDF 파일을 처리합니다.
8.53. glib2
8.54. glibc
libc
), POSIX 스레드 라이브러리(libpthread), 표준 math 라이브러리(libm
) 및 Name Server Caching Daemon(nscd
)을 제공합니다. 이러한 라이브러리가 없으면 Linux 시스템이 올바르게 작동하지 않습니다.
보안 수정
- CVE-2013-4332
- 힙 기반 버퍼 오버플로로 이어지는 여러 정수 오버플로 결함이 glibc의 메모리 할당 함수(pvalloc, valloc, memalign)에서 발견되었습니다. 애플리케이션에서 이러한 기능을 사용한 경우 애플리케이션이 충돌하거나 애플리케이션을 실행하는 사용자의 권한으로 임의의 코드를 실행할 수 있습니다.
- CVE-2013-0242
- 여러 바이트 문자 입력을 처리하는 루틴과 일치하는 정규식에서 취약점이 발견되었습니다. 애플리케이션이 glibc 정규식 일치 메커니즘을 활용하는 경우 공격자가 처리 시 애플리케이션이 충돌하도록 특별히 생성된 입력을 제공할 수 있습니다.
- CVE-2013-1914
- getaddrinfo()가 이름을 확인하는 동안 사용된 스택 메모리 양을 제한하지 않는다는 것을 발견했습니다. 공격자는 애플리케이션이 공격자가 제어하는 호스트 이름 또는 IP 주소를 확인하도록 할 수 있으므로 애플리케이션이 모든 스택 메모리를 소모하고 충돌할 수 있습니다.
버그 수정
- BZ#1022022
- Red Hat Enterprise Linux 6.0, AF_INET 및 AF_INET6 쿼리에서 getaddrinfo() 시스템 호출의 초기 릴리스의 결함으로 인해 /etc/hosts 파일에서 쿼리된 이름을 표준 이름으로 반환했습니다. 그러나 이 잘못된 동작은 여전히 예상되는 동작으로 간주됩니다. getaddrinfo()의 최근 변경으로 AF_INET6 쿼리가 정식 이름을 올바르게 해석하기 시작했습니다. 그러나 이 동작은 /etc/hosts 파일에서 확인된 쿼리에 의존한 애플리케이션에 의해 예기치 않게 수행되었으며 이러한 애플리케이션이 제대로 작동하지 않을 수 있었습니다. 이번 업데이트에서는 /etc/hosts에서 확인된 AF_INET6 쿼리가 항상 쿼리된 이름을 정식으로 반환하도록 수정 사항을 적용합니다. DNS 조회가 올바르게 확인되고 항상 올바른 정식 이름을 반환합니다. /etc/hosts의 AF_INET6 쿼리 확인이 향후 릴리스에 적용될 수 있습니다. 이제 Red Hat은 표준이 부족하여 /etc/hosts 파일의 첫 번째 항목을 제안합니다. 이 항목은 표준 항목으로 간주되기 위해 적용되는 /etc/hosts 파일에 적용됩니다.
- BZ#552960
- AMD64, Intel 64 및 Intel P6 아키텍처의 pthread_cond_wait() 및 pthread_cond_timedwait() 함수에는 몇 가지 동기화 버그가 포함되어 있습니다. 결과적으로 다중 스레드 프로그램이 우선 순위 상속된 뮤지션을 사용하여 조건 변수에 대한 액세스를 동기화하면 일부 스레드가 pthread_cond_signal() 함수에 의해 발생하거나 취소되었을 때 교착 상태 상황을 입력할 수 있었습니다. 이번 업데이트에서는 이러한 동기화 버그가 수정되어 설명된 시나리오에서는 스레드 교착 상태가 더 이상 발생하지 않을 수 있습니다.
- BZ#834386
- C 라이브러리 보안 프레임워크는 특정 가상 주소에 로드될 때 동적으로 로드된 문자 변환 루틴을 처리할 수 없었습니다. 이로 인해 동적으로 로드된 문자 변환 루틴을 사용하려는 경우 세그먼트 오류로 인해 예기치 않은 종료가 발생했습니다. 이번 업데이트에서는 모든 가상 메모리 주소에서 동적으로 로드된 문자 변환 루틴을 처리하기 위해 C 라이브러리 보안 프레임워크가 개선되고, 설명된 시나리오에서는 충돌이 더 이상 발생하지 않습니다.
- BZ#848748
- 표준 C 라이브러리의 결함으로 인해 라이브러리는 바인딩되지 않은 양의 메모리를 할당하고 손상된 NIS 요청을 처리할 때 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 NIS 레코드의 크기를 최대 16MB로 제한하도록 표준 C 라이브러리가 수정되었으며 이 상황에서 라이브러리가 더 이상 충돌하지 않습니다. 그러나 이러한 맵이 최대 16MB를 초과하면 NIS 맵이 있는 일부 구성이 더 이상 작동하지 않을 수 있습니다.
- BZ#851470
- 이전에는 ttyname() 및 ttyname_r() 라이브러리 호출에서 proc(/proc/) 파일 시스템이 마운트되지 않은 경우 오류를 반환했습니다. 결과적으로 특정 애플리케이션이 chroot 환경에서 제대로 실행되지 못했습니다. 이번 업데이트를 통해 ttyname() 및 ttyname_r() 호출에서 /proc/self/fd/ 디렉터리를 읽을 수 없는 경우 오류를 즉시 반환하지 않고 시스템에서 알려진 장치(/dev 및 /dev/pts 디렉터리)에서 각 터미널의 이름을 가져오려고 합니다. chroot 환경에서 실행되는 애플리케이션이 이제 예상대로 작동합니다.
- BZ#862094
- 표준 C 라이브러리의 결함으로 인해 malloc() 함수로 할당되지 않은 메모리를 해제하려고 했습니다. 결과적으로 동적 로더가 기본이 아닌 디렉터리를 검색하는 데 필요한 공유 라이브러리를 로드할 때 동적 로더가 예기치 않게 종료될 수 있었습니다. 동적 로더는 malloc()을 사용하여 할당되지 않았으며 이 상황에서 더 이상 충돌하지 않는 메모리에 대해 free() 루틴을 호출하지 않도록 수정되었습니다.
- BZ#863384
- getaddrinfo() 확인자 시스템 호출의 결함으로 인해 getaddrinfo()는 특정 조건에서 FQDN(정규화된 도메인 이름)이 요청되었을 때 FQDN(정규화된 도메인 이름)이 아닌 결과를 반환할 수 있습니다. FQDN 결과가 예상되는 getaddrinfo()를 사용하는 애플리케이션이 올바르게 작동하지 않을 수 있습니다. FQDN 결과를 요청할 때 FQDN 결과를 반환하도록 해결기가 수정되었으며 AI_CANONNAME 플래그가 설정됩니다.
- BZ#868808
- 호출 스택에 재귀 함수 호출이 포함된 경우 backtrace() 함수가 AMD64 및 Intel 64 아키텍처에서 호출 프레임을 올바르게 출력하지 않았습니다. 이번 업데이트에서는 backtrace()가 호출 프레임을 예상대로 출력하도록 이 동작이 수정되었습니다.
- BZ#903754
- 디버그 정보에는 이전에 혼동을 일으킬 수 있는 "fedora"라는 이름이 포함되어 있으며 Fedora 관련 패키지에 대해 오류가 발생할 수 있습니다. 이러한 혼동을 방지하기 위해 디버그 정보에 더 이상 "fedora"라는 이름이 포함되지 않도록 패키지 빌드 프레임워크가 변경되었습니다.
- BZ#919562
- 스레드 로컬 스토리지 변수를 사용한 동적 라이브러리를 열고 사용하는 프로그램은 스레드 로컬 스토리지를 사용하는 모듈에서 감사할 때 세그먼트 오류로 예기치 않게 종료될 수 있습니다. 이번 업데이트에서는 동적 링커를 수정하여 이러한 조건을 감지하고 설명된 시나리오에서 충돌을 더 이상 발생하지 않습니다.
- BZ#928318
- /etc/resolv.conf 파일이 시스템에서 누락되었거나 네임서버 항목이 포함되어 있지 않은 경우 로컬 DNS 서버로 DNS 쿼리를 보내는 대신 getaddrinfo()가 실패했습니다. 이 버그가 수정되었으며 getaddrinfo()가 이 상황에서 로컬 DNS 서버를 쿼리합니다.
- BZ#929388
- exp(), exp2(), expf(), exp2f(), pow(),fe(), tan() 및 rint()를 포함한 다양한 수학적 기능의 논리 오류를 방지하기 위한 이전 수정으로 특정 입력에 대한 CPU 성능 회귀를 생성했습니다. 성능 회귀가 분석되었으며 코어 루틴은 CPU 성능을 예상 수준으로 높이기 위해 최적화되었습니다.
- BZ#952422
- 이전에는 QReadWriteLocks 잠금 메커니즘을 사용하는 다중 스레드 애플리케이션이 로드가 많은 성능 문제가 발생할 수 있었습니다. 이는 Qt 라이브러리에서 반복적으로 호출된 비효율적으로 설계된 sysconf() 함수로 인해 발생했습니다. 이번 업데이트에서는 _SC_NPROCESSORS_ONLN 변수의 값을 캐싱하여 sysconf()의 glibc 구현을 개선하여 시스템이 /stat/proc 파일을 구문 분석하여 더 이상 광범위한 시간을 소비하지 않습니다. 앞서 언급한 애플리케이션의 성능과 _SC_NPROCESSORS_ONLN 값을 반복적으로 요청하는 애플리케이션이 크게 개선되어야 합니다.
- BZ#966775
- RHBA-2013:0279 권고에서 도입한 math 라이브러리의 부동 소수점 기능의 정확성을 개선하여 이러한 기능의 성능 저하를 초래했습니다. 이번 업데이트를 통해 성능 손실 회귀가 분석되고 현재 정확성을 유지하는 수정 사항이 적용되었지만 허용 가능한 수준에 대한 성능 저하가 줄어듭니다.
- BZ#966778
- 사용자 그룹이 NIS 서버에서 유지 관리되고 NIS 호환성 인터페이스를 통해 쿼리된 경우 많은 사용자가 포함된 사용자 그룹을 쿼리하면 불완전한 사용자 목록을 반환할 수 있습니다. 이번 업데이트에서는 기술 시나리오의 그룹 쿼리가 올바른 결과를 반환하도록 호환성 인터페이스의 여러 버그가 수정되었습니다.
- BZ#970090
- 이름 서비스 캐시 데몬(nscd)의 결함으로 인해 특정 조건에서 캐시된 DNS 쿼리는 AF_UNSPEC 주소 제품군이 지정되어 있고 IPv4 및 IPv6 결과 모두 존재하더라도 IPv4 주소만 반환되었습니다. 이제 결함이 수정되었으며 nscd가 IPv4 및 IPv6를 모두 올바르게 반환합니다.
- BZ#988931
- 동적 로더의 결함으로 인해 로더는 사전 연결된 동적 애플리케이션을 로드하는 동안 메모리의 읽기 전용 페이지에 쓰기를 시도했습니다. 이로 인해 모든 사전 링크된 애플리케이션이 시작 중에 예기치 않게 종료되었습니다. 동적 로더의 결함이 수정되었으며 이 상황에서 사전 연결된 애플리케이션이 더 이상 충돌하지 않습니다.
기능 개선
- BZ#629823
- 이전 버전의 nscd는 netgroup 쿼리를 캐시하지 않았습니다. netgroup 캐싱이 부족하면 시스템 구성의 netgroup 맵에 크게 의존하는 사용자에게 최적의 성능이 저하될 수 있습니다. 이번 업데이트를 통해 netgroup 쿼리 캐싱에 대한 지원이 nscd에 추가되었습니다. netgroup 맵에 크게 사용하고 캐싱에 nscd를 사용하는 시스템은 이제 대부분의 구성에서 성능을 개선해야 하는 netgroup 쿼리가 캐시됩니다.
- BZ#663641
- 이전에는 사용자가 새 스레드용으로 생성된 스택의 크기를 조정하려는 경우 프로그램 코드를 수정해야 했습니다. 이번 업데이트를 통해 glibc는 새로운 GLIBC_PTHREAD_STACKSIZE 환경 변수를 추가하여 사용자가 원하는 기본 스레드 스택 크기를 바이트 단위로 설정할 수 있습니다. 변수는 pthread_create() 함수 및 기본 특성을 사용하여 생성된 스레드에 영향을 미칩니다. 기본 스레드 스택 크기는 메모리 정렬 및 기타 요인으로 인해 요청된 크기보다 약간 커질 수 있습니다.
- BZ#886968
- 동적 로더는 로드된 라이브러리의 매우 큰 목록으로 애플리케이션을 디버깅하는 데 사용되는 인터페이스를 제공하기 위해 GDB와 조정합니다.
- BZ#905575
- glibc 패키지는 pow() 및 exp() 함수의 libm 라이브러리에 4개의 Static Defined Tracing(SDT) 프로브를 제공합니다. SDT 프로브는 함수에 대한 입력로 인해 루틴이 다중 기록 속도가 느린 경로를 실행하는지 여부를 감지하는 데 사용할 수 있습니다. 이 정보는 pow() 및 exp() 함수를 호출하는 애플리케이션에서 성능 문제를 감지하는 데 사용할 수 있습니다.
- BZ#916986
- mmap() 함수와 함께 사용하기 위해 MAP_HUGETLB 및 MAP_STACK 플래그에 대한 지원이 추가되었습니다. 해당 지원은 커널 지원에 따라 달라지며 mmap()을 호출하는 애플리케이션은 항상 함수의 결과를 검사하여 호출 결과를 확인해야 합니다.
- BZ#929302
- PowerPC 아키텍처에서 getcpu() 시스템 호출의 VDSO(Virtual Dynamic Shared Object) 구현을 호출하여 sched_getcpu() 함수의 성능이 향상되었습니다.
- BZ#970776
- CryostatLE 오류 코드의 오류 문자열이 "Stale NFS file handle" 대신 "Stale file handle"를 출력하도록 업데이트되어 오류의 의미에 대한 혼동을 방지할 수 있습니다. 오류 문자열이 지원되는 모든 언어로 번역되었습니다.
8.55. glusterfs
버그 수정
- BZ#998778
- 이전에는 API 실패 중에 "errno" 값이 올바르게 설정되지 않았습니다. 결과적으로 API를 사용하는 애플리케이션이 예기치 않게 작동할 수 있었습니다. 이번 업데이트를 통해 API 실패 중에 값이 올바르게 설정되고 애플리케이션이 예상대로 작동합니다.
- BZ#998832
- 이전에는 glusterfs-api 라이브러리에서 glusterfs-api를 사용하여 애플리케이션으로 전송된 모든 신호를 처리했습니다. 그 결과 glusterfs-api가 이 라이브러리에서 사용하지 않은 모든 신호를 잘못 해석했습니다. 이번 업데이트를 통해 glusterfs-api에서 이러한 신호가 이제 올바르게 해석되도록 사용하지 않는 신호를 더 이상 처리하지 않습니다.
- BZ#1017014
- 이전에는 libgfapi 라이브러리가 모든 리소스를 성공적으로 정리한 경우에도 glfs_fini() 함수가 NULL을 반환하지 않았습니다. 그 결과 libgfapi를 사용하는 "qemu-img create" 명령을 사용하려는 시도가 실패했습니다. libgfapi 정리가 성공하면 함수가 NULL을 반환하도록 기본 소스 코드가 수정되었으며 이제 명령이 예상대로 작동합니다.
기능 개선
- BZ#916645
- QEMU의 GlusterFS에 대한 기본 지원은 glusterfs 패키지에 포함되어 있습니다. 이 지원을 통해 로컬에 마운트된 FUSE 파일 시스템 대신 libgfapi 라이브러리를 사용하여 GlusterFS 볼륨에 대한 기본 액세스가 가능합니다. 이러한 기본 접근 방식은 상당한 성능 향상을 제공합니다.
8.56. gnome-screensaver
버그 수정
- BZ#905935
- 이전에는 virt-manager, virt-viewer 및 spice-xpi 애플리케이션을 사용할 때 화면 보호기를 시작한 후 사용자가 gnome-screensaver 암호를 입력할 수 없었습니다. 이는 가상 머신 시스템이 Compiz composting 창 관리자를 사용한 경우에만 발생했습니다. 사용자가 마우스 커서를 실행한 후 키를 눌러 암호를 입력하면 대화 상자 창에서 입력을 허용하지 않았습니다. 이는 키보드를 삭제하지 않은 애플리케이션에 대한 창 중점을 두는 잘못된 할당으로 인해 발생했습니다. 이번 업데이트를 통해 이제 창 초점이 올바른 위치에 적절하게 할당되고, gnome-screensaver 암호를 입력하면 설명된 시나리오에서 더 이상 실패하지 않습니다.
- BZ#947671
- 이번 업데이트 이전에는 fade-out 기능을 지원하지 않는 X 서버를 사용할 때 gnome-screensaver 유틸리티가 잘못 작동했습니다. 결과적으로 gnome-screensaver가 모니터를 제거하려고 할 때 예기치 않게 종료되었습니다. 이 버그가 수정되었으며 gnome-screensaver가 잠재적인 fade-out 오류를 감지하고 충돌하지 않고 복구합니다.
8.57. gpxe
8.57.1. RHBA-2013:1628 - gpxe 버그 수정 업데이트
버그 수정
- BZ#972671
- PXE(Pre-Boot Execution Environment)를 사용하여 gPXE 유틸리티를 사용하여 가상 머신을 부팅하도록 DHCP 서버를 구성할 수 있습니다. 이전에는 다음 서버 세부 정보가 다른 DHCP 서버에서 온 경우 PXE 부팅에 실패했습니다. 이번 업데이트에서는 이 버그를 수정하기 위해 패치를 적용하고 이제 설명된 시나리오에서 PXE 부팅이 예상대로 작동합니다.
8.58. grep
8.58.1. RHBA-2013:0977 - grep 버그 수정 업데이트
버그 수정
- BZ#715295
- 일부 정규 표현식의 경우 DFA 분석은 남겨진 것보다 최대 두 배의 "positions"를 삽입할 수 있었습니다. 결과적으로 모든 위치를 삽입할 공간이 충분하지 않았으며 특정 정규식에서 grep이 예기치 않게 종료될 수 있었습니다. 이 문제를 해결하기 위해 공간 할당이 증가하고 grep은 설명된 시나리오에서 예상대로 작동합니다.
- BZ#797934
- 대소문자를 구분하지 않는 검색 중에 고정된 문자열 패턴이 비어 있으면 grep이 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 이 사례에 대한 검사가 코드에 추가되어 grep이 설명된 시나리오에서 예상대로 작동합니다.
- BZ#826997
- 이전 버전에서는 대소문자를 구분하지 않는 코드 처리 검색에서 문자열의 바이트 크기를 변경하고 소문자로 변환할 수 있었습니다. 결과적으로 grep은 특정 출력 문자열을 잘릴 수 있었습니다. 이 버그를 해결하기 위해 소문자로 변환하는 동안 바이트 크기가 변경될 때 이러한 사례를 올바르게 처리하도록 grep 코드가 수정되었습니다. 결과적으로 대소문자를 구분하지 않는 검색이 올바르게 작동하고 grep이 더 이상 출력을 자르지 않습니다.
8.59. grub
버그 수정
- BZ#851706
- GRUB 메뉴 항목의 제목이 80자 행 길이를 초과하면 부팅에 남은 시간을 나타내는 텍스트가 일치하지 않아 잘못된 것으로 표시되었습니다. 오버플로 텍스트가 새 줄에 표시되고 전체 텍스트가 두 번째 줄마다 한 줄 아래로 이동되었습니다. 이번 업데이트에서는 텍스트를 두 줄로 분할하고, 긴 메뉴 항목에서 GRUB이 올바르게 작동하도록 부팅 카운트다운으로 두 번째 행만 다시 작성됩니다.
- BZ#854652
- grub 패키지의 새 버전을 빌드할 때 GRUB은 "make clean" 명령에 grub.info 파일을 제거하지 않았습니다. 그 결과 grub.info 파일에 업데이트를 적용한 후 최신 변경 사항이 포함되어 있지 않았습니다. 이 문제를 해결하기 위해 GRUB Makefile이 수정되어 이제 grub.info 파일이 명시적으로 제거되고 모든 패키지 빌드에서 생성됩니다.
- BZ#911715
- GRUB 코드는UEFI(Unified Extensible Firmware Interface) 사양을 준수하지 않았으며 사양에 필요한 EFI 플랫폼의 워치독 타이머를 비활성화하지 않았습니다. 결과적으로 워치독이 5분 이내에 비활성화되지 않아 바람직하지 않은 동작이 발생합니다. GRUB이 초기화된 직후 EFI 워치독을 비활성화하는 패치가 적용되어 EFI 시스템이 더 이상 예기치 않게 재시작되지 않습니다.
- BZ#916016
- OCIF(Open Virtual Machine Firmware) BIOS를 사용하여 QEMU KVM에서 시스템을 부팅할 때 GRUB에서 virtio 블록 장치를 인식하지 못하고 부팅 프로세스가 GRUB 쉘로 종료되었습니다. 이는 GRUB이 EFI 장치에 대한 경로를 올바르게 테스트하지 않았기 때문에 발생했습니다. 이제 GRUB 코드는 EFI PCI 장치 경로에 대해 EFI 장치 경로를 확인하고 이 시나리오에서 디스크 장치를 예상대로 인식합니다.
- BZ#918824
- GRUB은 exitBootServices() EFI 기능을 처리할 때 UEFI 사양을 준수하지 않았습니다. 메모리 맵을 검색하는 동안 exitBootServices()가 실패한 경우 GRUB은 시도를 반복하는 대신 즉시 종료됩니다. 이번 업데이트를 통해 GRUB은 종료되기 전에 5 번 메모리 맵을 다시 가져오고 부팅 프로세스가 계속됩니다.
- BZ#922705
- 소스 패키지에서 64비트 버전의 GRUB을 빌드할 때 32비트 버전의 glibc-static 패키지가 설치되지 않는 한 구성 단계에서 실행 파일을 연결하지 못합니다. 이 상황에서 GRUB 실패 시 오류 메시지가 표시되지 않았습니다. 이 문제는 다른 환경에서 제공할 수 있는 /usr/lib/lib/libc.a 파일에 직접 의존하도록 grub 패키지를 설정하여 해결되었습니다. grub 패키지를 빌드할 때 파일이 없으면 적절한 오류 메시지가 표시됩니다.
- BZ#928938
- 다중 경로 장치에 설치할 때 GRUB을 읽을 수 없어 시스템을 부팅할 수 없었습니다. 이는 장치를 일치시키는 데 사용되는 정규식의 버그로 인해 발생했으며 grub-install 명령으로 심볼릭 링크를 확인하여 장치 통계를 얻을 수 없었습니다. 이번 업데이트에서는 다중 경로 장치에 설치할 때 GRUB이 예상대로 부팅되도록 이러한 문제가 해결되었습니다.
- BZ#1008305
- UEFI 모드에서 부팅할 때 GRUB은 이전에 구조에 메모리를 할당하는 대신 구조에 대한 포인터에 대한 메모리를 할당했습니다. 이로 인해 GRUB이 특정 하드웨어 구성에서 커널에 제어를 완료하고 제어할 수 없습니다. 이번 업데이트에서는 이 문제가 해결되어 GRUB은 이제 구조에 대한 메모리를 예상대로 할당하고 제어를 커널에 성공적으로 전달하도록 합니다.
- BZ#1017296
- 이전에는 설치 프로세스 중에 장치 이름을 구문 분석할 수 없기 때문에 GRUB을 NVMe(Non-Volatile Memory Express) 장치에 설치할 수 없었습니다. 이번 업데이트에서는 일치하는 NVMe 장치에 대한 정규식 지원이 추가되어 이러한 장치에 GRUB이 성공적으로 설치될 수 있습니다.
기능 개선
- BZ#848628
- GRUB에서 새로운 메뉴 옵션 "macappend"를 제공합니다. grub.conf 파일 또는 GRUB 명령행에서 "macappend"를 사용하는 경우 "BOOTIF=<MAC_address>" 매개변수가 커널 명령줄에 추가됩니다. 이를 통해 PXE 부팅 중에 사용할 Anaconda의 네트워크 인터페이스를 지정할 수 있습니다.
8.60. grubby
버그 수정
- BZ#991197
- 이전에는 tboot 부트로 커널을 업데이트한 후 grub.conf 파일이 올바르게 업데이트되지 않았습니다. 이는 grubby 도구의 버그로 인해 tboot가 있는 grub.conf 스탠자를 부적절하게 해석했습니다. 이번 업데이트를 통해 grubby는 tboot가 의도한 대로 작동하도록 /etc/sysconfig/kernel 파일에서 HYPERVISOR 및 HYPERVISOR_ARGS 매개변수를 읽을 수 있습니다.
- BZ#999908
- 이번 업데이트 이전에는 RAM 디스크 이미지를 찾을 수 없기 때문에 yum 및 anaconda 업그레이드가 AMD64 및 Intel 64 아키텍처에서 커널 패닉 상태로 실패했습니다. 이 문제는 tboot가 설치되고 커널 "%post" 또는 "%posttrans" 스크립트가 실행된 경우에만 발생했습니다. 이번 업데이트에서는 initramfs 디스크 이미지가 grub 항목에 추가되고 설명된 시나리오에서 커널 패닉 오류가 더 이상 발생하지 않습니다.
8.61. gtk2
버그 수정
- BZ#970594
- 텍스트를 콤보 상자에 렌더링할 때 GTK+ 셀 렌더러는 항상 첫 번째 항목으로 렌더링된 텍스트를 렌더링합니다. 결과적으로 이전에 렌더링된 텍스트가 이름 세트의 항목과 일치하지 않으면 연락처 보기의 "Categories" 콤보 상자의 첫 번째 항목이 빈 것으로 렌더링되어 영향을 받는 접근성 및 자동화된 테스트입니다. 이번 업데이트에서는 셀 렌더러가 올바르게 업데이트되고 현재 콤보 박스 호출에 대한 항목을 렌더링하여 앞서 언급한 문제가 더 이상 발생하지 않도록 합니다.
- BZ#979049
- GtkTreeView 인터페이스의 버그로 인해 Evolution의 트리 뷰의 확장 화살표가 시스템 트레이의 아이콘을 클릭한 후 작동을 중지했습니다. 이번 업데이트에서는 트리 확장 및 축소 코드가 강화되어 이 버그를 수정합니다.
8.62. haproxy
버그 수정
- BZ#903303
- 이전에는 setuid() 및 setgid() 함수가 제대로 작동하지 않았습니다. 그 결과 HAProxy 로드 밸런서에서 root 권한을 삭제한 후 보조 그룹을 올바르게 삭제하지 못했습니다. 함수 동작이 수정되었으며 HAProxy는 이제 모든 보조 그룹을 예상대로 삭제합니다.
기능 개선
- BZ#921064
- 이번 업데이트를 통해 TPROXY에 대한 지원이 haproxy 패키지에 추가되었습니다. TPROXY는 프록시 방화벽 뒤의 클라이언트의 관리 작업을 간소화합니다. 또한 투명한 프록시는 프록시가 사용자에게 표시되지 않게 합니다.
8.63. hdparm
버그 수정
- BZ#639623
- 이전에는 hdparm 유틸리티에서 일부 디스크 정보를 사용할 수 없다고 가정하지 않았습니다. 결과적으로 hdparm은 유용한 출력 없이 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 실패한 디스크 쿼리가 올바르게 검사되고 hdparm이 더 자세한 오류 메시지와 함께 종료됩니다.
- BZ#735887
- 이번 업데이트 이전에는 사용자가 파일 사용량에 대한 정보를 요청할 때 일부 디스크 정보를 사용할 수 없다고 가정하지 않았습니다. 결과적으로 hdparm은 이러한 시나리오에서 유용한 출력 없이 예기치 않게 종료되었습니다. 이번 업데이트를 통해 디스크 쿼리 실패 여부를 올바르게 점검했습니다. 결과적으로 hdparm은 이제 자세한 정보를 제공하는 오류 메시지로 종료됩니다.
- BZ#807056
- 이전에는 hdparm 유틸리티에서 오류가 발생할 수 있는 방식으로 하드 드라이브 식별 데이터를 검색했습니다. 결과적으로 hdparm은 경우에 따라 데이터를 얻지 못하고 도움이 되지 않은 오류 메시지를 표시했습니다. 이번 업데이트를 통해 각 시스템 호출이 더 적합하고 강력한 것으로 교체되었습니다. 결과적으로 하드 드라이브 식별 데이터를 성공적으로 가져와서 출력에 출력됩니다.
- BZ#862257
- hdparm 유틸리티가 하드 드라이브에 대한 필요한 정보를 얻을 수 없는 경우 펌웨어를 다운로드하려고 시도합니다. 이전 버전에서는 잘못된 제어 문으로 인해 hdparm은 이러한 다운로드 시도에서 세그먼트화 결함으로 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 시스템 호출 실패 여부를 확인하는 control 문이 추가되었습니다. 결과적으로 hdparm이 드라이브에서 작동할 수 없는 경우 오류 메시지가 표시되고 정상적으로 종료됩니다.
8.64. hsqldb
버그 수정
- BZ#996152
- 이전에는 /etc/sysconfig/hsqldb 파일이 "config(noreplace)"로 표시되지 않았습니다. 결과적으로 패키지를 다시 설치하거나 업데이트하면 사용자가 변경한 내용을 덮어쓸 수 있었습니다. 이번 업데이트를 통해 구성 파일이 올바르게 표시되고 파일을 다시 설치하거나 업데이트하는 동안 파일이 수정 사항이 유지됩니다.
- BZ#962676
- 이번 업데이트 이전에는 hsqldb 데이터베이스가 버전 1:1.6.0 이상의 java 패키지에 의존했으며 일부 Red Hat Enterprise Linux 6 플랫폼에서는 사용할 수 없습니다. 결과적으로 hsqldb 패키지를 설치하지 못했습니다. 오류 메시지와 함께 실패했습니다. 이번 업데이트를 통해 버전 0:1.5.0 이상의 java 패키지가 필요하며 hsqldb 설치가 예상대로 올바르게 진행됩니다.
8.65. hwdata
버그 수정
- BZ#989142
- 이전에는 Red Hat Virtio Small Computer System Interface(SCSI) 장치에 대한 특정 정보가 pci.ids 데이터베이스에서 누락되었습니다. 결과적으로 lspci 유틸리티를 사용하면 장치 이름이 올바르게 표시되지 않았으며 대신 숫자 장치 ID가 표시되었습니다. 이번 업데이트를 통해 pci.ids 데이터베이스가 예상대로 올바른 정보를 제공하도록 수정되었습니다.
기능 개선
8.66. hypervkvpd
버그 수정
- BZ#920032
- 이전에는 hypervkvpd 서비스가 cgred 서비스에서 사용한 두 개의 netlink 멀티캐스트 그룹에 등록되었습니다. hypervkvpd가 netlink 메시지를 수신했을 때 맹목적으로 자체 해석되었습니다. 그 결과 hypervkvpd가 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트 후 hypervkvpd는 이제 자체 netlink 멀티캐스트 그룹에만 등록하고 들어오는 netlink 메시지의 유형을 확인합니다. cgred 서비스가 실행 중일 때 hypervkvpd를 사용하면 더 이상 세그먼트 오류가 발생하지 않습니다.
- BZ#962565
- 이번 업데이트 이전에는 hypervkvpd init 스크립트에서 Hyper-V 드라이버 모듈이 커널에 로드되었는지 확인하지 않았습니다. hypervkvpd가 설치된 경우 시스템이 Hyper-V 하이퍼바이저에서 게스트 머신으로 실행되지 않은 경우에도 시스템 부팅 시 자동으로 시작됩니다. Hyper-V 드라이버 모듈이 커널에 로드되었는지 확인하기 위해 hypervkvpd init 스크립트에 검증이 추가되었습니다. 결과적으로 모듈이 커널에 로드되지 않으면 이제 hypervkvpd가 시작되지 않지만 적절한 드라이버 모듈이 로드되지 않는다는 메시지가 표시됩니다.
- BZ#977861
- 이전에는 hypervkvpd가 충분히 안전한 컴파일러 옵션으로 빌드되지 않아 컴파일된 코드를 취약하게 만들 수 있었습니다. hypervkvpd 데몬은 full read-only relocation (RELRO) 및 position- independent executable (PIE) 플래그를 사용하여 빌드되었습니다. 결과적으로 컴파일된 코드는 더 안전하고 가능한 버퍼 오버플로에 대해 더 잘 보호됩니다.
- BZ#983851
- Get-VMNetworkAdapter 명령을 사용하여 가상 머신 네트워크 어댑터를 쿼리하는 경우 각 서브넷 문자열을 세로 구분해야 합니다. IPv6 서브넷 열거 코드의 버그로 인해 IPv6 주소가 나열되지 않았습니다. 패치가 적용되었으며 IPv6 서브넷 열거가 예상대로 작동합니다.
8.67. ibus-hangul
버그 수정
- BZ#965554
- 이전에는 IBus의 Hangul 엔진이 제대로 작동하지 않았습니다. preedit 문자열을 사용할 수 있고 입력 초점이 다른 창으로 이동된 경우 preedit 문자열이 커밋되었습니다. 그 후 입력 초점이 창으로 다시 이동하면 XIM(X Input Method)에서 첫 번째 키 입력을 처리할 수 없었습니다. 이번 업데이트에서는 코드 변경으로 이 문제를 해결하고, 설명된 시나리오에서 초점 변경 후 키 누수 입력이 더 이상 손실되지 않습니다.
8.68. icedtea-web
8.69. initscripts
버그 수정
- BZ#915659
- grep 유틸리티의 마스터 본딩 장치의 이름과 일치시키는 데 사용된 정규식이 올바르지 않았습니다. 결과적으로 네트워크 스크립트는 주석을 포함하는 인터페이스 구성에서 행을 올바르게 처리하지 못했으며 ifup-eth 명령이 슬레이브 장치를 활성화하지 못했습니다. 이번 업데이트에서는 grep에 대한 업데이트된 정규식을 제공하고 이제 설명된 시나리오에서 ifup-eth가 예상대로 작동합니다.
- BZ#919217 BZ#963944
- Red Hat Enterprise Linux 6.4에서는 Mode 6 본딩을 사용하는 동안 마스터 장치가 항상 슬레이브 후에 시작되었습니다. 그 결과 결합된 인터페이스를 사용할 수 없었습니다. 이번 업데이트에서는 슬레이브 및 모드 6 본딩이 이제 예상대로 작동하기 전에 마스터 장치가 항상 설정되었는지 확인합니다.
- BZ#984003
- 이전에는 initrd 스크립트에서 /proc 디렉토리를 마운트해도 /etc/fstab 파일에 설정된 옵션을 고려하지 않았습니다. 그 결과 /proc이 지정된 옵션을 사용하여 마운트되지 않았습니다. 이번 업데이트를 통해 이제 /proc이 rc.sysinit 스크립트에 다시 마운트되어 지정된 옵션으로 마운트됩니다.
- BZ#877928
- 이전에는 현재 NetworkManager에서 관리하지 않은 경우에도 nmcli 유틸리티를 호출하여 인터페이스를 중지했습니다. 그 결과 인터페이스가 중지되었지만 nmcli의 출력은 작업이 실패했음을 나타냅니다. 이번 업데이트 후 NetworkManager가 상호 작용을 처리하지 않는 경우 nmcli가 더 이상 호출되지 않습니다(예: 실패한 경우, 연결이 끊기거나, 비관리 또는 사용할 수 없음). 결과적으로 nmcli의 출력이 실제 결과와 일치합니다.
- BZ#836233
- DHCPv4)를 통해 IP 주소를 할당하는 데 실패한 경우 initscript가 오류와 함께 종료되었습니다. 그 결과 DHCPv4가 실패한 경우 정적 IPv4 및 IPv6 주소가 설정되지 않았습니다. DHCPv4가 실패할 때 스크립트를 계속 진행하거나 종료할지 사용자가 결정할 수 있도록 IPV4_FAILURE_FATAL 옵션이 추가되었습니다. 또한 구성 파일에서 "no"로 설정되고 DHCPv6이 활성화된 경우 initscript는 DHCPv4가 실패하더라도 IPv6 주소를 가져오려고 합니다.
- BZ#843402
- TERM 신호를 보낸 후 killproc() 함수는 프로세스를 다시 확인하기 전에 항상 $delay 초를 기다립니다. 이 대기는 불필요했으며 이 업데이트 killproc()에서 대기 지연 중에 여러 번 점검했습니다. 결과적으로 killproc은 프로세스가 종료된 직후에 계속될 수 있습니다.
- BZ#864802
- 이전에는 일부 마운트 유형이 우선순위가 지정되었기 때문에 initscript에서 관리자가 지정한 마운트 순서를 따르지 않았습니다. 결과적으로 하위 디렉터리를 상위 디렉토리 앞에 마운트할 수 있었습니다. 이번 업데이트 후 NFS, CIFS(Common Internet File System), SBM(Server Message Block) 및 기타 마운트 유형을 마지막으로 마운트할 수 있습니다. 결과적으로 /etc/fstab 파일의 마운트가 올바른 순서로 처리됩니다.
- BZ#814427
- 이전에는 securetty 유틸리티에서 항상 읽기 및 쓰기 모드에서 /etc/securetty 파일을 열려고 했습니다. 그 결과 읽기 전용 루트 파일 시스템에서 이로 인해 오류가 발생하고 TTY가 이미 존재하더라도 파일이 수정되지 않았습니다. 이번 업데이트를 통해 securetty는 이제 /etc/securetty 파일을 수정해야 하는지 확인하고 그렇지 않은 경우 종료합니다. 결과적으로 securetty는 이제 읽기 전용 루트 파일 시스템에서 올바르게 작동합니다.
- BZ#948824
- 이번 업데이트 이전에는 ARP(Address Resolution Protocol) 검사가 성공적으로 수행된 경우 사용자에게 알리지 않았습니다. 결과적으로 인터페이스를 로드하는 데 필요한 시간에 대해 사용자가 혼동될 수 있었습니다. 이번 업데이트를 통해 ARP 점검 후 메시지가 출력되므로 혼동을 방지할 수 있습니다.
- BZ#921476
- 이전에는 initscripts 문서에 rule-* 파일에 대한 정보가 포함되어 있지 않았습니다. 결과적으로 사용자는 IPv6 주소에 대한 라우팅 규칙을 설정하는 방법을 알 수 없었습니다. 이번 업데이트에서는 rule6-* 파일에 대한 문서가 sysconfig.txt 파일에 추가됩니다.
- BZ#905423
- 이전에는 사용자가 기본값을 사용하여 업데이트할 때마다 덮어쓰는 /etc/init/*.conf 파일을 인식하지 못했습니다. 이러한 파일을 수정하지 않고 대신 *.override 파일을 사용하도록 사용자에게 알리기 위해 /etc/init/*.conf 파일에 주석이 추가되었습니다.
기능 개선
- BZ#815676
- 이번 업데이트를 통해 DHCPv6(Dynamic Host Configuration Protocol 버전 6)의 구성 옵션이 /etc/dhcp/dhclient6-<iface>.conf 파일에 적용되었습니다. /etc/dhcp/dhclient6-<iface>.conf의 DHCPv4 및 DHCPv6에 대한 옵션이 모두 적용됩니다.
8.70. iotop
버그 수정
- BZ#746240, BZ#908149
- 이전에는 루트가 아닌 사용자가 iotop 유틸리티를 실행할 때 예기치 않게 종료되었습니다. 이는 CVE-2011-2494의 최근 적용 패치가 작업 통계 커널 하위 시스템의 I/O 통계를 루트 사용자만 액세스할 수 있었기 때문에 iotop에서 루트가 아닌 사용자가 실행할 때 "taskstats" 호출이 실패할 수 있다고 예상하지 않았기 때문입니다. 이번 업데이트에서는 iotop에 권한 점검을 추가하고 사용자에게 필요한 권한이 없는 경우 이제 root 권한이 필요하다는 설명과 함께 iotop를 종료합니다.
- BZ#826875
- 이전에는 iotop 유틸리티에서 플랫폼 문자열을 올바르게 처리하지 않았습니다. 결과적으로 iotop 명령은 64비트 PowerPC 시스템의 I/O 스케줄링 클래스와 우선 순위("PRIO") 열을 올바르게 표시할 수 없었습니다. 이번 업데이트를 통해 iotop 명령이 이제 64비트 PowerPC 시스템의 "PRIO" 열이 예상대로 표시되도록 버그가 수정되었습니다.
- BZ#849559
- 잘못된 로케일이 설정되면 iotop 유틸리티가 다음 역추적 오류로 인해 시작되지 않았습니다.locale.Error: 지원되지 않는 로케일 설정이번 업데이트를 통해 기본 소스 코드가 수정되었습니다. 결과적으로 잘못된 로케일이 설정되면 기본 로케일이 대신 사용되고 이 변경 사항에 대한 경고가 반환됩니다.
8.71. ipa
버그 수정
- BZ#904119
- 이전에는 마이그레이션 중에 기본 사용자 그룹에 하나씩 사용자를 추가했습니다. 결과적으로 대규모 그룹에 사용자를 추가하는 데 시간이 많이 걸렸습니다. 이번 업데이트를 통해 이제 사용자가 이전 방법에 대해 상당한 성능 향상을 제공하는 100배의 배치에 추가됩니다.
- BZ#905626
- 이전에는 Identity Management 클라이언트 설치 프로그램에서 클라이언트 등록을 시도할 때 사용 가능한 모든 서버를 찾지 못했습니다. 결과적으로 등록 중에 Identity Management 마스터 중 하나를 사용할 수 없는 경우 등록 "ipa-client-install" 명령이 클라이언트를 등록하지 못했습니다. 이번 업데이트를 통해 클라이언트 설치 프로그램은 DNS에서 자동 검색하거나 사용 가능한 서버를 찾을 때까지 명령줄에서 "--server" 옵션을 사용하여 전달되고 ipa-client-install이 제대로 작동합니다.
- BZ#906846
- OpenLDAP 서버에서 마이그레이션할 때 Identity Management가 제대로 작동하지 않았습니다. 결과적으로 원격 서버에서 LDAP 스키마를 검색하지 못했습니다. 이번 업데이트를 통해 Identity Management는 "cn=subschema" 항목도 표시되고 OpenLDAP 서버에서 마이그레이션이 더 이상 실패하지 않습니다.
- BZ#907881
- 이번 업데이트 이전에는 Identity Management 암호 잠금 디렉터리 서버 플러그인이 암호 잠금을 잘못 처리했습니다. 결과적으로 Lockout Time 값을 0으로 설정하여 Identity Management 암호 정책을 구성한 경우 사용자 계정은 최대 사용자 암호 실패 수가 초과된 경우에도 영구적으로 비활성화되었습니다. 플러그인이 암호 잠금 시간을 올바르게 처리하도록 수정되었으며 사용자 계정 잠금이 예상대로 작동합니다.
- BZ#915745
- 이전에는 Identity Management 서버를 최신 버전으로 업그레이드할 때 사용되는 업데이트 파일에는 새 Directory Server 스키마 "ipaExternalMember" 속성 유형과 "ipaExternalGroup" 오브젝트 클래스가 포함되지 않았습니다. 결과적으로 스키마 요소 또는 웹 UI(웹 사용자 인터페이스)를 사용하는 CLI(명령줄 인터페이스) 명령이 모두 올바르게 작동하지 않았습니다. 이번 업데이트에서는 누락된 오브젝트 클래스 및 속성 유형이 ID 관리 업데이트 파일에 추가되었습니다. 이제 ID 관리 업데이트 프로세스 중에 Directory Server 스키마가 업데이트되고 CLI 명령과 웹 UI가 모두 제대로 작동합니다.
- BZ#916209
- "includedir" 지시문이 포함된 경우 Identity Management 구성 구문 분석기에서 Kerberos 클라이언트 구성 파일(/etc/krb5.conf)을 구문 분석할 수 없었습니다. 결과적으로 Kerberos 클라이언트 구성을 직접 구문 분석하고 업데이트하는 Identity Management ipa-adtrust-install 설치 프로그램이 구문 오류로 인해 예기치 않게 종료되었습니다. 이번 업데이트를 통해 구성 구문 분석기가 "includedir"을 올바르게 처리하고 설명된 시나리오에서 ipa-adtrust-install이 더 이상 충돌하지 않습니다.
- BZ#924004
- 이전에는 Identity Management 클라이언트 설치 프로그램이 LDAP 프로토콜을 사용하여 Identity Management 서버에서 CA(인증 기관) 인증서를 다운로드하는 경우 HTTP 프로토콜로 대체되지 않은 경우가 있었습니다. 그 결과 HTTP 프로토콜을 사용하여 인증서에 액세스할 수 있어도 Identity Management 클라이언트 설치에 실패했습니다. 이번 업데이트를 통해 CA 인증서를 다운로드할 때 Identity Management 클라이언트 설치 프로그램이 다른 프로토콜 간에 적절하게 대체될 수 있으며, 이제 하나의 프로토콜을 통해 다운로드가 실패하는 경우에도 설치를 완료할 수 있습니다.
- BZ#924009
- Identity Management 클라이언트 설치 프로그램에서 이미 등록된 클라이언트를 다시 등록할 수 없었습니다. 결과적으로 구성된 Identity Management 클라이언트가 있는 시스템 또는 가상 시스템이 먼저 클라이언트를 등록 취소하지 않고 제거되거나 해제되면 클라이언트 항목이 Identity Management 서버에서 제거될 때까지 클라이언트 등록에 실패합니다. 이번 업데이트에서는 Identity Management 클라이언트 설치 프로그램에 "--force-join" 옵션이 추가되어 권한 있는 관리자가 이제 Identity Management 클라이언트를 다시 등록할 수 있습니다.
- BZ#924542
- 이전에는 HBAC(Identity Management Host Based Access Control) 규칙 API를 통해 관리자는 이 구성 요소가 더 이상 사용되지 않는 경우에도 HBAC 규칙의 "소스 호스트" 구성 요소를 지정할 수 있었습니다. 결과적으로 HBAC 규칙에서 "소스 호스트" 구성 요소를 사용할 때 예기치 않은 동작이 발생할 수 있었습니다. 이 버그가 수정되었습니다. "소스 호스트" 구성 요소는 이제 HBAC 규칙에서 허용되지 않으며 관리자에 대한 예기치 않은 동작이 더 이상 발생하지 않습니다.
- BZ#948928
- 특정 상황에서 Identity Management 업그레이드 프로세스는 Directory Server에 저장된 CA(인증 기관) 인증서를 두 번 인코딩합니다. 결과적으로 일부 Identity Management 클라이언트에서 CA 인증서를 디코딩하고 클라이언트를 설치하지 못했습니다. 이번 업데이트를 통해 이제 CA 인증서가 올바르게 인코딩됩니다. 클라이언트 설치 CA 인증서가 Identity Management 서버에서 올바르게 검색되고 설치가 예상대로 진행됩니다.
- BZ#950014
- 경우에 따라 Identity Management 설치 및 업그레이드 프로세스에서 사용자 및 사용자 역할 멤버십 정보를 올바른 순서로 업데이트하지 않은 경우도 있었습니다. 그 결과 사용자 역할이 제대로 적용되지 않았으며 사용자가 권한이 부여된 경우에도 (예: Identity Management 클라이언트 등록) 권한 있는 작업을 진행할 수 있었습니다. 이제 멤버십 정보가 올바른 순서로 적용되며, 불완전한 멤버십 정보로 인해 사용자의 권한 있는 작업이 더 이상 실패하지 않습니다.
- BZ#952241
- 이전에는 Identity Management PKI(공개 키 인프라) 서버 인증서(auditSigningCert)가 업데이트되면 잘못된 신뢰 인수가 업데이트된 인증서에 할당되어 서버에서 사용할 수 없었습니다. 인증서 갱신 절차가 업데이트된 인증서에 올바른 신뢰 인수를 할당하도록 업데이트되었으며, 이제 ID 관리 PKI 인증서 갱신이 예상대로 작동합니다.
- BZ#967870
- Active Directory 통합 지원이 포함된 ID 관리 서버는 Active Directory와 비교하여 NetLogon 쿼리에서 응답이 다르게 구성되어 있습니다. NetLogon 동작에는 다음과 같은 불일치가 있었습니다.
- TCP 기반 LDAP를 통해 쿼리할 때 NetLogon 쿼리에 대한 응답이 없음
- DnsDomain이 쿼리에 없는 경우 응답이 없음
- 쿼리가 일치하지 않을 때 LDAP_RES_SEARCH_RESULT를 보낸 사람에게 반환하지 않습니다. NetLogon이 응답하지 않았습니다.
결과적으로 이러한 불일치로 인해 NetLogon 쿼리를 보낸 유틸리티에 오류가 발생할 수 있습니다. NetLogon 쿼리 응답자가 수정되었으며 NetLogon 응답에서 언급된 문제가 더 이상 발생하지 않습니다. - BZ#970541
- 많은 멤버가 있는 항목(예: 대규모 사용자 그룹)의 경우 Identity Management 서버가 효율적으로 작동하지 않았습니다. 결과적으로 이러한 항목으로 작동하는 Identity Management CLI 또는 웹 UI 관리 명령(예: 새 사용자 추가, 그룹 나열 또는 업데이트)은 30초 이상 지속될 수 있었습니다. Identity Management 서버에서 다음과 같은 몇 가지 개선 사항이 구현되었습니다.
- 웹 UI 인터페이스가 필요하지 않은 경우 멤버십 정보를 사용하지 않도록 합니다(예: 그룹 목록에서)
- 이제 멤버십 조작 명령(예: 그룹에 사용자 추가)을 입력하면 멤버십 정보로 불필요한 조작을 방지할 수 있습니다.
- 멤버십 속성에 대한 하위 문자열 인덱스가 추가되었습니다.
이러한 구현을 통해 특히 대규모 사용자 그룹을 처리할 때 Identity Management CLI 및 웹 UI 관리 명령의 성능이 크게 향상되었습니다. - BZ#975431
- 이전에는 /var/lib/ipa/pki-ca/publish/ 디렉터리입니다. 여기서 Identity Management 공개 키 인프라(PKI) 내보내기를 게시하고 ipa-server 패키지를 다시 설치하거나 업그레이드한 후 잘못된 소유권 및 권한 정보가 포함되어 있었습니다. 결과적으로 디렉터리의 소유권 및 권한이 수동으로 수정될 때까지 PKI에서 CRL을 업데이트할 수 없었습니다. ID 관리 설치 프로그램 및 업그레이드 스크립트가 디렉터리의 소유권 및 권한을 올바르게 처리하도록 수정되었으며, 설명된 시나리오에서 CRL 내보내기가 올바르게 업데이트되었습니다.
- BZ#976716
- 이번 업데이트 이전에는 Identity Management XML-RPC 인터페이스에서 응답에 올바른 "Content-Type" 헤더를 반환하지 않은 경우가 있었습니다. 결과적으로 XML-RPC 응답을 처리하는 프로그램 또는 스크립트가 검증 오류로 응답을 처리하지 못할 수 있었습니다. XML-RPC 응답자가 올바른 "Content-Type" 헤더를 반환하도록 수정되었으며 프로그램과 스크립트는 이제 엄격한 검증이 활성화된 경우에도 Identity Management XML-RPC 인터페이스를 호출할 수 있습니다.
- BZ#980409
- 이전에는 Identity Management Active Directory 통합에서 Microsoft Windows Server 2012에 비해 MS-PAC 확장의 KERB_VALIDATION_INFO 섹션을 채우는 다른 절차가 예상되지 않았습니다. 결과적으로 이러한 Kerberos 티켓은 비호환성 때문에 허용되지 않았으며 Microsoft Windows Server 2012를 사용하여 신뢰를 인증하거나 만드는 데 사용할 수 없었습니다. KERB_VALIDATION_INFO 확인은 추가 처리 전에 예기치 않은 값을 필터링하도록 리팩토링되었으며, ID 관리 Active Directory 신뢰 생성이 더 이상 Microsoft Windows Server 2012에서 실패하지 않습니다.
- BZ#1011044
- 이전에는 ipa-client-install 설치 스크립트에서 클라이언트가 시스템에 이미 설치되어 있는지 여부를 제대로 탐지하지 못했습니다. 그 결과 클라이언트를 인식하지 못하는 경우 클라이언트 제거 스크립트에서 시스템 복원을 거부할 수 있었습니다. 또한 설치된 Identity Management 클라이언트 또는 서버 시스템에서도 클라이언트 설치에 성공할 수 있습니다. 그러나 이 경우 구성 파일 또는 ID 관리 클라이언트 또는 서버 기능이 중단될 수 있습니다. 이번 업데이트를 통해 ipa-client-install이 설치를 올바르게 감지하도록 수정되었으며 위에서 설명한 문제가 더 이상 발생하지 않습니다.
기능 개선
- BZ#955698
- 이번 업데이트에서는 Identity Management 서버 호스트 항목에 대한 "userClass" 속성이 도입되었습니다. 이전에는 호스트 프로비저닝 시스템에 새 호스트의 클래스를 태그하거나 설정하는 데 사용할 수 있는 자유 형식 특성이 포함되어 있지 않았습니다. 예를 들어 자동 멤버십 할당 모듈에서 사용할 수 있습니다. 관리자 및 프로비저닝 시스템은 이제 새로운 "userClass" 호스트 항목 속성을 사용할 수 있습니다.
- BZ#986211
- 이번 업데이트에서는 ID 관리 웹 UI에 사용자 항목의 "GECOS" 필드가 추가되었습니다. "GECOS"는 시스템에 제공된 사용자의 공통 이름과 동일하므로 중요한 사용자 필드이며 CLI 및 웹 UI 인터페이스를 통해 편집할 수 있어야 합니다. 이제 사용자의 "GECOS" 필드를 ID 관리 웹 UI에 표시하고 변경할 수 있습니다.
8.72. ipmitool
버그 수정
- BZ#826027
- 이전 ipmitool 업데이트에서 LAN 및 lanplus 인터페이스를 통한 발신 IPMI 요청의 재전송 속도를 조정하기 위해 새로운 옵션 "-R" 및 "-N"이 추가되었습니다. 이러한 옵션을 구현하면 재전송 시간 제한의 잘못된 기본값을 설정하고 발신 요청이 조기에 초과됩니다. 또한 일부 코너에서는 시간 초과가 발생했을 때 ipmitool이 예기치 않게 종료될 수 있었습니다. 이번 업데이트에서는 기본 시간 초과 값이 수정되어 "-N" 옵션이 없는 ipmitool은 이전 버전과 같이 발신 IPMI 요청을 다시 전송하며, 설명된 시나리오에서는 충돌이 더 이상 발생하지 않습니다.
- BZ#903251
- 이전에는 ipmitool 유틸리티를 사용하여 사용자 액세스 정보에 "ipmi" 및 "link" 키를 활성화하면 제대로 작동하지 않았습니다. 결과적으로 이러한 설정의 값을 고려하지 않았습니다. 이러한 설정의 값을 예상대로 읽고 처리할 수 있는 패치가 제공되었습니다.
- BZ#923192
- 네트워크 연결 또는 BMC(Baseboard Management Controller)를 포함하는 경우 응답 작업 시간 초과로 프로토콜 명령 재시도 작업을 트리거했습니다. 그 결과 ipmitool 유틸리티에서 이전 프로토콜 명령의 응답을 사용하여 LAN 세션 프로토콜 명령을 잘못 처리할 수 있었습니다. 이번 업데이트에서는 각 명령에 대한 예상 응답 처리를 수정하고 명령 간 예상 응답을 정리합니다. 이제 현재 보류 중인 이후 명령이 설명된 시나리오에서 첫 번째 명령의 재시도된 응답이 올바르게 무시됩니다.
8.73. iproute
ip
및 rtmon
)가 포함되어 있습니다.
버그 수정
- BZ#1011148
- ip monitor neigh 명령을 사용하여 IP Neigh 캐시를 모니터링하는 동안 캐시에 계층 2 네트워크 누락이 발생했습니다. 결과적으로 ip monitor neigh 명령은 커널에 의해 생성된 누락 이벤트를 디코딩할 수 없었습니다. 이 버그를 해결하기 위해 항목 삭제를 위한 인접한 캐시 이벤트의 코드가 업스트림에서 백포트되었으며 ip monitor neigh 는 이제 cache miss 이벤트를 인식하고 출력에 miss 키워드를 사용하여 올바르게 포맷합니다.
- BZ#950400
- 이전에는 Red Hat Enterprise Linux 6에 IPv6 토큰 전용 네트워크 구성을 설정하는 기능이 누락되었습니다. 그 결과 사용자에게 네트워킹 옵션이 줄어들었습니다. IPv6 토큰 기능은 커널(BZ#876634)과
iproute
에 대한 사용자 공간 인터페이스에서 구현되었습니다. 이제 나중에 네트워크 접두사를 선택적으로 수신하는 IPv6 토큰 전용 네트워킹을 설정할 수 있습니다. - BZ#908155
- Red Hat Enterprise Linux 6.5는 커널에서 VLAN과 같은 VLAN(Virtual Extended LAN)과 같은 VLAN(Virtual Extended LAN)과 함께 제공되므로 사용자와 애플리케이션이 VXLAN 기능을 활용하는 데 사용자 공간 인터페이스가 필요했습니다. 이번 업데이트를 통해
ip
유틸리티는 'vxlan' 장치를 인식하고 지원합니다. - BZ#838482
- 더 큰
rto_min
(특정 대상과 통신할 때 사용할 최소 TCP 재전송 TimeOut)이 설정된 경우 ip route show 명령에서 올바른 값을 반환하지 않았습니다. 이 버그를 해결하기 위해 패치가 제공되었으며 ip route show 는 이제rto_min
을 예상대로 처리합니다. - BZ#974694
- 이번 업데이트 이전에는
lnstat
유틸리티의 도움말 페이지에서 존재하지 않는 디렉토리인 iproute-<package version> 디렉터리 대신
를 잘못 참조했습니다. 잘못된 문서는 사용자를 혼란스럽게 할 수 있습니다. 이 버그를 해결하기 위해 파일 시스템 경로가 수정되었습니다.iproute-
doc - BZ#977845
- 이전에는
lnstat
유틸리티의 간격 옵션 동작과 문서 사이에 불일치가 있었습니다. 결과적으로lnstat
는 뷰를 새로 고치는 대신 몇 초 후에 종료되어 간격 옵션을 사용할 수 없게 되었습니다. 간격 옵션 동작이N
초마다 데이터를 새로 고치도록 변경되어 버그를 수정합니다. - BZ#985526
- 이전에는
ip
유틸리티에서 netlink 통신을 잘못 처리하여 특정 상황에서 중단될 수 있었습니다. 결과적으로 SELinux 제한 모드에서 ip link show 명령을 사용하여 네트워크 장치를 나열할 수 있습니다. 이번 업데이트를 통해ip
유틸리티는 응답을 대기하기 전에rtnl_send()
함수의 결과를 확인하여 무한한 중단을 방지합니다. 결과적으로 SELinux 제한 환경에서 네트워크 장치를 나열할 수 있습니다. - BZ#950122
- 이번 업데이트 이전에는
tc
유틸리티 설명서에배치
옵션에 대한 설명이 없었습니다. 이 버그를 해결하기 위해배치
옵션에 대한 설명을 포함하여tc
도움말 페이지가 업데이트되었습니다.
기능 개선
- BZ#885977
- 이전에는 브리지 모듈
sysfs
시스템에서 구성하지 않은 IP 멀티캐스트 인터넷 그룹 관리 프로토콜(IGMP) 스누핑 데이터를 검사하는 기능을 제공하지 않았습니다. 이 기능이 없으면 사용자가 멀티캐스트 트래픽을 완전히 분석할 수 없었습니다. 이번 업데이트를 통해 사용자는 감지된 멀티 캐스트 라우터 포트, 활성 구독자 및 연결된 인터페이스가 있는 그룹을 나열할 수 있습니다. - BZ#929313
- DOVE(Distributed Overlay Virtual Ethernet) 터널을 사용하면 클라우드 센터에서 사용되는 ISO OSI 계층 2 네트워크에 대한 확장 가능한 솔루션을 나타내는VXLAN(Virtual Extensible Local Area Network)을 빌드할 수 있습니다. 브리지 툴은 iproute 패키지의 일부이며, 예를 들어 Linux 플랫폼의 Cryostat 장치에서 전달 데이터베이스를 관리하는 데 사용할 수 있습니다.
- BZ#851371
tc
유틸리티가 파이프에서 조정되면 하위 명령이 완료되면 이를 인식할 수 있는 방법이 없습니다.tc
유틸리티에 새로운OK
옵션이 추가되었습니다. 이제 배치 모드의tc
는 표준 입력( tc -OK -force -batch 명령)의 명령을 수락하고 성공적으로 완료된 tc 하위 명령의 표준 출력의 새 행에서OK
를 반환합니다.
8.74. iptables
버그 수정
- BZ#924362
- 이전 iptables 버전에서는 /lib/xtables/ 또는 /lib64/xtables/ 디렉터리에 대한 "alternatives" 기능 지원이 추가되었습니다. 그러나 iptables를 "yum upgrade" 명령 및 디렉터리에 포함된 사용자 지정 플러그인 파일로 업그레이드할 때 iptables를 alternatives 슬레이브 심볼릭 링크로 교체하지 못했습니다. 그 결과 일부 iptables 모듈을 사용할 수 없게 되었습니다. 이 문제는 /lib/xtables/ 또는 /lib64/xtables/ 디렉터리가 더 이상 "alternatives"에 의해 관리되지 않도록 iptables 사양 파일을 수정하여 해결되었습니다.
- BZ#983198
- iptables-save 명령은 이전에 modprobe 실행 파일의 경로를 지정하는 "--modprobe=" 옵션만 지원했습니다. 그러나 iptables-save(8) 도움말 페이지는 지원되지 않는 옵션인 "-M"을 사용하여 이 작업을 수행할 수 있었기 때문에 혼동을 일으킬 수 있다고 잘못 언급했습니다. iptables-save 명령이 modprobe의 경로를 지정하는 "-M" 옵션을 지원하도록 수정되었으며 이제 "-M" 및 "--modprobe=" 옵션을 모두 올바르게 나타내는 iptables-save(8) 도움말 페이지를 수정합니다.
- BZ#1007632
- iptables init 스크립트의 버그로 인해 네트워크 기반 루트 장치를 사용할 때 시스템이 종료되는 동안 응답하지 않고 INPUT 또는 OUTPUT 정책에 대한 기본 필터가 DROP이었습니다. 이 문제는 iptables 규칙을 플러시하고 iptables 체인을 삭제하기 전에 기본 체인 정책을 ACCEPT로 설정하여 해결되었습니다.
기능 개선
8.75. ipvsadm
8.76. irqbalance
버그 수정
- BZ#951720
- 이전에는 irqbalance에서 인터럽트에 대해 경고했으며 kernel-2.6.32-279 이전의 커널 버전을 사용하므로 IRQ가 올바르게 분류되지 않았습니다. 이번 업데이트에서는 사용자가 이전 버전의 커널과 함께 irqbalance를 사용하지 못하게 되는데, 이는 기능이 인터럽트를 처리하는 데 필요하지 않으며 경고 메시지가 더 이상 수신되지 않습니다.
- BZ#975524
- irqbalance 패키지의 최근 변경으로 인해 irqbalance 서비스가 시작될 때 /var/run/irqbalance.pid 파일이 생성되지 않아 irqbalance가 LSB(Linux Standard Base) 사양과 호환되지 않습니다. 이번 업데이트에서는 이 문제를 해결하는 패치를 제공하므로 irqbalance 패키지가 LSB를 다시 준수합니다.
- BZ#991363
- irqbalance 코드의 버그로 인해 CPU가 핫플러그되거나 핫 플러그 해제되면 irqbalance 데몬이 세그먼트 오류로 종료되었습니다. 이번 업데이트에서는 손상된 IRQ 리밸런스 목록이 수정되었으며 이 시나리오에서는 irqbalance 데몬이 더 이상 충돌하지 않습니다.
8.77. iscsi-initiator-utils
버그 수정
- BZ#884427
- 이전 버전에서는 동일한 iSCSI 대상 포털에 대해 다른 형식의 여러 노드 레코드가 생성된 경우 데이터베이스 오류가 발생할 수 있었습니다. 결과적으로 파일 시스템에 따라 readdir syscall의 반환 순서에 따라 오류가 발생하여 업데이트 작업이 실패하는 경우가 있었습니다. 이 버그를 해결하기 위해 다른 형식의 여러 노드 레코드가 동시에 방지되고 레코드 생성 시 감지되었습니다. 중복된 노드 항목이 더 이상 iSCSI 데이터베이스에 존재하지 않으며 레코드 업데이트로 인해 데이터베이스 오류가 발생하지 않습니다.
- BZ#983553
- 이번 업데이트 이전에는 연결할 수 없는 단일 대상이 이전에 다른 사용자의 재검사를 차단할 수 있었습니다. 결과적으로 iscsiadm 유틸리티는 D 상태에서 중단될 수 있으며 나머지 대상은 스캔되지 않을 수 있었습니다. 이 버그를 해결하기 위해 iscsiadm은 용어로 설정되었으며 모든 대상이 업데이트되었습니다. 이제 작동 세션이 긴 지연없이 올바르게 다시 스캔됩니다.
- BZ#1001705
- VDMS(Virtual Desktop Server Manager)가 iSCSI 데이터베이스에 새 레코드를 추가하려고 하면 다음 오류와 함께 실패했습니다.iscsiadm: 레코드를 추가하는 동안 오류: 사용 가능한 메모리 없음.결과적으로 이 오류로 인해 스토리지에 연결할 때 호스트가 작동하지 않게 되었습니다. 업스트림 패치가 적용되고 /var/lib/iscsi 파일이 성공적으로 연결되었습니다.
기능 개선
8.78. IW
8.78.1. RHEA-2013:1563 - iw 개선 업데이트
8.79. java-1.6.0-openjdk
버그 수정
- BZ#976897
- 이전 버전에서는 com.sun.imageio.plugins.jpeg.JPEGImageWriter 클래스의 인스턴스에서 할당된 int[] 개체는 광범위한 양의 메모리를 사용하므로 결과적으로 릴리스되지 않았습니다. 이번 업데이트를 통해 이러한 메모리를 올바르게 릴리스하도록 기본 스트림 처리 논리가 수정되었으며 광범위한 메모리 사용량이 더 이상 발생하지 않습니다.
8.80. java-1.7.0-openjdk
버그 수정
- BZ#825824
- jstack 탭 세트를 사용하여 SystemTap 스크립트를 컴파일하려고 하면 다음과 유사한 오류로 인해 실패할 수 있었습니다.오류: 272 바이트의 프레임 크기는 256바이트보다 큽니다.이번 업데이트에서는 jstack 탭 설정을 수정하고 이 문제를 해결합니다.
- BZ#871771
- 잘못된 KDC 목록 연결 논리로 인해 krb5.conf 파일의 dns_lookup_kdc 속성이 true로 설정된 경우 sun.security.krb5.Config.getKDCList 메서드에서 잘못된 KDC 목록을 반환했습니다. 이 릴리스에서 연결 논리가 수정되었으며 올바른 KDC 목록이 반환됩니다.
- BZ#997633
- java-1.7.0-openjdk RPM 패키지에는 libnss3 종속성의 잘못된 사양이 포함되어 있으며 i686 시스템에 x86_64 버전을 설치했습니다. 종속성이 누락되어 32비트 JVM에서 -Dcom.sun.management.jmxremote 매개변수를 사용하여 java 명령을 시작하면 예기치 않게 종료되었습니다. 이 업데이트로 종속성 사양이 수정되었습니다. 결과적으로 libnss3 패키지의 올바른 버전이 설치되고 -Dcom.sun.management.jmxremote 매개변수를 사용하여 시작하면 java 명령이 더 이상 종료되지 않습니다.
기능 개선
8.81. Cryostat-settings
버그 수정
- BZ#886237
- Konqueror 브라우저에서 기본적으로 Java 지원을 활성화했습니다. Java는 브라우저 기반 악성 코드 공격의 일반적인 대상 중 하나이므로 Java는 이제 Konqueror에서 기본적으로 비활성화되어 있습니다.Konqueror에서 Java를 활성화하려면 Settings -> Configure Konqueror -> Java & JavaScript로 이동하여 "Java를 전역으로 설정" 확인란을 선택합니다.
8.82. kernel
보안 수정
- CVE-2014-3673,CVE-2014-3687, 중요
- Linux 커널의 SCTP 구현이 잘못된 형식의 주소 또는 중복된 Address Configuration Change Chunks (ASCONF)를 처리하는 방식에서 취약점이 발견되었습니다. 원격 공격자는 이러한 취약점 중 하나를 사용하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-3688, 중요
- Linux 커널의 SCTP 구현이 연결의 출력 대기열을 처리하는 방식에서 취약점이 발견되었습니다. 원격 공격자는 시스템이 과도한 양의 메모리를 사용하도록 하여 서비스 거부를 유발하는 특수하게 조작된 패킷을 보낼 수 있습니다.
- CVE-2014-5045, Moderate
- 심볼릭 링크에서 마운트 해제 작업을 수행할 때 Linux 커널의 VFS 하위 시스템에서 참조 수를 처리하는 방식에서 취약점이 발견되었습니다. 권한이 없는 로컬 사용자는 이 결함을 사용하여 시스템에서 사용 가능한 모든 메모리를 소진하거나 사용 후 오류가 트리거되어 시스템 충돌 또는 권한 상승이 발생할 수 있습니다.
- CVE-2014-4608, Low
- Linux 커널 LZO 구현의 lzo1x_decompress_safe() 함수에서 Literal Runs를 처리하는 방식에서 정수 오버플로 결함이 발견되었습니다. 로컬 공격자는 매우 드문 경우 이 취약점을 사용하여 시스템을 중단하거나 시스템에서 권한을 상승시킬 수 있습니다.
버그 수정
- BZ#1108360
- 이번 업데이트 이전에는 특정 conditons에서 커널 타이머로 인해 IPMI(Intelligent Platform Management Interface) 드라이버가 응답하지 않아 CPU 부하가 증가할 수 있었습니다. 이번 업데이트를 통해 패치가 적용되고 IPMI 드라이버가 더 이상 중단되지 않습니다.
- BZ#1109270, BZ#1109712
- 이전 버전에서는 오류 복구가 다시 시작되면 KCS 드라이버의 Orthonormal Basis Functions (OBF) 타이머가 재설정되지 않아 즉시 시간 초과되었습니다. 그 결과 이러한 타이밍 문제로 인해 ipmi가 응답하지 않게 되었습니다. 또한 /var/log/messages 파일을 채우고 CPU 사용량이 많은 수의 오류 메시지가 표시되었습니다. 이번 업데이트를 통해 이 버그를 해결하기 위해 패치가 적용되었으며 ipmi는 더 이상 설명된 상황에서 중단되지 않습니다.
- BZ#1135993
- 특정 커널 변경으로 인해 TCP 세션이 제한될 때 TSQ(TCP Small Queues) 프로세스에서 나글의 알고리즘을 제대로 처리하지 않았습니다. 기본 소스 코드가 패치되어 나글의 알고리즘이 TSQ에서 올바르게 작동합니다.
- BZ#1140976
- 이번 업데이트 이전에는 오류 처리 경로의 버그로 인해 손상된 메타데이터 블록을 유효한 블록으로 사용할 수 있었습니다. 이번 업데이트를 통해 메타데이터 블록을 확인하기 위해 오류 처리 경로가 수정되고 더 많은 검사가 추가됩니다. 이제 손상된 메타데이터 블록이 발생하면 제대로 손상된 것으로 표시되고 적절하게 처리됩니다.
- BZ#1154087, BZ#1158321
- 이전에는 사용 가능한 무료 스택을 비교적 적게 사용하는 log forces가 호출 체인에서 깊이 발생했습니다. 결과적으로 (
XFS
) 파일 시스템의 스택 overflew가 예기치 않게 종료될 수 있었습니다. 이 버그를 수정하려면 로그가 작업 대기열로 강제 이동하면 스택 부족이 완화되고 시스템 충돌을 방지할 수 있습니다. - BZ#1158324
- 이번 업데이트 이전에는 TCP 전송 인터럽트를 8개의 버퍼링된 tx 프레임의 기본값보다 낮게 설정할 수 없어 특정 조건에서 ixgbe 어댑터에서 TCP 전송 지연이 발생했습니다. 이번 업데이트를 통해 코드 변경으로 인해 최소 8개의 버퍼링된 프레임 제한이 제거되어 전송이 발생할 수 있는 최소 1 프레임이 허용됩니다. 결과적으로 전송 지연이 최소화됩니다.
- BZ#1165984
- 이전에는 이더넷 100 드라이버 업데이트의 코딩 오류로 인해 특정 물리적 계층(PHY)에 대한 부적절한 초기화 및 RX 오류가 반환되었습니다. 이번 업데이트를 통해 코딩 오류가 수정되었으며 장치 드라이버가 올바르게 작동합니다.
- BZ#1158327
- 이번 업데이트 이전에는 QEMU 표준 VGA 어댑터의 색상 팔레트 레지스터 설정을 지원하지 않아 잘못된 색상이 표시되었습니다. QEMU 표준 VGA 어댑터에 대한 offb 드라이버가 업데이트되어 색상 문제가 해결되었습니다.
- BZ#1142569
- 이번 업데이트 이전에는 PCI 오류 복구 콜백과 tg3 드라이버의 ifup 및 ifdown 명령 호출 간에 여러 경쟁 조건이 발생했습니다. 트리거되면 이러한 경쟁 조건으로 인해 예기치 않은 커널 종료가 발생할 수 있습니다. 이 버그는 수정되었으며 커널이 더 이상 충돌하지 않습니다.
- BZ#1158889, BZ#1162748
- TSO(상위 분할 오프로드) 조각 처리 중에 하드웨어 버그 조건으로 인해 커널에 페이지 할당 오류가 발생하여 패킷이 전송되지 않았습니다. 이번 업데이트를 통해 TSO 조각 처리가 실패하고 패킷이 성공적으로 전송되면 더 일반적인GSO(Generic Segmentation Offload)가 폴백으로 사용됩니다.
- BZ#1163397
- 이전에는 좀비 PID 및 cgroup을 사용할 때 커널이 응답하지 않았습니다. 이 버그를 해결하기 위해 패치가 적용되었으며 커널이 더 이상 중단되지 않습니다.
- BZ#1165000
- 이전 버전에서는 특정 오류 조건에서 gfs2_converter가 on-disk inode의 di_goal_meta 필드에 잘못된 값을 도입했습니다. 그 결과 gfs2_converter는 이러한 inode에서 EBADSLT 오류를 반환했으며 일반 파일에서 디렉터리 또는 새 블록에 새 파일을 생성할 수 없었습니다. 수정으로 인해 손상된 작업이 발생하고 정상적인 작업을 진행할 경우 gfs2_converter가 합리적인 목표 값을 설정할 수 있습니다. 이번 업데이트를 통해 gfs2_converter는 손상된 목표 값을 암시적으로 수정하므로 더 이상 일반 작업이 중단되지 않습니다.
- BZ#1169403
- 이전에는 특정 오류 조건으로 인해 시스템 로그로 메시지가 전송되었습니다. 이러한 메시지는 기록되지 않고 손실되거나 반복된 메시지가 억제되지 않았습니다. 극단적인 경우 생성되는 로깅 볼륨은 시스템 잠금 또는 기타 문제가 발생할 수 있습니다. 이 버그를 해결하기 위해 관련 테스트가 취소되었으며, 자주 발생하는 메시지가 억제되고 예상대로 기록되지 않는 경우가 많습니다.
기능 개선
- BZ#1167209
- 이번 업데이트에서는 Skyhawk 하드웨어에 대한 최신 수정 사항을 Emulex be2iscsi 드라이버에 포함하여 Emulex 및 Oracle Enterprise Management (OEM) 자격의 수정 사항이 추가되었습니다.
보안 수정
- CVE-2014-5077, 중요
- Linux 커널의 SCTP(Stream Control Transmission Protocol) 구현에서 동일한 호스트 간의 동시 연결을 처리하는 방식에서 NULL 포인터 역참조 결함이 발견되었습니다. 원격 공격자는 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
버그 수정
- BZ#1110839
- 커널 신호 처리의 버그로 인해 잘못된 반올림 모드로 DFP( decimal floating point) 작업이 실행될 수 있었습니다. 결과적으로 DFP 계산에서 잘못된 결과가 반환되거나 손상될 수 있었습니다. 이번 업데이트에서는 부동 소수점 제어 레지스터에서 일부 값의 유효성을 확인하는 데 이전에 사용된 단순 비트 마스크를 교체하여 이 문제를 해결합니다. 비트 마스크는 부동 소수점 제어 레지스터의 평가판 로드로 교체됩니다.
- BZ#1140163
- 이전 버전에서는 대규모 페이지(several TB)를 많이 확보할 때 커널에 소프트 잠금 이벤트가 발생할 수 있었습니다. 이로 인해 성능 문제가 발생할 수 있습니다. 이 상황에서 컨텍스트 전환 가능성을 증가시켜 소프트 잠금 이벤트가 발생하지 않도록 메모리 관리 코드가 수정되었습니다.
- BZ#1122102
- nouveau 드라이버의 버그로 인해 시스템이 일시 중지된 후 CryostatPad W530 노트북의 기본 디스플레이가 초기화되지 않도록 할 수 있습니다. 이 문제는 시스템이 일시 중단된 동안 랩탑에 분리된 외부 화면이 있는 경우 발생했습니다. 이 문제는 DisplayPort 인터페이스와 관련된 업스트림 패치를 백포트하여 해결되었습니다.
- BZ#1139807
- IP 가상 서버(IPVS) 코드의 경합 조건으로 인해 커널은 IPVS 연결 동기화 데몬을 실행할 때 일반적인 보호 오류를 트리거할 수 있습니다. 이번 업데이트를 통해 IPVS 코드의 경쟁 조건이 해결되었으며 IPVS 데몬을 실행할 때 커널이 더 이상 충돌하지 않습니다.
- BZ#1139345
- 커널 스케줄러에서 커널 스케줄러에서 0으로 나눌 수 있기 때문에 커널에 패닉이 발생할 수 있습니다. 이 버그는 새로운 div64_ul() 분할 함수를 정의하고 proc_sched_show_task() 함수에서 영향을 받는 계산을 수정하여 수정되었습니다.
- BZ#1125980
- 일부ECDHEPad 시리즈 랩탑에서 rtsc_pci_ms 커널 모듈을 제거하면 커널 패닉이 발생할 수 있습니다. 이번 업데이트에서는 기본 드라이버 함수인 platform_uevent()의 버그를 수정하여 이 문제를 해결합니다.
- BZ#1125994
- Linux Netpoll API의 버그로 인해 시스템에 본딩 장치를 통해 netconsole 서비스가 구성된 경우 커널 oops가 발생할 수 있습니다. 이번 업데이트를 통해 netpoll_poll_dev() 함수의 잘못된 플래그 사용이 수정되었으며 이 버그로 인해 커널이 더 이상 충돌하지 않습니다.
- BZ#1127580
- 커널은 유효하지 않은 부동 소수점 제어(FPC) 레지스터로 인한 예외를 처리하지 않아 커널 oops가 발생했습니다. 이 문제는 코드에서 올바른 위치에 이러한 예외를 처리하도록 레이블을 배치하여 해결되었습니다.
- BZ#1138301
- 이전에는 특정 네트워크 장치 드라이버가 마운트 직후 ethtool 명령을 허용하지 않았습니다. 그 결과 지정된 장치 드라이버의 현재 설정이 적용되지 않았으며 오류 메시지가 반환되었습니다. CryostatTOOL_DELAY 변수가 추가되어 ethtool 유틸리티가 옵션 설정을 적용하기 전에 잠시 대기하여 버그를 수정합니다.
- BZ#1130630
- 파일 시스템의 코드를 마운트 해제하는 것과 파일 시스템 알림 코드 간의 드문 경쟁으로 인해 커널 패닉이 발생할 수 있습니다. 이번 업데이트를 통해 이 문제를 방지하기 위해 커널에 일련의 패치가 적용되었습니다.
- BZ#1131137
- BIOS 계층의 버그로 인해 시스템이 많은 RAM 메모리 조각화 조건에서 실행될 때 사용자 공간 프로그램이 데이터를 디스크에 쓰는 것을 방지할 수 있습니다. 이 문제는 페이지에 새 메모리 세그먼트를 시작하고 최대 메모리 세그먼트에 도달한 경우에만 새 메모리 페이지 추가를 거부하도록 BIOS 계층의 각 기능을 수정하여 해결되었습니다.
- BZ#1135713
- ext3 코드의 버그로 인해 fdatasync() 시스템 호출에서 파일의 메타데이터만 변경한 경우 inode 크기 변경을 디스크에 적용하지 않았습니다. 이로 인해 inode 크기가 잘못되고 시스템이 예기치 않게 종료되면 데이터가 손실될 수 있습니다. inode 업데이트가 수정되었으며 fdatasync()가 이 상황에서 예상대로 디스크에 데이터를 씁니다.
- BZ#1134258
- 이전에는 openvswitch 드라이버가 여러 VLAN 헤더가 포함된 프레임을 올바르게 처리하지 않아 커널 패닉이 발생할 수 있었습니다. 이번 업데이트에서는 문제가 해결되어 openvswitch가 이러한 프레임을 올바르게 처리하도록 합니다.
- BZ#1134696
- 이후 Intel CPU는 MSR_CORE_PERF_GLOBAL_STATUS 레지스터에 새로운 "Condition Changed" 비트를 추가했습니다. 이전에는 이 비트가 성능 인터럽트를 나타내는 것으로 잘못 가정하여 다른 NMI 처리기가 실행되고 실행되지 않았습니다. 이 문제를 해결하기 위해 perf 코드에서 이 비트를 무시하도록 커널에 패치가 적용되어 다른 NMI 핸들러를 실행할 수 있습니다.
- BZ#1135393
- virtio_net 드라이버를 통한 VLAN 장치가 TSO(TCP Segmentation Offload) 기능을 사용할 수 있게 되면 패킷 분할이 가상 시스템에서 호스트로 이동되었습니다. 그러나 일부 장치는 8021q 모듈을 사용하여 TSO를 처리할 수 없으며 패킷을 손상시키고 이로 인해 처리량이 매우 낮은 (1Mbps 미만) 및 유선을 통해 손상된 패킷 전송이 발생했습니다. 이 문제가 올바르게 해결될 때까지 TSO 기능을 사용할 수 있는 패치가 복원되었습니다. 이제 가상 머신에서 세그먼트가 다시 수행되고 네트워크 처리량이 정상입니다.
- BZ#1141165
- IP 가상 서버(IPVS) 코드의 경쟁 조건으로 인해 커널은 다른 CPU의 동일한 연결에서 패킷을 처리할 때 패닉을 유발할 수 있습니다. 이번 업데이트에서는 연결 테이블의 연결을 해시하고 해시 해제하는 코드에 누락된 스핀 잠금을 추가하고 동일한 연결의 모든 패킷이 단일 CPU에서 처리되도록 합니다.
- BZ#1129994
- 이전에는 lpfc 드라이버의 버그로 인해 Emulex 16 Gb Fibre Channel (FC) Host Bus Adapter (HBA)를 사용하는 IBM Power 8 머신의 작은 블록 임의 I/O 작업이 응답하지 않을 수 있었습니다. 이 문제를 해결하기 위해 메모리 장벽이 lpfc 코드에 추가되어 CQE 페이로드 전에 유효한 비트를 읽을 수 있습니다.
- BZ#1126681
- 브리지 장치가 구성된 시스템에서 "bridge link show" 명령을 실행하면 커널 패닉이 발생할 수 있습니다. 이는 bridge 모듈 레지스터에서 모든 RTNL 메시지 유형이 제대로 등록되지 않았기 때문에 발생했습니다. 이번 업데이트를 통해 모든 RTNL 메시지 유형이 올바르게 등록되지 않고 이 상황에서 커널 패닉이 더 이상 발생하지 않습니다.
- BZ#1114406
- 이전에는 여러 NFS 클라이언트가 쓰기 위임을 사용하여 파일에 데이터를 추가하는 경우 NFS 서버에서 올바르게 처리하지 않았으며 데이터가 손상될 수 있었습니다. 이번 업데이트에서는 관련 NFS 코드에서 NFS 캐시 유효성 검사를 조정하여 이 버그를 수정하고 이 시나리오에서 액세스한 파일에 유효한 데이터가 포함되어 있습니다.
- BZ#1131977
- 이전에는 IPv4 라우팅 코드에서 IPv4 가비지 수집기를 정확한 구성으로 여러 CPU에서 병렬로 실행할 수 있었습니다. 이로 인해 시스템의 성능이 크게 저하되고 결국 시스템이 특정 로드에 도달한 후 소프트 잠금이 발생할 수 있습니다. 이 문제를 해결하고 가비지 수집기의 성능을 개선하기 위해 수집기가 비동기적으로 실행되는 작업 큐로 이동되었습니다.
기능 개선
- BZ#1133834
- NFSv3의 exportfs 유틸리티용으로 새로운 "nordirplus" 옵션이 구현되었습니다. 이 옵션을 사용하면 사용자가 지정된 NFSv3 내보내기에 대한 READDIRPLUS 요청을 비활성화하여 특정 시나리오에서 원하지 않는 디스크 액세스를 방지할 수 있습니다.
보안 수정
- CVE-2014-0205, 중요
- futex_wait()에서 futex_wait()를 다시 쿼리할 때 Linux 커널의 futex 하위 시스템이 참조 수를 처리하는 방식에서 취약점이 발견되었습니다. 권한이 없는 로컬 사용자가 이 취약점을 사용하여 futex의 메모리 영역을 백업하는 inode 또는 mm struct의 참조 카운터를 제로하여 사용 후 결함이 발생할 수 있으므로 시스템 충돌 또는 잠재적으로 권한 상승이 발생할 수 있습니다.
- CVE-2014-3535, 중요
- VxLAN 인터페이스를 통해 들어오는 잘못된 특정 패킷을 처리하는 동안 Linux 커널의 네트워킹 구현에서 로깅을 처리하는 방식에서 NULL 포인터 역참조 결함이 발견되었습니다. 원격 공격자는 이 취약점을 악용하여 특별히 조작된 패킷을 이러한 인터페이스로 전송하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-3917, Moderate
- Linux 커널의 시스템 호출 감사 구현에서 아웃 오브 바운드 메모리 액세스 취약점이 발견되었습니다. 기존 감사 규칙이 정의된 시스템에서 권한이 없는 로컬 사용자는 이 취약점을 사용하여 커널 메모리를 사용자 공간으로 유출하거나 잠재적으로 시스템을 손상시킬 수 있습니다.
- CVE-2014-4667, Moderate
- Linux 커널의 SCTP(Stream Control Transmission Protocol) 구현에서 특정 COOKIE_ECHO 패킷을 처리하는 방식에서 정수 흐름 취약점이 발견되었습니다. 특수하게 조작된 SCTP 패킷을 전송함으로써 원격 공격자는 이 취약점을 악용하여 특정 SCTP 서버 소켓에 대한 합법적인 연결을 방지할 수 있습니다.
버그 수정
- BZ#1089359
- 이전 버전에서는 NFSv4에서 NFSv4 클라이언트가 만료된 파일 잠금을 다시 시작할 수 있었습니다. 파일을 수정하는 경우 파일이 손상될 수 있습니다. 이 문제는 NFSv4 클라이언트가 더 이상 만료된 파일 잠금을 복구하려고 시도하지 않도록 하는 일련의 패치를 통해 해결되었습니다.
- BZ#1090613
- NFSv4 코드의 잘못된 긍정 버그로 인해 잘못된 상태 ID가 복구되지 않고 NFS4ERR_BAD_STATEID 오류가 무한 루프에서 다시 대기 중인 상황이 발생할 수 있습니다. 이 문제를 해결하기 위해 NFSv4 코드에 일련의 패치가 적용되었습니다. nfs4_select_rw_stateid() 함수가 -EIO 오류를 반환하는 경우 NFS 클라이언트에서 더 이상 I/O 작업을 재시도하지 않습니다.
- BZ#1120651
- Open vSwitch 커널 모듈을 이전에 변경하면 이 모듈을 사용하는 시스템에서 커널 패닉이 발생하는 use-after-free 문제가 발생했습니다. 이번 업데이트를 통해 영향을 받는 개체가 코드의 올바른 위치에 해제되어 문제를 방지할 수 있습니다.
- BZ#1118782
- 이전에는 Huge Translation Lookaside Buffer(HugeTLB)에서 무조건 대규모 페이지에 액세스할 수 있었습니다. 그러나 대규모 페이지에서 지원하지 않는 경우 PowerPC 아키텍처의 KVM 게스트와 같은 일부 환경에서는 대규모 페이지가 지원되지 않을 수 있으며 메모리의 대규모 페이지로 기본 페이지를 사용하면 커널 oops가 발생합니다. 이번 업데이트를 통해 시스템에서 대규모 페이지가 지원되지 않는 경우 HugeTLB가 대규모 페이지에 대한 액세스를 거부합니다.
- BZ#1096397
- CLOSE 작업을 보낸 후 NFS 클라이언트에서 NFS4ERR_ADMIN_REVOKED 오류가 발생하면 NFSv4에서 잘못 처리했습니다. 그 결과 클라이언트는 NFS4ERR_ADMIN_REVOKED 오류가 수신되었지만 동일한 CLOSE 작업을 무기한 전송했습니다. NFS 클라이언트가 이 상황에서 한 번만 특정 CLOSE 작업을 보내도록 NFSv4 코드에 패치가 적용되었습니다.
- BZ#1099607
- NFS는 파일을 제거한 후 관련 inode의 링크 수를 직접 줄이기 위해 drop_nlink() 함수를 이전에 호출했습니다. 그 결과 NFS에서 inode 캐시를 다시 무효화하지 않아 오래된 파일 처리를 사용할 수 있었기 때문에 CryostatLE 오류가 발생했습니다. 파일을 제거한 후 NFS가 inode 캐시의 유효성을 검사하도록 패치가 적용되었습니다.
- BZ#1117582
- SCSI 코드를 이전에 변경하면 SCSI 장치를 제거할 때 발생할 수 있는 경합 조건이 수정되었습니다. 그러나 이러한 변경으로 인해 이후 버전의 커널과 비교하여 다른 값을 반환하는 블록 계층 코드에서 특정 함수를 사용했기 때문에 성능이 저하되었습니다. 이번 업데이트에서는 블록 계층 코드에서 반환된 값을 올바르게 활용하도록 SCSI 코드를 변경합니다.
- BZ#1102794
- 이전에는 본딩 인터페이스 상단에 구성된 브리지 인터페이스를 사용할 때 본딩 드라이버에서 브리지에 할당된 IP 주소를 인식하지 못했습니다. 결과적으로 ARP 모니터링을 사용하면 동일한 서브넷을 프로빙할 때 ARP 모니터에서 브리지의 IP 주소를 대상으로 지정할 수 없었습니다. 따라서 브리지는 항상 down으로 보고되었으며 연결할 수 없었습니다. 이번 업데이트를 통해 본딩 드라이버에서 본딩 인터페이스 상단에 구성된 브릿지에 할당된 IP 주소를 인식하고 ARP 모니터에서 브리지를 예상대로 조사할 수 있습니다. arp_validate 옵션이 사용되는 경우에도 문제가 계속 발생합니다. 이 경우 이 문제가 완전히 해결될 때까지 이 옵션을 사용하지 마십시오.
- BZ#1113824
- 캐시에 동일한 키가 있지만 다른 TOS, 마크 또는 OIF 비트가 포함된 경우 자동 경로 캐시 재구축 기능이 경로 해시 체인의 길이를 잘못 계산할 수 있었습니다. 결과적으로 이 기능이 다시 빌드 제한에 도달하여 시스템에서 라우팅 캐시를 비활성화할 수 있었습니다. 이 문제는 중복 경로 계산을 방지하는 도우미 기능을 사용하여 해결되었습니다.
- BZ#1121541
- 중지되는 동안 RAID 배열을 쓸 수 있는 경합 조건으로 인해 md 드라이버는 교착 상태가 될 수 있습니다. 교착 상태로 인해 버퍼가 디스크에 기록되지 않았으며 장치에 대한 모든 I/O 작업이 응답하지 않게 되었습니다. 이번 업데이트를 통해 md 드라이버가 수정되어 이 교착 상태를 방지할 수 있습니다.
- BZ#1112226
- Hyper-V 환경에서 게스트를 부팅하고 PIT( programmable Interval Timer) 인터럽트가 손실되었거나 시간에 게스트에 삽입되지 않은 경우 커널 패닉이 발생하고 게스트가 부팅되지 않았습니다. 이 문제는 게스트가 Hyper-V 환경에서 실행되는 경우 관련 PIT 검사를 우회하여 해결되었습니다.
보안 수정
- CVE-2014-2851, 중요
- Linux 커널의 ping_init_sock() 함수가 group_info 참조 카운터를 처리하는 방식에서 사용 후 결함이 발견되었습니다. 권한이 없는 로컬 사용자는 이 취약점을 사용하여 시스템을 충돌하거나 잠재적으로 시스템에서 권한을 에스컬레이션할 수 있습니다.
- CVE-2014-6647, Moderate
- Linux 커널의 futex 하위 시스템의 futex_wait_requeue_pi() 함수가 특정 Priority Inheritance (PI) futexes의 재쿼리를 처리하는 방식에서 NULL 포인터 역참조 결함이 발견되었습니다. 권한이 없는 로컬 사용자가 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-7339, Moderate
- Linux 커널의 RDS(Datagram Sockets) 구현의 rds_ib_laddr_check() 함수에서 NULL 포인터 역참조 결함이 발견되었습니다. 권한이 없는 로컬 사용자가 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-2672, Moderate
- 원격 공격자는 시스템의 Atheros 9k 무선 네트워크 어댑터에서 대규모 네트워크 트래픽을 생성하여 시스템을 중단하기 위해 ath_tx_aggr_sleep() 함수의 경쟁 조건 결함을 사용할 수 있습니다.
- CVE-2014-2678, Moderate
- Linux 커널의 RDS(Datagram Sockets) 구현의 rds_iw_laddr_check() 함수에서 NULL 포인터 역참조 결함이 발견되었습니다. 권한이 없는 로컬 사용자가 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-2706, Moderate
- Linux 커널의 mac80211 하위 시스템 구현에서 TX와 STA 간의 동기화를 처리하는 방식에서 경쟁 조건 취약점이 발견되었습니다. 원격 공격자는 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-3144,CVE-2014-3145, Moderate
- Linux 커널의 네트워킹 구현에서 BPF(Berkeley Packet Filter) 인터프리터 기능의 Netlink 특성 확장에서 아웃 오브 바운드 메모리 액세스 결함이 발견되었습니다. 권한이 없는 로컬 사용자는 이 취약점을 악용하여 특수하게 조작된 소켓 필터를 통해 시스템을 중단하거나 커널 메모리를 사용자 공간으로 유출할 수 있습니다.
버그 수정
- BZ#1107503
- 마운트 옵션 구문 분석기의 버그로 인해 CIFS DFS 공유의 접두사 경로가 이중 백슬래시('\\') 앞에 있을 수 있으므로 특정 환경에서 "No such file" 오류가 올바르지 않습니다. 마운트 옵션 구문 분석기가 수정되었으며 접두사 경로가 예상대로 단일 백슬래시로 시작됩니다.
- BZ#1110170, BZ#1110169, BZ#1110168, BZ#1109885, BZ#1109883
- 데이터 손상을 초래할 수 있는 몇 가지 동시성 문제는 IBM S/390 시스템에서 AES, DES 및 DES3 알고리즘에 대한 CTR 및 CBC 모드의 구현에서 발견되었습니다. 특히 작업 페이지는 CTR 모드에서 동시성 호출으로부터 보호되지 않았습니다. CTR 모드에서 작업 페이지를 가져오지 않는 대체 솔루션에서 iv 값을 올바르게 처리하지 못했습니다. 사용된 CBC 모드가 일부 동시성 상황에서 키와 iv 값을 올바르게 저장하고 복원하지 않았습니다. 이러한 모든 문제는 코드에서 해결되었으며 앞서 언급한 알고리즘을 동시에 사용하면 더 이상 데이터 손상이 발생하지 않습니다.
- BZ#1090749
- 클러스터 환경에서 게스트에서 호스트로 멀티 캐스트 트래픽이 신뢰할 수 없는 경우가 있었습니다. 이 문제를 해결하기 위한 시도는 RHSA-2013-1645 권고를 통해 이루어졌지만 이 권고에는 회귀 문제가 발생했습니다. 이번 업데이트에서는 RHSA-2013-1645에서 제공하는 이 문제의 패치를 되돌리고 문제에 대한 새로운 수정 사항을 소개합니다. 멀티캐스트 큐리어가 비활성화되고 다른 큐리어가 탐지되지 않은 경우 멀티 캐스트 패킷을 사용하여 네트워크를 플러드하여 문제가 해결되었습니다.
- BZ#1106472
- 브릿지가 하나 이상 구성된 시스템에서 브릿지를 삭제한 후 브리지 RTNL 핸들러가 잘못 제거되었습니다. 이로 인해 나머지 브리지의 멀티캐스트 IGMP 스누핑 데이터가 표시되지 않았습니다. 이번 업데이트를 통해 bridge 모듈이 언로드된 경우에만 브리지 처리기가 제거되고, 멀티캐스트 IGMP 스누핑 데이터가 이제 설명된 상황에서 올바르게 표시됩니다.
- BZ#1100574
- nouveau 커널 모듈의 버그로 인해 특정 다중 디스플레이 구성에서 잘못된 디스플레이 출력을 수정할 수 있었습니다. 결과적으로, 외부 디스플레이가 연결된 T420 및 W530 노트북에서, 이로 인해 시작 중에 LVDS 패널이 흰색으로 표시될 수 있으며, 재부팅 후 디스플레이 컨트롤러가 작동하지 않을 수 있습니다. 표시 구성을 변경하면 다양한 상황에서 버그가 트리거될 수 있습니다. 이번 업데이트를 통해 nouveau 커널 모듈이 수정되었으며 해당 구성이 이제 예상대로 작동합니다.
- BZ#1103821
- 게스트가 SMEP(Servisor Mode Execution Protection)를 지원하는 경우 KVM은 게스트 페이지 테이블 항목(sptes)에 적절한 권한 비트를 설정하여 SMEP 강제 액세스를 에뮬레이션합니다. 이전에는 KVM에서 게스트 cr4 레지스터 대신 "smep" 비트가 호스트 cr4 레지스터에 설정되어 있는지 잘못 확인했습니다. 그 결과 호스트가 SMEP를 지원하는 경우 요청되지 않은 경우에도 적용되어 게스트 시스템을 부팅할 수 없게 되었습니다. 이번 업데이트에서는 "smep"비트 검사와 게스트 시스템 부팅이 이 시나리오에서 예상대로 올바르게 부팅됩니다.
- BZ#1096059
- 이전 버전에서는 hrtimer 인터럽트가 지연된 경우 동일한 프로세서에서 대기 중인 모든 보류 중인 hrtimer 이벤트도 초기 hrtimer 이벤트가 처리될 때까지 지연되었습니다. 이로 인해 모든 hrtimer 처리가 상당한 기간 동안 중단될 수 있습니다. 이 문제를 방지하기 위해 커널은 처음 지연된 hrtimer 이벤트를 처리할 때 만료된 모든 hrtimer 이벤트를 처리하도록 수정되었습니다.
- BZ#1099725
- 이전에는 하드웨어가 태그된 순서가 아니라 FIFO 순서대로 드라이버에서 보내는 명령을 실행할 수 있었습니다. 따라서 명령은 순서대로 실행될 수 있으므로 대기 시간이 크고 처리량 저하가 발생할 수 있습니다. 이번 업데이트를 통해 하드웨어로 전송되는 각 명령에 ATA 하위 시스템에 태그를 지정하여 하드웨어가 태그된 순서로 명령을 실행합니다. 태그된 명령을 지원하는 컨트롤러의 성능은 30-50%까지 증가할 수 있습니다.
- BZ#1107931
- GRE 터널링 코드의 버그로 인해 사용자 지정 이름으로 GRE 터널을 생성할 수 없었습니다. 이번 업데이트에서는 ip_tunnel_find() 함수의 동작이 수정되어 사용자가 사용자 지정 이름으로 GRE 터널을 생성할 수 있습니다.
- BZ#1110658
- qla2xxx 드라이버가 버전 8.05.00.03.06.5-k2로 업그레이드되었으며, 이 경우 기존 버전에 대해 다양한 시간 초과 문제를 해결하기 위해 이전 버전에 대한 여러 버그 수정을 제공합니다.
- BZ#1093984
- 추적 클럭이 추적 중에 변경된 경우 이전에 커널이 커널 링 버퍼를 재설정하지 않았습니다. 그러나 새 클럭 소스는 이전 클럭 소스와 일치하지 않을 수 있으며 결과 추적 레코드에는 비교할 수 없는 타임스탬프가 포함될 수 있습니다. 추적 레코드에 일치하지 않는 타임스탬프만 포함되도록 추적 시계가 변경될 때마다 링 버퍼가 재설정됩니다.
- BZ#1103972
- 이전에는 KVM이 호스트 PCI 장치에 대해 PCI 도메인(세그먼트) 번호를 허용하지 않아 0이 아닌 PCI 세그먼트의 일부인 PCI 장치를 가상 머신에 할당할 수 없었습니다. 이 문제를 해결하기 위해 KVM은 슬롯, 장치 및 기능 번호 외에 PCI 도메인 번호를 허용하도록 확장되었습니다.
기능 개선
- BZ#1094403
- 이제 사용자는 팩별로 IPv4에서 ToS, TTL 및 우선순위 값을 설정할 수 있습니다.
보안 수정
- CVE-2014-3153, 중요
- Linux 커널의 futex 하위 시스템이 특정 Priority Inheritance(PI) futexes의 대기열을 처리하는 방식에서 취약점이 발견되었습니다. 권한이 없는 로컬 사용자는 이 취약점을 사용하여 시스템에서 권한을 에스컬레이션할 수 있습니다.
- CVE-2014-1737, 중요
- Linux 커널의 플로피 드라이버가 FDRAWCMD IOCTL 명령을 처리하는 동안 특정 오류 코드 경로에서 데이터를 처리하는 방식에서 취약점이 발견되었습니다. /dev/fdX에 대한 쓰기 액세스 권한이 있는 로컬 사용자는 이 취약점을 사용하여 임의의 커널 메모리를 무료로 사용할 수 있습니다.
- CVE-2014-1738, Low
- Linux 커널의 플로피 드라이버는 FDRAWCMD IOCTL 명령을 처리하는 동안 내부 커널 메모리 주소를 사용자 공간으로 유출했습니다. /dev/fdX에 대한 쓰기 액세스 권한이 있는 로컬 사용자는 이 취약점을 사용하여 커널 힙 배열에 대한 정보를 얻을 수 있습니다.
- 참고/dev/fdX에 대한 쓰기 액세스 권한이 있는 로컬 사용자는 이러한 두 가지 결함 (CVE-2014-1737을 CVE-2014-1738)과 함께 사용하여 시스템에서 권한을 에스컬레이션할 수 있습니다.
- CVE-2014-0203, Moderate
- proc_ns_follow_link() 함수가 procfs 심볼릭 링크에서 예상되는 마지막 pathname 구성 요소에서 LAST_BIND 값을 올바르게 반환하지 않아 메모리가 과도하게 해제되고 결과적인 slab 손상이 발생할 수 있습니다. 권한이 없는 로컬 사용자가 이 취약점을 악용하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-2039, Moderate
- 사용자 공간 애플리케이션이 링크 스택을 사용하려고 할 때 Linux 커널이 예외를 처리하는 방식에서 취약점이 발견되었습니다. IBM S/390 시스템에서 권한이 없는 로컬 사용자는 이 취약점을 사용하여 시스템을 손상시킬 수 있습니다.
- CVE-2013-6378, Low
- Linux 커널의 Marvell 8xxx Libertas Cryostat(libertas) 드라이버에서 잘못된 포인터 역참조 결함이 발견되었습니다. libertas 드라이버에서 제공하고 디버그 파일 시스템(debugfs)에 있는 파일에 쓸 수 있는 로컬 사용자는 이 결함을 사용하여 시스템을 손상시킬 수 있습니다. 참고: 이 문제를 악용하려면 debugfs 파일 시스템을 로컬로 마운트해야 합니다. 기본적으로 마운트되지 않습니다.
- CVE-2014-1874, Low
- Linux 커널의 SELinux 구현에서 빈 SELinux 보안 컨텍스트를 사용하여 파일을 처리하는 방식에서 서비스 거부 취약점이 발견되었습니다. CAP_MAC_ADMIN 기능이 있는 로컬 사용자는 이 결함을 사용하여 시스템을 손상시킬 수 있습니다.
버그 수정
- BZ#1086839
- lpfc 드라이버의 ndlp 목록 손상 버그로 인해 Emulex LPe16002B-M6 PCIe 2포트 16Gb 파이버 채널 어댑터가 있는 시스템은 I/O 작업 중에 커널 패닉이 발생할 수 있습니다. 이 문제를 해결하기 위해 일련의 패치가 백포트되어 앞서 언급한 시스템의 I/O 작업 중에 커널이 더 이상 패닉되지 않습니다.
- BZ#1096214
- 이전 변경 활성화는 브리지 인터페이스에 구성된 VLAN 인터페이스에 대한 가속화를 수신합니다. 그러나 이러한 변경으로 인해 VLAN 태그가 지정된 패킷이 브릿지를 우회하고 VLAN 인터페이스에 직접 전달할 수 있었습니다. 이번 업데이트에서는 해당 브리지에 구성된 VLAN 인터페이스에 전달하기 전에 브리지에서 트래픽을 올바르게 처리하도록 합니다.
- BZ#1090750
- 글로벌 클럭 업데이트를 도입한 이전 변경으로 TSC(Time Stamp Cryostat)가 불안정한 것으로 표시되면 게스트 머신이 느리게 부팅되었습니다. 할당된 vCPU 수에 따라 속도 저하가 증가했습니다. 이 문제를 해결하기 위해 글로벌 클럭 업데이트 속도를 제한하기 위해 패치가 적용되었습니다.
- BZ#1094287
- ixgbevf 드라이버의 버그로 인해 ixgbevf 인터페이스에서 들어오는 패킷에서 제거된 VLAN 정보가 손실될 수 있으므로 이러한 패킷은 관련 VLAN 인터페이스에 도달하지 못했습니다. 이 문제는 패킷의 VLAN 정보를 네트워크 스택에 전달하기 전에 소켓 버퍼(skb)에 추가하여 해결되었습니다. 결과적으로 ixgbevf 드라이버는 이제 VLAN 태그된 패킷을 적절한 VLAN 인터페이스에 전달합니다.
- BZ#1089915
- 블록 장치 코드에서 완료와 시간 초과 처리 간의 경쟁 조건으로 인해 BUG_ON() 어설션이 트리거되어 커널 패닉이 발생할 수 있습니다. 이번 업데이트에서는 코드에서 관련 함수 호출 및 BUG_ON() 어설션을 재배치하여 이 문제를 해결합니다.
- BZ#1088779
- NFS 파일 시스템을 사용하는 시스템은 응답하지 않거나 nfsd 데몬의 DRC(복제 응답 캐시) 코드에서 use-after-free 버그로 인해 커널 oop를 트리거할 수 있습니다. 이 문제는 nfsd를 사용하기 전에 해시 해제 DRC 항목으로 수정하고 목록에서 만료된 항목을 재사용하는 대신 slab에서 새 DRC 항목을 할당하는 것을 선호하여 해결되었습니다.
- BZ#1092002
- 파일 시스템 할당량 위반으로 인해 devfile2 파일 시스템에서 파일을 생성하려고 하면 관련 VFS inode가 완전히 초기화되지 않았습니다. 이로 인해 목록 손상 오류가 발생할 수 있습니다. 이번 업데이트에서는 이 상황에서 VFS inode를 올바르게 초기화 해제하여 이 문제를 해결합니다.
- BZ#1069630
- 이전에는 시스템 시작 시 직접 또는 오프셋 마운트 유형으로 마운트하기 위해 다시 연결하려고 할 때 자동으로 응답하지 않을 수 있었습니다. 이는 장치 ioctl 코드가 관련 호출자가 아직 마운트를 소유하지 않은 경우 상황을 처리하지 않았기 때문에 발생했습니다. 또한 umount() 명령이 오래된 루트를 사용하여 NFS 파일 시스템을 마운트 해제하지 못하는 경우가 있습니다. 두 가지 문제는 가상 파일 시스템 코드에서 해결되었으며, 이제 새로운 조회 함수인 kern_path_mountpoint()를 사용하여 직접 마운트 또는 오프셋 마운트를 마운트할 수 있습니다. umount() 명령은 revalidation 없이 마운트 지점을 처리하므로 명령이 오래된 루트를 사용하여 NFS 파일 시스템을 마운트 해제할 수 있습니다.
- BZ#1091424
- 커널은 환경 및 전원 경고(EPOW) 인터럽트를 올바르게 처리하지 않았습니다. 이로 인해 IBM POWER8 시스템에서 게스트를 종료하기 위해 "virsh shutdown" 명령을 성공적으로 사용할 수 없었습니다. 이번 업데이트를 통해 커널에서 EPOW 이벤트를 올바르게 처리하고 해당 EPOW 이벤트에 대한 정보 설명도 출력합니다. 발생한 각 EPOW에 대한 자세한 정보는 RAS(Real-Time Abstraction Service) 오류 로그를 참조하십시오.
- BZ#1081915
- cgroup 코드의 경쟁 조건으로 인해 cgroup 간에 종료 작업을 이동할 때 커널 작업 스케줄러에서 커널 패닉을 유발할 수 있습니다. cgroup 코드에서 잘못된 함수 호출을 교체하여 이 커널의 패닉을 방지하기 위해 패치가 적용되었습니다.
- BZ#1081909
- cgroup 코드에 함수 호출을 잘못 배치하여 notify_on_release 기능이 제대로 작동하지 않았습니다. 이 기능은 빈 cgroup 디렉토리를 제거하는 데 사용되지만 이 버그로 인해 일부 빈 cgroup 디렉터리가 시스템에 남아 있었습니다. 이번 업데이트를 통해 cgroup_task_migrate() 함수의 작업을 올바르게 정렬하여 notify_on_release 기능이 항상 올바르게 트리거됩니다.
- BZ#1081914
- cgroup 코드의 경쟁 조건으로 인해 cgroup 간에 종료 작업을 이동할 때 커널 작업 스케줄러에서 사용 없는 버그가 트리거될 수 있으므로 커널 패닉 상태가 발생했습니다. 이번 업데이트에서는 새 함수 cpu_cgroup_exit()을 도입하여 커널 패닉을 방지합니다. 이 기능을 사용하면 커널이 아직 비어 있지 않은 cgroup을 릴리스하지 않습니다.
- BZ#1079869
- hrtimers 하위 시스템의 버그로 인해, clock_was_set() 함수는 소프트 IRQ 컨텍스트에서 IPI(inter-processor interrupt)를 호출하고 완료를 기다리며, 이로 인해 교착 상태가 발생할 수 있습니다. clock_was_set() 함수 호출을 작업 컨텍스트로 이동하여 이 문제를 해결하기 위해 패치가 적용되었습니다. 또한 다시 시작 프로세스 중에 hrtimers_resume() 함수는 다른 모든 CPU가 오프라인이라고 가정하기 때문에 현재 CPU에 대해서만 프로그래밍된 커널 타이머를 다시 프로그래밍합니다. 그러나 일부 부팅되지 않은 CPU를 사용하는 CPU를 다시 시작할 때 IRQs가 비활성화된 상태에서만 중지되는 경우와 같이 특정 시나리오에서는 이러한 가정이 올바르지 않았습니다. 그 결과 해당 CPU가 온라인 상태인 경우에도 커널 타이머는 부팅 CPU 이외의에서 수정되지 않았습니다. 이 문제를 해결하기 위해 hrtimers_resume()가 수정되어 초기 소프트 IRQ가 온라인 상태인 모든 CPU에서 커널 타이머를 올바르게 다시 프로그래밍합니다.
- BZ#1080104
- txselect 매개변수 형식을 변경한 이전 변경으로 인해 InfiniBand qib 드라이버는 HP Blade 서버에서 HP 브랜드 QLogic QDR InfiniBand 카드를 지원할 수 없었습니다. 이 문제를 해결하기 위해 드라이버의 구문 분석 루틴인 setup_txselect()가 다중 값 문자열을 처리하도록 수정되었습니다.
- BZ#1075653
- VFS(가상 파일 시스템) 코드를 이전 변경으로 PATH_MAX 변수 32바이트 감소가 포함됩니다. 그러나 이 변경 사항은 getname()과 do_getname() 함수 간의 상호 작용에 부정적인 영향을 준 do_getname() 함수로 전파되지 않았습니다. 이번 업데이트에서는 do_getname()이 적절하게 수정되고 이 기능이 이제 예상대로 작동합니다.
- BZ#1082622
- 이전 버전에서는 여러 Blade 서버가 있는 HP BladeSystem Enclosure와 같은 특정 환경에서 kdump 커널은 사용 가능한 인터럽트 벡터 부족으로 인해 커널 패닉이 발생하거나 부팅 중에 응답하지 않을 수 있었습니다. 그 결과 kdump에서 코어 덤프를 캡처하지 못했습니다. 사용 가능한 인터럽트 벡터 수를 늘리기 위해 kdump 커널은 더 많은 CPU로 부팅할 수 있습니다. 그러나 kdump 커널은 항상 부트스트랩 프로세서(BSP)로 부팅하려고 하므로 특정 상황에서 커널이 두 개 이상의 CPU를 가져오지 못할 수 있습니다. 이번 업데이트에서는 새로운 커널 매개변수 disable_cpu_acipid가 도입되어 kdump 커널이 부팅 중에 BSP를 비활성화한 다음 여러 프로세서로 성공적으로 부팅할 수 있습니다. 이렇게 하면 많은 장치가 있는 시스템에서 사용 가능한 인터럽트 벡터 부족 문제가 해결되어 kdump가 이러한 시스템에서 코어 덤프를 성공적으로 캡처할 수 있습니다.
- BZ#1091826
- 커널 스케줄러에 대한 이전 패치는 init_numa_sched_groups_power() 함수의 split-by-zero 버그로 인한 커널 패닉을 해결했습니다. 그러나 이 패치는 표준 NUMA(Non-Uniform Memory Access) 토폴로지가 있는 시스템에 회귀를 도입하여 cpu_power를 제외한 하나의 NUMA 도메인이 예상 값의 두 배로 설정되었습니다. 이로 인해 처리할 대기 중인 작업이 충분하더라도 잘못된 작업 예약 및 일부 프로세서가 유휴 상태로 유지되어 시스템 성능에 부정적인 영향을 미쳤습니다. 이번 업데이트를 통해 지정되지 않은 모든 CPU.Task 스케줄링에 대한 cpu_power를 cpu_power에 추가하여 표준 NUMA 토폴로지가 있는 시스템의 cpu_power가 해당 버그와 관련된 성능 문제 없이 이러한 시스템에서 예상대로 작동합니다.
- BZ#1092870
- Cryostat_NEWLINK 메시지는 지정된 네트워크 인터페이스(NIC)에 대한 모든 VF(가상 기능)에 대한 정보를 포함할 수 있으며, 이 정보가 필터링되지 않으면 매우 커질 수 있습니다. 이전에는 커널 netlink 인터페이스를 통해 getifaddr() 함수가 필터링되지 않은 콘텐츠로 Cryostat_NEWLINK 메시지를 처리할 수 있었습니다. 특정 상황에서 커널 netlink 인터페이스는 지정된 NIC 그룹에 대한 데이터를 생략하여 getifaddr()이 무기한 루프가 영향을 받는 NIC에 대한 정보를 반환할 수 없습니다. 이번 업데이트에서는 필터링된 콘텐츠가 있는 Cryostat_NEWLINK 메시지만 제공하여 이 문제를 해결합니다.
- BZ#1063508
- ext4_releasepage() 함수는 PageChecked 플래그가 설정된 페이지를 전달할 때 이전에 불필요한 경고 메시지를 전송했습니다. 커널 로그에서 관련 경고를 방지하기 위해 이번 업데이트에서는 ext4 코드에서 관련 WARN_ON()을 제거합니다.
- BZ#1070296
- Microsoft Windows 7 KVM 게스트는 페이지 결함을 처리할 때 KVM이 게스트에 NMI(Non-Maskable Interrupt)를 삽입하지 않았기 때문에 재부팅 중에 응답하지 않을 수 있었습니다. 이 문제를 해결하기 위해 KVM 코드에 일련의 패치가 적용되어 게스트 시스템을 재부팅하는 동안 KVM이 예상대로 페이지 오류를 처리하도록 합니다.
- BZ#1096711
- turbostat 유틸리티는 4세대 Intel Core Processors가 있는 시스템에서 사용할 때 오류 메시지를 생성했습니다. 이 문제를 해결하기 위해 커널은 C8, C9 및 C10 C-states에 대한 C 상태 레지던스 정보를 제공하도록 업데이트되었습니다.
보안 수정
- CVE-2014-2523, 중요
- Linux 커널의 DCCP(Datagram Congestion Control Protocol) 패킷 구현에서 skb_header_pointer() 함수를 사용하는 방식에서 취약점이 발견되었습니다. 원격 공격자는 이 취약점을 악용하여 특수하게 조작된 DCCP 패킷을 전송하여 시스템을 중단하거나 시스템에서 권한을 상승시킬 수 있습니다.
- CVE-2014-6383, Moderate
- Linux 커널의 Adaptec RAID 컨트롤러(aacraid)가 compat IOCTLs 권한을 확인하는 방식에서 취약점이 발견되었습니다. 로컬 공격자는 이 취약점을 악용하여 의도된 보안 제한을 우회할 수 있습니다.
- CVE-2014-0077, Moderate
- 병합 가능한 버퍼를 비활성화할 때 handle_rx() 함수가 대규모 네트워크 패킷을 처리하는 방식에서 취약점이 발견되었습니다. 권한이 있는 게스트 사용자는 이 취약점을 악용하여 호스트의 QEMU 프로세스 메모리를 중단하거나 손상된 경우 QEMU 프로세스의 권한이 있는 호스트에서 임의의 코드를 실행할 수 있습니다.
버그 수정
- BZ#1078007
- 최근 Linux 메모리 관리의 변경으로 인해 CPU를 핫플러그 해제할 때 커널에서 CPU당 LRU 페이지 벡터를 올바르게 처리하지 않았습니다. 결과적으로 관련 오프라인 CPU의 페이지 벡터는 메모리 계산을 위해 메모리 페이지를 보관했습니다. 이로 인해 libvirtd 데몬이 시스템 종료 시 관련 메모리 cgroup 디렉터리를 제거하지 않아 libvirtd 응답하지 않습니다. 이 문제를 해결하기 위해 Linux 메모리 관리에서 관련 페이지 벡터에서 오프라인 CPU의 메모리 페이지를 올바르게 플러시합니다.
- BZ#1063201
- d_splice_alias() 함수의 최근 변경 사항에는 d_splice_alias()가 조회 중인 디렉터리와 다른 디렉터리에서 dentry를 반환하도록 허용하는 버그가 도입되었습니다. 이로 인해 클러스터 환경에서 다른 클러스터 노드의 이 디렉터리에서 동시에 디렉터리 간 작업을 수행하는 동안 디렉터리가 제거될 때 커널 패닉이 트리거될 수 있었습니다. 이번 업데이트에서는 d_splice_alias() 함수의 검색 논리를 수정하여 이 상황에서 커널 패닉을 방지하여 함수가 더 이상 잘못된 디렉터리에서 dentry를 반환하지 않습니다.
- BZ#1086095
- 실시간(RT) 스케줄러가 CPU 간에 RT 작업을 이동하고 wakeup_kswapd() 함수가 여러 CPU에서 호출되어 커널 패닉이 발생할 때 시스템의 교착 상태가 발생할 수 있습니다. 이 문제는 문제가 있는 메모리 할당을 제거하여 해결되어 교착 상태가 안전한 컨텍스트에서 wakeup_kswapd() 함수를 호출합니다.
- BZ#1086007
- 이전에는 dm-thin, dm-space-map-metadata 및 dm-bufio와 같은 일부 장치 매퍼 커널 모듈에 적절한 기능에 부정적인 영향을 미치는 다양한 버그가 포함되어 있었습니다. 이번 업데이트에서는 장치 mapper thin provisioning (thinp)의 메타데이터 크기 조정 기능 수정 및 dm-thin 및 dm-bufio의 읽기 전용 모드에 대한 수정 사항을 포함하여 이러한 문제를 해결하는 여러 업스트림 패치를 백포트합니다. 결과적으로 앞서 언급한 커널 모듈에 최신 업스트림 변경 사항이 포함되어 예상대로 작동합니다.
- BZ#1066535
- 새로운 함수 release_cb()로 "proto" 구조를 확장한 TCP 코드의 이전 변경으로 인해 kABI(커널 애플리케이션 바이너리 인터페이스)의 무결성이 손상되었습니다. 이전 커널 헤더에 대해 컴파일된 모듈에 대해 이 함수를 새로 도입한 코어 스택이 있으면 호출로 인해 아웃 오브 바운드 액세스 및 후속 커널 패닉이 발생했습니다. 이 문제를 방지하기 위해 코어 스택이 새로 도입된 slab 플래그인 RHEL_EXTENDED_PROTO를 인식하도록 수정되었습니다. 이를 통해 코어 스택은 이를 지원하는 모듈에 대해서만 release_cb 포인터에 안전하게 액세스할 수 있습니다.
- BZ#1083350
- CFS(Completely Fair Scheduler)는 CFS 실행 대기열에서 작업을 제한하는 동안 CFS 기간 타이머가 실행 중인지 확인하지 않았습니다. 따라서 특정 상황에서 CFS 기간 타이머가 비활성화되어 다시 시작할 수 없기 때문에 CFS 실행 대기열이 중단되었습니다. 이 문제를 해결하기 위해 CFS는 비활성인 경우 제한 함수 내에서 CFS 기간 타이머를 다시 시작합니다.
- BZ#1073562
- 이전 변경으로 인해 메모리 영역 회수 논리의 NUMA 노드 할당 문제를 해결하기 위해 Linux 메모리 관리 코드에서 ZONE_RECLAIM_LOCKED 플래그를 제거했습니다. 그러나 플래그 제거로 인해 시스템 로드가 많은 하나의 메모리 영역 내에서 동시 페이지 회수가 가능하여 원하지 않는 회전 잠금 경합 및 후속 성능 문제가 발생했습니다(시스템이 느려지거나 응답하지 않음). 이번 업데이트에서는 영역이 스캔 요구 사항을 충족하지 않는 경우 메모리 영역을 회수하지 못하도록 이 문제를 해결합니다. 부하가 많은 시스템은 더 이상 CPU 과부하가 발생하지 않고 예상 성능을 유지할 수 있습니다.
- BZ#1073564
- 압축을 사용한 메모리 회수에 대한 재시작 논리가 이전에 LRU 페이지 벡터 수준에 적용되었습니다. 그러나 메모리 압축에는 특정 cgroup의 메모리 페이지뿐만 아니라 전체 메모리 영역만 필요하지 않기 때문에 메모리 할당 대기 시간이 크게 발생할 수 있습니다. 이 성능 문제는 재시작 논리를 영역 수준으로 이동하고 압축 파일에 영역에 더 많은 사용 가능한 페이지가 필요한 경우 영역의 모든 메모리 cgroup에 대한 메모리 회수를 다시 시작하여 해결되었습니다.
- BZ#1074855
- 이전에는 for_each_isci_host() 매크로가 잘못 정의되어 2-element 배열의 범위를 벗어난 요소에 액세스했습니다. 이 매크로는 GCC 4.8에 의해 잘못 최적화되어 두 개의 SCU 컨트롤러가 있는 플랫폼에서 너무 여러 번 실행되었습니다. 결과적으로 isci 모듈을 제거할 때 시스템이 S3 상태 또는 커널 oops를 입력할 때 커널 패닉이 발생했습니다. 이번 업데이트에서는 앞서 언급한 매크로를 수정하고 설명된 문제가 더 이상 발생하지 않습니다.
- BZ#1083175
- vmxnet3 드라이버의 버그로 인해 netconsole 모듈과 함께 드라이버를 사용할 때 잠재적인 경쟁 조건을 트리거할 수 있었습니다. 경쟁 조건을 통해 드라이버의 내부 NAPI 폴링 루틴이 netpoll 컨트롤러 루틴과 동시에 실행되어 데이터 손상 및 후속 커널 패닉이 발생했습니다. 이 문제를 해결하기 위해 적절한 인터럽트 처리기를 호출하여 NAPI 폴링 요청을 올바르게 예약하도록 vmxnet3 드라이버가 수정되었습니다.
- BZ#1081908
- 커널 작업 스케줄러는 CPU cgroups를 통해 작업을 마이그레이션하는 동안 경쟁 조건을 트리거할 수 있습니다. 경합으로 인해 잘못된 상위 작업 그룹을 가리키는 작업에 액세스하여 시스템이 예기치 않게 동작할 수 있습니다(예: 응답하지 않음). 이 문제는 작업 마이그레이션 중에 올바른 작업 그룹 정보가 올바르게 저장되도록 하여 해결되었습니다.
- BZ#1076056
- XFS 코드에 이전 백포트된 패치는 xlog_cil_empty() 함수에 무조건 호출을 추가했습니다. 지원되지 않는 nodelaylog 옵션으로 XFS 파일 시스템을 마운트한 경우 해당 호출로 인해 초기화되지 않은 스핀 잠금 및 연속 커널 패닉에 액세스할 수 있었습니다. 이 문제를 방지하기 위해 nodelaylog 옵션이 비활성화되어 있습니다. 옵션은 계속 허용되지만 더 이상 적용되지 않습니다. (nodelaylog 마운트 옵션은 원래 업스트림 테스트 옵션으로 사용되었으며 이후 제거되었습니다.)
- BZ#1076242
- SCTP sctp_connectx() ABI가 32비트 에뮬레이션으로 컴파일된 64비트 커널에서는 제대로 작동하지 않았습니다. 그 결과 sctp_connectx() 함수를 사용하는 애플리케이션이 이 경우 실행되지 않았습니다. 이 문제를 해결하기 위해 새로운 ABI가 구현되었습니다. COMPAT ABI는 COMPAT 특정 구조에서 SCTP 특정 구조로 사용자 데이터를 복사하고 변환할 수 있습니다. sctp_connectx()가 필요한 애플리케이션은 이제 32비트 에뮬레이션으로 컴파일된 64비트 커널이 있는 시스템의 문제 없이 작동합니다.
- BZ#1085660
- qla2xxx 드라이버의 버그로 인해 커널이 충돌했습니다. 이번 업데이트에서는 qla2x00_alloc_iocbs() 함수의 "for" 문에 잘못된 조건을 수정하여 이 문제를 해결합니다.
- BZ#1079870
- 패킷 소켓을 생성하고 바인딩하는 코드는 최적화되지 않았으므로 socket() 및 bind() 시스템 호출을 사용하는 애플리케이션이 예상대로 작동하지 않았습니다. 특정 경우에는 소켓 생성 및 바인딩 대기 시간이 크게 단축되도록 패킷 소켓 코드에 패치가 적용되었습니다.
- BZ#1077874
- 이전에는 명령이 중단된 후 vmw_pwscsi 드라이버에서 SCSI 중간 계층에 대한 명령을 완료할 수 있었습니다. 이로 인해 이중 완료 버그와 후속 커널 패닉이 발생했습니다. 이번 업데이트를 통해 pvscsi_abort() 함수가 중단이 완료된 후에만 SUCCESS를 반환하도록 하여 드라이버가 잘못된 명령을 시도하지 않도록 합니다.
- BZ#1085658
- mlx4_en 모듈의 버그로 인해 타임스탬프와 관련된 데이터 구조에 초기화되기 전에 액세스할 수 있었습니다. 그 결과 mlx4_en 로드로 인해 커널이 충돌할 수 있었습니다. 이 문제는 타임스탬프 메커니즘의 시작을 코드의 올바른 위치로 이동하여 해결되었습니다.
- BZ#1078011
- GRE(Generic Routing Encapsulation) 터널링 코드를 리팩토링하는 이전 변경으로 인해 ip_gre 모듈이 제대로 작동하지 않았습니다. 그 결과,GRE 인터페이스는 Explicit Congestion Notification (ECN) 비트가 설정된 모든 패킷을 삭제했으며 ECN-Capable Transport (ECT) 비트가 설정되지 않았습니다. 이번 업데이트에서는 제대로 구현되지 않은 IP_ECN_decapsulate() 함수 대신 현재 사용되는 ipgre_ecn_decapsulate() 함수를 다시 도입합니다. 이제 ip_gre 모듈이 올바르게 작동하고 GRE 장치가 모든 패킷을 예상대로 처리합니다.
- BZ#1078641
- megaraid_sas 드라이버의 버그로 인해 드라이버가 하드웨어 상태 값을 잘못 읽을 수 있습니다. 결과적으로 시스템 부팅 중에 RAID 카드가 비활성화되었으며 시스템을 부팅하지 못할 수 있었습니다. 이번 업데이트를 통해 megaraid_sas 드라이버가 수정되어 예상대로 시스템 부팅 시 RAID 카드가 활성화됩니다.
- BZ#1081907
- CFS(Completely Fair Scheduler)의 버그는 특정 상황에서 cgroup 간에 포크 작업을 이동하는 동안 경쟁 조건을 트리거할 수 있습니다. 이 경합으로 인해 상위 작업의 오래된 cgroup을 가리키는 동안 하위 작업에 액세스할 때 사용 가능한 무료 오류와 후속 커널 패닉이 발생할 수 있습니다. CFS에 패치가 적용되어 하위 작업이 항상 유효한 상위 작업 그룹을 가리키도록 합니다.
- BZ#1078874
- 이전에 Red Hat Cryostat2 파일 시스템으로 인해 inode당 여러 ACL 항목이 25개로 제한되었습니다. 그러나 경우에 따라 setfacl 명령이 실패하는 경우도 있었습니다. 이번 업데이트에서는 이 제한을 4KB 블록 크기의 최대 300개의 ACL 항목으로 늘립니다. 블록 크기가 작으면 그에 따라 이 값이 조정됩니다.
- BZ#1085358
- CIFS 코드에 대한 이전 패치로 인해 사용자가 포트 139에서 NetBIOS over TCP 서비스를 사용하여 CIFS 공유를 마운트할 수 없는 회귀 문제가 발생했습니다. 이 문제는 get_rfc1002_length() 함수의 상위 바이트를 마스킹하여 해결되었습니다.
- BZ#1079872
- 이전에는 libcap과 같은 사용자 공간 패킷 캡처 라이브러리에서 현재 커널에서 지원하는 BPF(Berkeley Packet Filter) 확장을 결정할 수 있는 제한된 가능성이 있었습니다. 이 제한은 tcpdump 유틸리티에서 수행하는 VLAN 패킷 필터링에 부정적인 영향을 미치며 tcpdump에서 필터링된 패킷을 올바르게 캡처하지 못하는 경우가 있었습니다. 따라서 이 업데이트에는 getsockopt() 함수의 인수로 지정할 수 있는 새로운 옵션 SO_BPF_EXTENSIONS가 도입되었습니다. 이 옵션을 사용하면 패킷 캡처 도구가 현재 커널에서 지원하는 BPF 확장에 대한 정보를 얻을 수 있습니다. 결과적으로 tcpdump 유틸리티는 이제 패킷을 올바르게 캡처할 수 있습니다.
- BZ#1080600
- isci 드라이버는 이전에 sci_apc_agent_link_up() 함수의 하드 재설정 시간 초과인 경우 erroneous BUG_ON() 어설션을 트리거했습니다. SATA 장치가 재설정 후 시간 내에 링크를 복원할 수 없는 경우 isci 포트가 "awaiting link-up" 상태로 돌아가야 했습니다. 그러나 이러한 경우 포트가 "재설정" 상태에 있지 않아 커널 패닉이 발생할 수 있습니다. 이 문제는 잘못된 BUG_ON() 어설션을 제거하여 해결되었습니다.
- BZ#1078798
- 이전에는 인터페이스에서 IPv6 주소를 제거할 때 해당 주소와 관련된 연결할 수 없는 경로가 IPv6 라우팅 테이블에서 제거되지 않았습니다. 이는 IPv6 코드에서 경로를 검색할 때 부적절한 기능을 사용하기 때문에 발생했습니다. 이 문제를 방지하기 위해 이 상황에서 rt6_lookup() 대신 ip6_route_lookup() 함수를 사용하도록 IPv6 코드가 수정되었습니다. IPv6 주소를 제거할 때 이제 모든 관련 경로가 라우팅 테이블에서 올바르게 삭제됩니다.
- BZ#1075651
- BIOS에서 시스템 부팅 중에 지정된 열 영역에 대한 중요한 트립 지점에 대한 음수 값을 반환하면 전체 열 영역이 무효화되고 ACPI 오류가 출력되었습니다. 그러나 열적 영역은 여전히 충돌에 필요할 수 있습니다. 이번 업데이트를 통해 ACPI 열 관리가 이 상황에서 관련 중요한 트립 포인트를 비활성화하도록 수정되었습니다.
- BZ#1075554
- 커널 메모리를 할당할 때 sizeof() 함수라는 SCSI 장치 핸들러와 구조 이름을 인수로 사용합니다. 그러나 수정된 파일은 잘못된 구조 이름을 사용했기 때문에 메모리가 할당되지 않고 메모리 손상이 발생했습니다. 이번 업데이트에서는 관련 sizeof() 함수 호출을 수정하여 이제 메모리가 항상 올바르게 할당되도록 구조 이름 대신 구조에 대한 포인터를 사용합니다.
- BZ#1069848
- 파일 시스템 링크 작업에서 CryostatLE 오류 코드를 반환한 경우 linkat() 시스템 호출이 마운트 지점 참조 누수와 후속 메모리 누수를 도입했습니다. 이러한 문제는 이러한 경우 이전 마운트 지점 참조를 적절하게 해제하여 해결되었습니다.
- BZ#1086490
- dm-bufio 드라이버는 blk_unplug() 함수를 호출하여 플러그된 I/O 요청을 플러시하지 않았습니다. 따라서 dm-bufio에서 제출한 요청은 3ms로 지연되어 성능이 저하될 수 있었습니다. 이번 업데이트를 통해 dm-bufio는 blk_unplug()를 예상대로 호출하여 관련 성능 문제를 방지합니다.
보안 수정
- CVE-2014-0055, 중요
- vhost_get_vq_desc() 함수에서 보고한 Linux 커널의 vhost_net 구현에서 get_rx_bufs() 함수의 get_rx_bufs() 함수가 취약점이 발견되었습니다. 권한이 있는 게스트 사용자는 이 취약점을 사용하여 호스트를 손상시킬 수 있습니다.
- CVE-2014-0101, 중요
- SCTP 연결을 초기화하는 동안 Linux 커널이 인증된 COOKIE_ECHO 청크를 처리하는 방식에서 취약점이 발견되었습니다. 원격 공격자는 이 취약점을 악용하여 시스템에서 NULL 포인터 역참조를 트리거하기 위해 특수하게 조작된 SCTP 핸드셰이크를 시작하여 시스템을 손상시킬 수 있습니다.
- CVE-2014-0069, Moderate
- Linux 커널의 CIFS 구현이 특수하게 조작된 iovec 구조로 캐시되지 않은 쓰기 작업을 처리하는 방식에서 취약점이 발견되었습니다. CIFS 공유에 액세스할 수 있는 권한이 없는 로컬 사용자는 이 취약점을 악용하여 시스템을 중단하거나 커널 메모리를 유출하거나 잠재적으로 시스템에서 권한을 에스컬레이션할 수 있습니다. 참고: Red Hat Enterprise Linux 6에 CIFS 마운트의 기본 캐시 설정은 이 문제를 악용할 수 없습니다.
- CVE-2013-1860, Low
- Linux 커널의 cdc-wdm 드라이버에서 USB CDC WCM 장치 관리에 사용되는 힙 기반 버퍼 오버플로 결함이 발견되었습니다. 시스템에 대한 물리적 액세스 권한이 있는 공격자는 이 취약점을 악용하여 서비스 거부 또는 잠재적으로 권한을 에스컬레이션할 수 있습니다.
버그 수정
- BZ#1063507
- APIC(Advanced Programmable Interrupt Controller) 코드를 이전에 변경하면 MP(Multiprocessor) 테이블을 사용하는 특정 Intel CPU에서 회귀 문제가 발생했습니다. LAPIC(Local APIC)에서 읽기를 시도하면 LAPIC를 매핑하기 전에 수행할 수 있으므로 시스템 부팅 중에 커널이 충돌합니다. MP 테이블을 구문 분석할 때 LAPIC를 최대한 빨리 매핑하여 이 문제를 해결하기 위해 패치가 적용되었습니다.
- BZ#1067775
- XFS 파일 시스템의 네임 스페이스에서 inode를 제거할 때 파일 시스템은 교착 상태가 되어 응답하지 않을 수 있습니다. 이로 인해 제거 작업이 순서 제약 조건에 따라 필요한 것보다 반대 순서로 AGF 및 AGI 잠금을 잘못 사용했기 때문에 파일 제거 및 inode 할당 및 해제 작업 간에 교착 상태가 발생할 수 있었습니다. 이번 업데이트를 통해 제거 작업의 첫 번째 트랜잭션으로 inode 항목을 제거하기 전에 inode의 참조 수가 삭제됩니다. 이렇게 하면 AGI 및 AGF 잠금이 올바른 순서로 잠겨 이 시나리오에서 추가 교착 상태를 방지할 수 있습니다.
- BZ#1064913
- 이전에는 Cryostat2 커널 모듈이 gfs2_bufdata slab 캐시에서 메모리를 유출하고 gfs2_remove_from_journal() 함수에서 use-after-free 경쟁 조건을 트리거할 수 있었습니다. examples2 파일 시스템을 마운트 해제한 후에도 polkit2 slab 캐시에 여전히 일부 오브젝트가 포함될 수 있었습니다. 이로 인해 특정 상황에서 커널 패닉이 발생할 수 있습니다. polkit2 커널 모듈에 일련의 패치가 적용되어 모든 오브젝트가 slab 캐시에서 올바르게 해제되고 커널 패닉을 방지할 수 있습니다.
- BZ#1054072
- 메모리 제어 그룹(cgroups)에서 OOM(메모리 부족) 상황을 처리하는 동안 커널이 사용하는 잠금 메커니즘으로 인해 OOM 킬러가 OOM을 트리거한 경우 의도한 대로 작동하지 않았습니다. 결과적으로 전체 시스템이 생성되거나 응답하지 않는 것처럼 보일 수 있었습니다. 이 잠금 메커니즘을 개선하기 위해 일련의 패치가 적용되어 OOM 종료자가 OOM 로드가 많은 메모리 cgroup에서 예상대로 작동합니다.
- BZ#1055364
- 이전에는 INET 소켓을 통해 IPv4 레이블이 지정된 트래픽을 처리할 때 특정 SELinux 함수가 TCP 동기화 확인(SYN-ACK) 패킷을 올바르게 처리하지 않았습니다. 초기 SYN-ACK 패킷에는 SELinux에서 잘못 레이블이 지정되었으며 결과적으로 새 연결의 레이블 대신 서버 소켓의 레이블을 사용하여 액세스 제어 결정이 내려졌습니다. 또한 SELinux는 레이블이 지정된 IPsec 트래픽을 올바르게 검사하지 않아 잘못된 액세스 제어 결정에 유사한 문제가 발생했습니다. 이러한 문제를 해결하는 일련의 패치가 SELinux에 적용되었습니다. 초기 SYN-ACK 패킷에 올바르게 레이블이 지정되고 SELinux 프로세스에 예상대로 모든 SYN-ACK 패킷의 레이블이 지정됩니다.
- BZ#1063199
- Red Hat Enterprise Linux 6.5에서 해당 네트워크 장치가 기능 목록에 CSUM 플래그를 보고하지 않으면 TSO(TCP Segmentation Offload) 기능이 자동으로 비활성화됩니다. 이전 버전에서는 본딩 장치를 통해 구성된 VLAN 장치는 NETIF_F_NO_CSUM 플래그를 예상대로 전파하지 않았으며 해당 기능 목록에는 CSUM 플래그가 포함되어 있지 않았습니다. 그 결과 이러한 VLAN 장치에 대해 TSO 기능이 비활성화되어 대역폭 성능이 저하되었습니다. 이번 업데이트를 통해 본딩 드라이버는 앞서 언급한 플래그를 올바르게 전파하여 이제 네트워크 트래픽이 성능 문제 없이 본딩을 통해 VLAN 장치를 통과하도록 합니다.
- BZ#1064464
- Infiniband 드라이버의 버그로 인해 ip 및 ifconfig 유틸리티에서 Infiniband (IPoIB)를 통한 IP의 링크 상태를 잘못 보고했습니다 ('ifconfig'의 경우 "RUNNING", 그리고 "ip")의 경우 "UP"으로 각 네트워크 카드에 연결되어 있지 않은 경우에도. 코드의 적절한 위치에서 각 netif_carrier_off() 함수를 호출하여 문제가 해결되었습니다. 이제 IPoIB 인터페이스의 링크 상태가 설명된 상황에서 올바르게 보고됩니다.
- BZ#1058418
- XFS 파일 시스템에서 읽기 작업을 수행할 때 실패한 버퍼 readahead는 버퍼를 캐시 메모리에 오류가 표시될 수 있습니다. 이로 인해 대부분의 호출자가 후속 읽기에서 버퍼의 b_error 필드를 제로하지 않기 때문에 I/O 작업이 완료되는 동안 오래된 오류를 잘못 감지할 수 있습니다. 이 문제를 방지하고 올바른 I/O 오류 감지를 보장하기 위해 사용된 버퍼의 b_error 필드가 파일에 I/O 작업을 제출하기 전에 0으로 설정됩니다.
- BZ#1062113
- 이전 버전에서는 시스템에 메모리를 핫 추가할 때 메모리 관리 하위 시스템에서 항상 온라인 상태로 설정된 모든 메모리 섹션에 대해 무조건 페이지 블록 검사를 수행했습니다. 핫 추가 작업의 총 기간은 시스템에 이미 있는 메모리 크기 및 추가 중인 메모리 크기에 따라 다릅니다. 따라서 많은 양의 메모리를 추가하거나 대상 노드에 이미 상당한 양의 메모리가 있는 경우 핫 추가 작업을 완료하는 데 과도한 시간이 걸렸습니다. 이번 업데이트에서는 필요한 경우에만 페이지 블록 검사가 수행되도록 코드가 최적화되므로 핫 추가 작업 기간이 크게 줄어듭니다.
- BZ#1059991
- SELinux 소켓 수신 후크의 버그로 인해 일부 구성에서 peer:recv 액세스 제어 거부를 수신할 때 네트워크 트래픽이 삭제되지 않았습니다. SELinux 소켓 수신 후크에서 손상된 레이블이 지정된 네트워킹 검사가 수정되었으며 이제 설명된 경우 네트워크 트래픽이 올바르게 삭제됩니다.
- BZ#1060491
- PP(peer-to-peer) 링크를 통해 많은 양의 데이터를 전송할 때 tty 드라이버에서 throttle() 및 unthrottle() 함수 간의 드문 경합 조건이 트리거될 수 있습니다. 그 결과 tty 드라이버가 응답하지 않아 throttled 상태가 유지되어 트래픽이 중단되었습니다. 또한 PPP 링크가 많이 로드된 경우 tty 드라이버의 경쟁 조건이 트리거될 수 있습니다. 이 경합을 통해 사용 가능한 버퍼 공간을 안전하지 않은 업데이트하여 stalled 트래픽도 발생할 수 있었습니다. 두 경쟁 조건을 모두 처리하는 일련의 패치가 tty 드라이버에 적용되었습니다. 첫 번째 경쟁이 트리거되면 드라이버 루프 및 강제 각 테스트 조건을 다시 평가하여 설명된 상황에서 중단없는 트래픽 흐름을 보장합니다. 이제 잘 배치된 읽기 잠금으로 인해 두 번째 경쟁이 완전히 방지되고 사용 가능한 버퍼 공간 업데이트가 올바르게 진행됩니다.
- BZ#1058420
- 이전 버전에서는 e752x_edac 모듈에서 pci_dev 사용 수를 잘못 처리하여 0에 도달하여 PCI 장치 구조를 할당 해제할 수 있었습니다. 그 결과 일부 시스템에서 모듈이 여러 번 로드되면 커널 패닉이 발생할 수 있었습니다. 이번 업데이트에서는 모듈을 반복적으로 로드 및 언로드하여 트리거되는 사용 수가 수정되었으며 커널 패닉이 더 이상 발생하지 않습니다.
- BZ#1057165
- 페이지 테이블이 업그레이드되면 가상 주소 공간에 대한 페이지 테이블의 새로운 최상위 수준이 추가되어 새로운 Address Space Control Element (ASCE)가 생성됩니다. 그러나 가상 주소 공간의 TLB(Translation Lookaside Buffer)가 이전에는 페이지 테이블 업그레이드 시 플러시되지 않았습니다. 그 결과 TLB에는 이전 ASCE와 관련된 항목이 포함되어 예기치 않은 프로그램 실패 및 임의 데이터 손상이 발생했습니다. 이 문제를 해결하기 위해 이전 ASCE와 연결된 TLB 항목이 이제 페이지 테이블 업그레이드 시 예상대로 플러시됩니다.
- BZ#1064115
- 네트워크 인터페이스가 무차별(PROMISC) 모드에서 실행 중이면 인터페이스에 VLAN이 연결되어 있지 않은 경우에도 VLAN 태그가 지정된 프레임을 수신하고 처리할 수 있습니다. 그러나 enic 드라이버는 프레임에 VLAN 그룹이 할당되지 않은 경우 PROMISC 모드에서 VLAN 태그가 지정된 프레임이 있는 패킷 처리를 올바르게 처리하지 않아 다양한 문제가 발생했습니다. VLAN 그룹 없이 VLAN 태그가 지정된 프레임을 올바르게 처리하려면 VLAN 코드에서 프레임을 처리해야 하며 enic 드라이버는 더 이상 패킷의 VLAN 그룹 필드가 비어 있는지 확인하지 않습니다.
- BZ#1057164
- IBM System z의 Linux 메모리 관리의 이전 변경으로 인해 ASCE(Address Space Control Element) 유형의 예외가 제거되었습니다. 그 결과 커널이 ASCE 예외를 처리할 수 없어 커널 패닉 상태가 발생했습니다. 예를 들어 커널이 사용자 공간 프로그램에서 현재 페이지 테이블 제한보다 큰 주소를 사용하여 사용자 메모리에 액세스하려고 하면 이러한 예외가 트리거되었습니다. 이 문제는 ASCE 예외가 발생하는 경우 표준 페이지 폴트 처리기, do_dat_exception을 호출하여 해결되었습니다.
- BZ#1063271
- 네트워크 콘솔 로깅의 여러 버그로 인해 네트워크 콘솔 전송 작업과 드라이버의 IRQ 처리기 간의 경쟁 조건이 발생하거나 네트워크 콘솔에서 잘못된 메모리 콘텐츠에 액세스할 수 있었습니다. 결과적으로 vmxnet3과 같은 각 드라이버는 BUG_ON() 어설션을 트리거하고 시스템이 예기치 않게 종료되었습니다. 이러한 버그를 해결하는 패치가 적용되어 전송 작업을 처리하기 전에 드라이버의 IRQ가 비활성화되고 네트워크 콘솔이 RCU 보호(읽기 복사 업데이트) 데이터에 올바르게 액세스합니다. 앞서 언급한 조건으로 인해 네트워크 콘솔 로깅을 사용하는 시스템이 더 이상 충돌하지 않습니다.
보안 수정
- CVE-2013-6381, 중요
- Linux 커널의 QETH 네트워크 장치 드라이버 구현에서 qeth_snmp_command() 함수에서 버퍼 오버플로 취약점이 발견되었습니다. out-of-bounds 길이가 있는 SNMP IOCTL 요청을 처리했습니다. 권한이 없는 로컬 사용자는 이 취약점을 사용하여 시스템을 충돌하거나 잠재적으로 시스템에서 권한을 에스컬레이션할 수 있습니다.
- CVE-2013-2929, Low
- get_dumpable() 함수 반환 값이 Linux 커널의 ptrace 하위 시스템에서 해석되는 방식에서 취약점이 발견되었습니다. 'fs.suid_dumpable'을 2로 설정하면 권한이 없는 로컬 사용자가 이 취약점을 사용하여 의도한 ptrace 제한을 우회하고 잠재적으로 민감한 정보를 얻을 수 있습니다.
- CVE-2013-7263, CVE-2013-7265, Low
- Linux 커널의 네트워킹 구현의 특정 프로토콜 핸들러가 연결된 데이터 구조를 초기화하지 않고 addr_len 값을 설정할 수 있다는 것이 발견되었습니다. 권한이 없는 로컬 사용자는 이 취약점을 사용하여 recvmsg, recvfrom, recvmmsg 시스템 호출을 사용하여 커널 스택 메모리를 사용자 공간으로 누출할 수 있습니다.
버그 수정
- BZ#1051393
- NFS 코드의 버그로 인해 DELEGRETURN이 상태 관리자가 처리하는 동안 비동기 세션 오류가 수신되면 상태 관리자 및 DELEGRETURN 작업이 교착 상태가 될 수 있었습니다. DELEGRETURN 작업이 무기한 순환되어 있기 때문에 상태 관리자가 실패한 DELEGRETURN 작업을 완료할 때까지 기다리지 않았기 때문에 실패한 DELEGRETURN 작업을 완료할 수 없었습니다. 일련의 패치가 적용되어 비동기 오류 처리기가 세션 오류가 수신되고 교착 상태가 더 이상 발생하지 않을 때 복구를 기다립니다.
- BZ#1049590
- IPv4 및 IPv6 코드에는 conntrack 조각화 처리와 관련된 몇 가지 문제가 포함되어 있어 조각화된 패키지가 올바르게 재구성되지 않았습니다. 이번 업데이트에서는 일련의 패치를 적용하고 MTU 검색이 올바르게 처리되고 조각이 올바르게 일치되고 패킷이 다시 어셈블되도록 합니다.
- BZ#1046043
- ptrace() 시스템 호출에서 Big Kernel Locks(BKL)를 비효율적으로 사용하면 ptrace()를 광범위하게 사용하는 특정 시스템에서 BKL 경합이 발생할 수 있으므로 UML(User-mode Linux) 시스템과 같은 특정 시스템에서 성능이 저하될 수 있습니다. 이번 업데이트에서는 ptrace() 시스템 호출에서 관련 BKL을 제거하여 관련 성능 문제를 해결합니다.
- BZ#1046041
- Red Hat Enterprise Linux 6.5의 본딩 장치를 통해 SCTP를 사용하는 경우 SCTP는 기본 물리적 장치가 이러한 기능을 갖추고 있음을 보장하지 않은 가상 장치에서 오프로드 기능을 가정합니다. 결과적으로 발신 패킷의 체크섬이 손상되고 네트워크 연결을 올바르게 설정할 수 없었습니다. 소프트웨어 폴백에서 SCTP 체크섬 기능이 없는 장치에 대한 패키지 체크섬이 올바르게 계산되도록 하는 패치가 적용되었습니다. 본딩 장치를 통한 SCTP 연결은 이제 Red Hat Enterprise Linux 6.5에서 예상대로 설정할 수 있습니다.
- BZ#1044566
- VSX Machine State Register(MSR) 비트가 설정되어 있지만 사용자가 VSX 상태를 저장할 수 있는 충분한 공간을 제공하지 않은 경우 사용자 프로세스의 컨텍스트를 PowerPC 플랫폼에 저장할 수 없었습니다. 이번 업데이트를 통해 이러한 상황에서 VSX MSR 비트를 지우고 사용자 컨텍스트에 유효한 VSX 상태가 없음을 나타냅니다.
- BZ#1043779
- 정적으로 정의된 게이트웨이에 연결할 수 없고 해당 인접 항목이 FAILED 상태를 입력한 후 게이트웨이는 다시 연결할 수 있게 된 후에도 FAILED 상태에 남아 있습니다. 결과적으로 트래픽이 해당 게이트웨이를 통해 라우팅되지 않았습니다. 이번 업데이트를 통해 이러한 게이트웨이를 자동으로 검색할 수 있으므로 이 게이트웨이를 통해 트래픽을 다시 라우팅할 수 있습니다.
- BZ#1040826
- IPv6 코드의 여러 버그로 인해 캐시된 IPv6 대상 항목의 수가 트래픽이 많은 라우터에서 가비지 수집기에 도달하면 소프트 잠금이 발생할 수 있었습니다. 이 문제를 해결하기 위해 일련의 패치가 적용되었습니다. 이러한 패치를 사용하면 가비지 수집으로 중단된 잠금을 방지하기 위해 경로 프로빙이 비동기적으로 수행됩니다. 또한 가비지 수집기가 비동기적으로 실행되므로 다른 모든 CPU가 가비지 컬렉션을 완료할 때까지 동시에 가비지 수집기를 요청하는 CPU가 대기되지 않습니다.Also, the garbage collector is now run asynchronously, preventing CPUs that concurrently requested the garbage collector from waiting until all other CPUs finish the garbage collection. 결과적으로 설명된 상황에서 소프트 잠금이 더 이상 발생하지 않습니다.
- BZ#1035347
- 이전 md 드라이버를 변경하면 커널 oop를 방지하기 위해 RAID5 볼륨의 TRIM 작업을 비활성화했습니다. 그러나 MD RAID 볼륨이 다른 RAID 수준으로 재구성된 경우 특정 리셰이프에 RAID4 특성을 사용하므로 결과 볼륨에서 TRIM이 비활성화될 수 있습니다. RAID 수준을 변경하기 전에 스택 제한을 설정하여 이 문제를 수정하는 패치가 적용되어 RAID 배열에 대한 올바른 삭제(TRIM) 단위가 유지됩니다.
- BZ#1051395
- 이전에는 NFS에서 디렉터리에 연결되지 않은 파일이 종료된 후 바로 디렉토리를 제거할 때 "sil rename" 작업과 rmdir() 함수 간의 경쟁을 허용했습니다. 그 결과 rmdir()이 CryostatUSY 오류로 인해 실패할 수 있었습니다. 이번 업데이트에서는 rmdir() 작업을 수행하기 전에 NFS가 비동기 작업이 완료될 때까지 기다리는 패치를 적용합니다.
- BZ#1051394
- EDAC 드라이버의 버그로 인해 드라이버는 AMD 제품군 16h 프로세서에 대한 오류를 올바르게 디코딩하고 보고하지 못했습니다. 이번 업데이트에서는 누락된 case 문을 코드에 통합하여 EDAC 드라이버가 예상대로 오류를 처리하도록 합니다.
- BZ#1045094
- 상태 관리자, kswapd 데몬 및 sys_open() 함수 간의 교착 상태는 상태 관리자가 만료된 상태에서 복구하고 복구 OPEN 작업을 처리할 때 발생할 수 있습니다. 이 문제를 해결하기 위해 NFS는 이 상황에서 "NFS4ERR_DELAY"를 제외한 LAYOUTRETURN 작업(pNFS 작업)의 모든 오류를 무시하도록 수정되었습니다.
- BZ#1040498
- bnx2x 드라이버는 VF-PF 채널을 사용하여 VF(가상 기능)에서 수신된 지원되지 않는 TLV를 잘못 처리했습니다. VF의 드라이버가 알 수 있지만 지원되지 않는 TLV 명령을 물리적 함수에 전송하면 PF의 드라이버가 응답하지 않았습니다. 그 결과 VF-PF 채널이 불안정한 상태로 유지되었으며 결국 VF가 시간 초과되었습니다. VF-PF 잠금 체계를 수정하기 위해 패치가 적용되어 지원되지 않는 TLV가 올바르게 처리되고 PF 측에서 대응합니다. 또한 지원되지 않는 TLV는 이전에 VF-PF 작업을 잠그는 데 사용되는 뮤텍스를 렌더링할 수 있었습니다. 그런 다음 Mutex는 코드의 중요한 부분 보호를 중지하여 PF가 VF에서 추가 TLV를 수신할 때 오류 메시지가 생성될 수 있습니다. VF-PF 채널 잠금 체계를 수정하는 패치가 적용되었으며 지원되지 않는 TLV는 더 이상 VF-PF 잠금을 중단할 수 없습니다.
- BZ#1040497
- bnx2x 드라이버의 통계 흐름 버그로 인해 필요한 잠금을 사용하지 않고도 카드의 DMAE(DMAE)에 액세스했습니다. 그 결과 이전에 대기 중인 CryostatE 명령을 덮어쓸 수 있었으며 가상 기능을 통해 해당 물리 함수에 대한 요청 시 시간 초과될 수 있었습니다. SR-IOV 가상 기능이 구성된 상태에서 버그 트리거 가능성이 높았습니다. CryostatE 명령을 덮어쓰면 SR-IOV를 사용하지 않고도 다른 문제가 발생할 수 있습니다. 이번 업데이트에서는 CryostatE를 사용하는 모든 흐름이 동일한 API를 사용하고 이러한 모든 흐름에 따라 적절한 잠금 체계를 유지합니다.
- BZ#1035339
- 비어 있는 포트가 있는 AHCI 컨트롤러를 사용하거나 시스템을 시작하거나 시작할 때 EM transmit bit가 사용 중인 경우, AHCI 드라이버는 절전 작업을 시작하기 전에 관련 오류 처리기를 잘못 릴리스했습니다. 결과적으로 AHCI 컨트롤러의 다른 포트에서 오류 처리기를 인수할 수 있으며 SGPIO(Segial General Purpose Input/Output) 신호는 결국 빈 포트에서 다시 빌드 패턴을 끊을 수 있었습니다. 이번 업데이트에서는 일반 ATA 드라이버에 교차 포트 오류 처리기 제외를 구현하고 이 특정 경우에 msleep() 함수를 사용하도록 AHCI 드라이버가 수정되었습니다. 오류 처리기는 절전 작업 시 더 이상 해제되지 않으며 SGPIO 신호는 더 이상 빈 컨트롤러 슬롯에서 디스크의 다시 빌드를 표시할 수 없습니다.
- BZ#1032389
- 이전 igb 드라이버를 변경하면 ethtool 유틸리티에서 이더넷 장치의 일부 기능을 잘못 결정하고 표시했습니다. 이번 업데이트에서는 실제 링크 기능이 올바르게 확인되도록 igb 드라이버를 수정하고 ethtool은 드라이버에서 사용 가능한 데이터에 대한 종속성에 있는 값을 최대한 정확하게 표시합니다.
보안 수정
- CVE-2013-4470, 중요
- Linux 커널의 TCP/IP 프로토콜 제품군 구현에서 UDP Fragmentation Offload(UFO) 기능이 출력 장치에서 활성화되었을 때 UDP_CORK 옵션을 사용하는 소켓을 통해 특정 UDP 패킷 전송을 처리하는 방식에서 취약점이 발견되었습니다. 권한이 없는 로컬 사용자는 이 취약점을 악용하여 서비스 거부 또는 잠재적으로 시스템에서 권한을 에스컬레이션할 수 있습니다.
- CVE-2013-6367, 중요
- KVM의 LAPIC(Local Programmable Interrupt Controller) 구현의 apic_get_tmcct() 함수에서 분할별 취약점이 발견되었습니다. 권한이 있는 게스트 사용자는 이 취약점을 사용하여 호스트를 손상시킬 수 있습니다.
- CVE-2013-6368, 중요
- KVM이 페이지 경계를 넘어 가상 APIC 액세스를 처리하는 방식에서 메모리 손상 문제가 발견되었습니다. 권한이 없는 로컬 사용자는 이 취약점을 사용하여 시스템을 충돌하거나 잠재적으로 시스템에서 권한을 에스컬레이션할 수 있습니다.
- CVE-2013-2141, Low
- Linux 커널의 정보 유출 취약점으로 인해 권한이 없는 로컬 사용자가 커널 메모리를 사용자 공간으로 유출할 수 있습니다.
버그 수정
- BZ#1027343
- mlx4 드라이버의 회귀 버그로 인해 Mellanox mlx4 어댑터는 시스템 로그에 기록되는 IOMMU 할당 오류와 함께 높은 부하에서 응답하지 않을 수 있었습니다. Rx 경로에서 메모리를 할당할 때 드라이버가 마지막 메모리 페이지 조각을 계산하도록 패치가 mlx4 드라이버에 적용되었습니다.
- BZ#1028278
- RSXX>-< 처리 코드의 버그로 인해 DISCARD 작업이 pci_unmap_page() 함수를 호출할 수 있어 DISCARD, READ, WRITE 작업이 동시에 발행될 때 PowerPC 아키텍처의 경쟁 조건이 트리거되었습니다. 그러나 DISCARD 작업은 매핑되지 않기 때문에 항상 0의 address를 할당합니다. 따라서 이 경합으로 인해 다른 작업과 후속 EEH 이벤트에 대해 매핑된 메모리를 확보할 수 있습니다. 패치가 적용되어 DISCARD 작업이 pci_unmap_page()를 호출하지 못하도록 하여 앞서 언급한 경쟁 조건을 방지합니다.
- BZ#1029330
- bcma 드라이버의 일부가 누락되어 brcmsmac 커널 모듈에 관련 udev 이벤트를 올바르게 처리하는 데 필요한 내부 별칭 목록이 없었습니다. 결과적으로 bcma 드라이버가 부팅 시 장치를 검색하면 이러한 udev 이벤트가 무시되고 커널이 brcmsmac 모듈을 자동으로 로드하지 않았습니다. brcmsmac 모듈의 udev 요청이 예상대로 처리되고 커널이 부팅 시 brcmsmac 모듈을 자동으로 로드하도록 누락된 별칭을 제공하는 패치가 적용되었습니다.
- BZ#1029997
- mlx4 드라이버의 버그는 Tx 링에서 WQE(WQE)를 처리할 때 "파란색" 기능의 트래픽 흐름과 Tx 링의 스탬프 메커니즘 간에 경쟁을 트리거할 수 있습니다. 그 결과 mlx4 이더넷 카드의 관련 큐 쌍(QP)이 오류 상태를 입력하고 관련 Tx 링의 트래픽이 차단되었습니다. 드라이버가 Tx 링에서 마지막으로 완료된 WQE를 스탬프하지 않도록 mlx4 드라이버에 패치가 적용되어 앞서 언급한 경쟁을 방지합니다.
- BZ#1030171
- NFSv4 코드의 이전 변경으로 인해 동기화 NFSv4 마운트 옵션이 손상되었습니다. 동기화 마운트 옵션의 기능을 복원하는 패치가 적용되었습니다.
- BZ#1030713
- Emulex lpfc 드라이버의 버그로 인해 드라이버가 SCSI 버퍼를 적절하게 할당할 수 없어 64비트 PowerPC 시스템에서 lpfc 어댑터의 성능이 저하되었습니다. 이 문제를 해결하는 패치가 적용되어 lpfc가 SCSI 버퍼를 올바르게 할당하고 lpfc 어댑터가 64비트 PowerPC 시스템에서 예상대로 작동합니다.
- BZ#1032162
- 고도로 세분화된 polkit2 파일 시스템에서 I/O 작업을 수행할 때 성능이 크게 저하될 수 있었습니다. 이는 Cryostat2가 사용 가능한 모든 리소스 그룹(rgrp)에서 이상적인 연속 사용 가능한 블록 청크를 검색하는 데 사용한 할당 전략으로 인해 발생했습니다. 조각화가 많은 경우 polkit2 파일 시스템의 성능을 개선하는 일련의 패치가 적용되었습니다. 이제 Cryostat2는 최소 요구 사항을 충족하는 경우 rgrp에서 발견된 가장 큰 범위를 할당합니다. 또한 Cryostat2는 지정된 rgrp에서 다중 블록 예약이 실패하는 최소 범위를 추적하여 다중 블록 예약의 경우 비트맵 검색의 양을 줄였습니다. 이로 인해 불필요한 rgrp free block search이 실패하는 것을 방지하여 polkit2 성능을 개선할 수 있습니다. 또한 이 패치 시리즈는 gp2 블록 할당 코드의 버그를 수정하는데, 여기서 다중 블록 예약이 rgrp의 예약 트리에서 정상적으로 제거되지 않아 결국 예약된 블록 수가 올바르지 않기 때문에 BUG_ON() 매크로가 트리거됩니다.
- BZ#1032167
- 커널의 이전 패치에는 QLogic의 qla2xxx 드라이버에 동적 큐 깊이 제한 기능이 추가되어 드라이버가 연결된 SCSI 장치의 대기열 깊이를 조정할 수 있었습니다. 그러나 EMC PowerPath Multipathing이 설치된 시스템에서 I/O 로드가 많은 경우 커널이 충돌할 수 있습니다. 이 문제를 해결하기 위해 qla2xxx 드라이버에서 동적 큐 깊이 제한 기능이 제거되었습니다.
- BZ#1032168
- 이전에는 물리적 기능(PF) 인터페이스가 중단된 경우 가상 머신에 할당된 ixgbevf 드라이버를 사용하는 장치는 Jumbo MTU 값을 자동으로 조정할 수 없었습니다. PF 장치를 가져올 때 관련 VF(가상 기능) 장치의 MTU 값이 잘못 설정되었습니다. 이는 PF와 VF 인터페이스 간의 통신 채널이 설정되고 PF와 VF 간의 첫 번째 협상 시도로 인해 발생했습니다. 이 문제를 해결하기 위해 커널이 PF와 VF 간의 올바른 API를 성공적으로 협상할 수 있도록 ixgbevf 드라이버를 구조적으로 변경하고 이 상황의 VF 인터페이스에 MTU 값을 올바르게 설정합니다.
- BZ#1032170
- ixgbe 드라이버의 버그로 인해 SR-IOV 환경의 PF 인터페이스를 통해 브리지 장치를 사용할 때 인터페이스 재설정 시 IPv6 하드웨어 필터링 테이블이 올바르게 다시 작성되지 않았습니다. 그 결과 VF 간의 IPv6 트래픽이 중단되었습니다. 업스트림 패치가 ixgbe 드라이버를 수정하도록 백포트되어 이제 MTA(Multimedia Terminal Adapter) 테이블의 업데이트가 조건이 되지 않아 PF가 재설정될 때 MTA 테이블의 불일치를 방지할 수 있습니다. 이 시나리오에서 VF 간 IPv6 트래픽은 예상대로 진행됩니다.
- BZ#1032247
- 정렬되지 않은 Cryostat 버퍼 크기가 있는 Haswell Cryostat 오디오 컨트롤러를 사용하는 경우 이러한 오디오 컨트롤러는 특정 오디오 스트림 구성을 위해 다음 재부팅될 때까지 잠길 수 있습니다. Haswell Cryostat 오디오 컨트롤러에 대한 Cryostat 버퍼 정렬 설정을 적용하는 Intel의 High Definition audio (HDA) 드라이버에 패치가 적용되었습니다. 이제 이러한 오디오 컨트롤러가 예상대로 작동합니다.
- BZ#1032249
- 최근 수정으로 인해 활성 XFS 로그를 처리하려고 할 때 교착 상태가 발생하지 않아 xfs_log_need_covered() 함수의 동작이 변경되었습니다. 그러나 XFS 저널 동기화 작업의 일부로 XFS 로그 tail이 올바르게 업데이트되도록 xfs_log_need_covered()도 호출됩니다. 결과적으로 XFS 파일 시스템을 종료할 때 동기화 작업이 실패하고 일부 파일이 손실되었을 수 있었습니다. XFS 저널에 더미 레코드를 기록하여 tail of the XFS 로그가 업데이트되도록 패치가 적용되었습니다. 동기화 작업이 성공적으로 완료되고 파일이 이 경우 디스크에 올바르게 기록됩니다.
- BZ#1032250
- NFSv4 상태 ID를 복구하는 동안 LOCK 작업에서 무한 루프 문제를 해결하는 패치 배치를 백포트할 때 패치 청크가 중단되었습니다. 결과적으로 시스템은 여러 경우에 응답하지 않을 수 있었습니다. 패치 누락된 청크가 추가되어 이 중단 문제를 해결합니다.
- BZ#1032260
- 여러 프로세스에서 단일 파일로 버퍼링된 WRITE 작업을 수행할 때 이전에 NFS 코드는 파일 잠금이 없는 경우에도 액세스 중인 파일에 대해 잠금 소유자 정보가 동일한지 여부를 항상 확인합니다. 이로 인해 분기된 하위 프로세스가 파일에 쓰기 전에 상위 프로세스에서 디스크에 기록된 더티 데이터를 동기화해야 했기 때문에 성능이 저하되었습니다. 또한 단일 READ 또는 WRITE RPC 호출에 요청을 병합하는 경우 NFS는 파일 잠금이 연결되지 않은 경우에도 지정된 파일에 대해 잠금 소유자 정보가 일치하지 않는 경우 요청을 거부했습니다. 이로 인해 성능 저하도 발생했습니다. 일련의 패치가 적용되어 관련 테스트 조건을 완화하여 이러한 성능 문제를 해결하는 설명된 경우 잠금 소유자 호환성을 더 이상 확인하지 않습니다.
- BZ#1032395
- mlx4 드라이버의 버그로 인해 Tx 또는 Rx 링을 조정하는 동안 Mellanox 이더넷 카드가 예기치 않게 중단되었습니다. Tx 또는 Rx 링이 설정되어 있을 때 mlx4 드라이버가 이더넷 카드의 상태를 올바르게 확인하도록 패치가 적용되어 이 문제를 해결합니다.
- BZ#1032423
- 시스템이 메모리가 부족하면 tg3 드라이버의 이중 없는 버그가 트리거되어 NIC가 예기치 않게 중단되고 커널 패닉이 발생했습니다. 영향을 받는 링 버퍼가 올바르게 해제되도록 각 코드를 재구성하는 패치가 적용되었습니다.
- BZ#1032424
- RPC 클라이언트는 첫 번째 RPC 전송이 완료되기 전에 시간 초과된 경우 페이지 데이터의 0 복사를 항상 다시 전송합니다. 그러나 이러한 재전송으로 인해 O_DIRECT 버퍼와 첫 번째 RPC 호출이 완료된 경우 해당 TCP 소켓이 페이지에 대한 참조를 계속 유지하는 경우 데이터 손상이 발생할 수 있습니다. 데이터 손상을 방지하기 위해 RPC 호출의 재전송은 이 상황에서 sendmsg() 함수를 사용하여 수행됩니다. sendmsg() 함수는 TCP 소켓이 페이지 데이터의 전체 복사본을 보유하고 있기 때문에 첫 번째 RPC 전송의 정품 복제를 다시 전송합니다.
- BZ#1032688
- XFS 파일 시스템을 생성할 때 활성 XFS 로그를 처리하려고 하면 특정 상황에서 xfssyncd와 xfsbufd 데몬 간의 교착 상태가 발생할 수 있습니다. 그 결과 여러 커널 스레드가 응답하지 않고 XFS 파일 시스템을 성공적으로 생성할 수 없어 커널 oops가 발생했습니다. 활성 XFS 로그를 디스크에 강제 적용하여 이 상황을 방지하기 위해 패치가 적용되었습니다.
기능 개선
- BZ#1020518
- 커널은 이제 AMD 시스템에서 1TB 이상의 RAM이 있는 메모리 구성을 지원합니다.
- BZ#1032426
- HAL 데몬에서 장치를 올바르게 인식할 수 있도록 커널은 Wacom 터치 장치에서 ABS_MISC 이벤트 보고를 중지하도록 수정되었습니다.
보안 수정
- CVE-2013-4387, 중요
- UDP Fragmentation Offload(UFO) 기능이 활성화된 경우 Linux 커널의 IPv6 구현에서 특정 UDP 패킷을 처리하는 방식에서 취약점이 발견되었습니다. 원격 공격자는 이 취약점을 악용하여 시스템을 중단하거나 시스템에서 권한을 상승시킬 수 있습니다.
- CVE-2013-0343, Moderate
- Linux 커널이 임시 IPv6 주소 생성을 처리하는 방식에서 취약점이 발견되었습니다. IPv6 개인 정보 보호 확장이 활성화된 경우(/proc/sys/net/conf/eth0/use_tempaddr을 '2'로 설정)하면 로컬 네트워크의 공격자가 IPv6 임시 주소 생성을 비활성화하여 잠재적인 정보 공개가 발생할 수 있습니다.
- CVE-2013-2888, Moderate
- Linux 커널이 HID (Human Interface Device)를 처리하는 방식에서 결함이 발견되었으며 범위를 벗어난 보고서 ID로 발견되었습니다. 시스템에 대한 물리적 액세스 권한이 있는 공격자는 이 취약점을 악용하여 시스템을 중단하거나 시스템에서 권한을 상승시킬 수 있습니다.
- CVE-2013-4345, Moderate
- Linux 커널에서 ANSI CPRNG 구현이 비 블록 크기 조정 요청을 처리하는 방식에서 1대1 취약점이 발견되었습니다. 이로 인해 ANSI CPRNG가 사용될 때 예상보다 엔트로피 수가 적은 임의 숫자가 생성될 수 있습니다.
- CVE-2013-4591, Moderate
- RHSA-2012:1580을 통해 릴리스된 CVE-2012-2375에 대한 수정으로 인해 크기가 작은 결과 버퍼가 실수로 제거되었습니다. ACL 지원이 포함된 NFSv4 마운트에 액세스할 수 있는 권한이 없는 로컬 사용자는 이 취약점을 악용하여 시스템을 충돌하거나 시스템에서 권한을 상승시킬 수 있습니다.
- CVE-2013-4592, Moderate
- 메모리 슬롯을 이동할 때 IOMMU 메모리 매핑이 처리되는 방식에서 취약점이 발견되었습니다. 게스트에 장치를 할당할 수 있는 KVM 호스트의 악의적인 사용자는 이 결함을 사용하여 호스트를 손상시킬 수 있습니다.
- CVE-2013-2889,CVE-2013-2892, Moderate
- Zeroplus 및 Pantherlord/GreenAsia 게임 컨트롤러에서 HID 보고서를 처리하는 방식에서 힙 기반 버퍼 오버플로 결함이 발견되었습니다. 시스템에 대한 물리적 액세스 권한이 있는 공격자는 이러한 취약점을 악용하여 시스템을 중단하거나 시스템에서 권한을 상승시킬 수 있습니다.
- CVE-2012-6542, CVE-2013-3231, Low
- Linux 커널의 LLC(Logical link control) 구현에서는 두 가지 정보 누출 취약점이 발견되었습니다. 권한이 없는 로컬 사용자가 이러한 결함을 사용하여 커널 스택 메모리를 사용자 공간으로 누출시킬 수 있습니다.
- CVE-2013-1929, Low
- 장치의 Tg3 이더넷 드라이버가 중요한 제품 데이터(VPD)를 구문 분석하는 방식의 힙 기반 버퍼 오버플로는 시스템에 대한 물리적 액세스 권한이 있는 공격자가 서비스 거부 또는 잠재적으로 권한을 에스컬레이션할 수 있도록 허용할 수 있습니다.
- CVE-2012-6545, CVE-2013-1928, CVE-2013-2164, CVE-2013-2234, Low
- Linux 커널의 정보 누출 결함으로 인해 권한이 있는 로컬 사용자가 커널 메모리를 사용자 공간으로 유출할 수 있습니다.
- CVE-2013-2851, Low
- Linux 커널의 블록 계층에서 형식 문자열 결함이 발견되었습니다. 권한이 있는 로컬 사용자는 이 취약점을 악용하여 권한을 커널 수준(ring0)으로 상승시킬 수 있습니다.
버그 수정
- BZ#955712
- 캐시된 자격 증명이 현재 프로세스와 일치하는지 확인하는 RPC 코드의 함수가 검사를 올바르게 수행하지 않았습니다. 이 코드는 현재 프로세스 자격 증명의 그룹이 캐시된 인증 정보에 있는 것과 동일한 순서로 표시되는지만 확인했지만 캐시된 인증 정보에 다른 그룹이 있는지 확인하지 않았습니다. 결과적으로 NFS 마운트의 파일에 액세스할 때 원래 프로세스와 동일한 UID 및 GID 프로세스가 있지만 일치하지 않는 그룹 목록이 있는 프로세스에 파일에 대한 무단 액세스 권한이 부여되었을 수 있거나 특정 상황에서 프로세스가 파일에 액세스할 수 없었습니다. 잘못된 테스트 조건이 수정되어 문제가 더 이상 발생하지 않을 수 있습니다.
- BZ#629857
- netfilter 모듈의 상태가 동기화되지 않은 경우 두 호스트 간에 TCP 연결이 존재하지 않았음에도 TCP 연결이 conntrack 테이블에 기록되었습니다. 호스트가 동일한 소스, 포트, 대상 포트, 소스 주소 및 대상 주소로 이 연결을 다시 설정한 경우 호스트는 TCP SYN 패킷을 전송하고 피어가 이 SYN 패키지에 대한 승인을 다시 전송했습니다. 그러나 netfilter가 동기화되지 않았기 때문에 netfilter는 이 승인을 삭제하고 conntrack 테이블에서 연결 항목을 삭제했습니다. 이로 인해 호스트가 SYN 패킷을 다시 전송했습니다. 이러한 처리를 개선하기 위해 패치가 적용되었습니다. 예기치 않은 SYN 패킷이 표시되면 TCP 옵션에 주석이 추가됩니다. SYN 패킷에 대한 승인은 연결 추적이 동기화되지 않음을 확인하는 역할을 하며, 다시 전송 지연을 방지하기 위해 이전에 주석이 달린 정보를 사용하여 새 연결 레코드가 생성됩니다.
- BZ#955807
- ext4 코드의 여러 버그로 인해 데이터 무결성 시스템 호출이 디스크의 데이터를 항상 올바르게 유지하지는 않았습니다. 따라서 ext4 파일 시스템의 동기화되지 않은 데이터는 시스템의 예기치 않은 종료 후 손실될 수 있었습니다. 이 문제를 해결하기 위해 ext4 코드에 일련의 패치가 적용되었으며, 파일 동기화를 담당하는 코드에서 데이터 장벽을 적절하게 사용할 수 있는 수정 사항을 포함합니다. 설명된 상황에서는 데이터 손실이 더 이상 발생하지 않습니다.
- BZ#953630
- Intel Family 6, Model 58 및 62의 C-states는 Red Hat Enterprise Linux 6에서 프로세서가 제대로 초기화되지 않았습니다. 결과적으로 이러한 프로세서는 깊은 C 상태에 들어갈 수 없었습니다. 또한 C 상태 회계가 제대로 작동하지 않고 powertop 또는 turbostat와 같은 전원 관리 툴이 표시되어 잘못된 C 상태 전환이 표시되었습니다. 이번 업데이트에서는 적절한 C 상태 초기화를 보장하는 패치를 적용하여 앞서 언급한 프로세서가 이제 예상대로 깊은 코어 전원 상태를 입력할 수 있도록 합니다. 이 업데이트는 별도의 패치로 해결된 C 상태 회계를 정확하지 않습니다.
- BZ#953342
- 이전에는 커널이 비플리트 Advanced Programmable Interrupt Controller (APIC) 모드에서 플랫 APIC 모드로 전환해야 하는 상황을 처리하지 않았습니다. 그 결과 NULL 포인터가 역참조되고 커널 패닉이 발생했습니다. 이번 업데이트에서는 flat_probe() 함수가 APIC 드라이버에 추가되어 커널이 대체 옵션으로 플랫 APIC 모드를 사용할 수 있습니다. 이 상황에서 커널은 더 이상 패닉이 발생하지 않습니다.
- BZ#952785
- 여러 NIC 및 macvtap 장치가 있는 하이퍼바이저에 가상 머신을 배포하려고 하면 커널 패닉이 발생할 수 있었습니다. 이 문제는 macvlan_port.vlans 목록이 비어 있고 NULL 포인터를 반환했을 때 macvtap 드라이버가 정상적으로 상황을 처리하지 않았기 때문에 발생했습니다. 이번 업데이트에서는 RCU(Read-copy-update) 메커니즘을 사용하여 이 문제를 해결하고 목록이 비어 있는 경우 드라이버가 NULL 포인터를 반환하지 않도록 하는 일련의 패치를 적용합니다. 이 시나리오에서는 커널이 더 이상 패닉이 발생하지 않습니다.
- BZ#952329
- 구조 누락으로 인해 NFSv4 오류 처리기에서 NFSv4 위임을 취소하여 발생한 예외를 처리하지 않았습니다. 결과적으로 NFSv4 클라이언트는 NFS4ERR_ADMIN_REVOKED 오류 대신 EIO 오류 메시지를 수신했습니다. 이번 업데이트에서는 위임을 취소하기 위해 nfs4_state 구조가 더 이상 필요하지 않도록 NFSv4 코드를 수정합니다.
- BZ#952174
- 클럭 소스로 KVM 클럭(kvmclock)이 있고 일부 Cryostat가 고정된 KVM 게스트에서는 상당한 수면 지연이 발생할 수 있습니다(시간은 20초 이상). 이로 인해 짧은 대기 시간 이벤트에 대한 함수 및 부정확한 측정으로 인해 예기치 않은 지연이 발생했습니다. kvmclock 업데이트가 특정 Cryostat로 격리되어 NTP 빈도 수정이 해당 단일 Cryostat에만 적용되었기 때문에 문제가 발생했습니다. 이 문제는 KVM 게스트의 모든 Cryostat에 대한 kvmclock 업데이트를 허용하는 패치로 해결되었습니다. 이제 Cryostat 수면 시간이 예상 양을 초과하지 않으며 더 이상 앞서 언급한 문제가 발생하지 않습니다.
- BZ#951937
- 메모리 매핑을 집중적으로 사용하는 애플리케이션을 사용할 때 고객은 애플리케이션 대기 시간이 크게 증가하여 성능이 저하되었습니다. 문제를 해결하기 위해 일련의 패치가 적용되었습니다. 그 중 패치는 블록 장치가 안정적인 페이지 쓰기를 요구하도록 메모리 매핑 코드를 수정하고, 백업 장치에 필요한 경우에만 안정적인 페이지 쓰기를 적용하고, 선택적으로 쓰기 중에 안정적인 페이지를 제공하도록 스냅샷 페이지 콘텐츠를 수정합니다. 결과적으로 애플리케이션 대기 시간이 상당한 양으로 향상되었으며 메모리 매핑이 많은 애플리케이션이 이제 예상대로 수행됩니다.
- BZ#997845
- RAID1 및 RAD10 코드는 이전에 raise_barrier() 및 lower_barrier() 함수 대신 freeze_array() 및 관리 스레드 내에서 안전하게 호출되는 unfreeze_array() 함수입니다. 결과적으로 MD 배열에 예비 디스크가 포함되어 해당 커널 스레드가 응답하지 않는 경우 교착 상태가 발생할 수 있었습니다. 또한 이 문제가 발생한 후 종료 시퀀스가 시작된 경우 종료 시퀀스가 응답하지 않고 디스크에 동기화되지 않은 모든 in-cache 파일 시스템 데이터가 손실되었습니다. 이 문제를 해결하는 패치가 적용되고 RAID1 및 RAID10 코드는 이제 관리 스레드 안전 기능을 예상대로 사용합니다.
- BZ#996802
- Linux 커널 네트워크 드라이버 코드를 이전 변경으로 인해 TCP Small Queues(TSQ) 기능이 도입되었습니다. 그러나 이러한 변경으로 인해 ixgbe 드라이버를 사용하는 장치와 같은 특정 네트워크 장치에서 성능이 저하되었습니다. 이 문제는 TSO 프레임의 크기 설정 지원 및 지정된 TCP 흐름의 장치 대기열에서 패킷 대기열 수에 대한 동적 제한을 포함하는 TSO(TCP Segmentation Offload) 및 TSQ 기능에 대한 일련의 패치에 의해 해결되었습니다.
- BZ#950598
- NFSv4 클라이언트에서 NFSv4 서버 OPEN 상태 복구 중에 위임된 OPEN 작업에 대한 열려 있는 권한을 확인하는 경우 NFSv4 상태 관리자는 교착 상태를 입력할 수 있습니다. 이 문제는 클라이언트가 OPEN 작업의 NFSv4 시퀀스 ID를 보유하고 있었기 때문에 발생했습니다. 이 문제는 클라이언트가 열려 있는 권한 확인을 시작하기 전에 시퀀스 ID를 해제하여 해결됩니다.
- BZ#983288
- 이전에는 NFS에서 파일에 바이트 범위 잠금을 설정하지 않은 경우에만 전체 페이지를 포함하도록 NFS 파일 쓰기를 확장할 수 있었습니다. 그러나 전체 페이지를 포함하도록 쓰기를 확장하는 것은 조각화 비효율성을 피하기 위해 필요한 경우가 있습니다. 예를 들어 연속적이지 않은 일련의 쓰기가 파일에서 수행된 경우 눈에 띄는 성능 저하가 보고되었습니다. 전체 파일이 쓰기용으로 잠겨 있거나 클라이언트에 쓰기 위임이 있는 경우 NFS에서 전체 페이지 쓰기로 파일 쓰기를 확장할 수 있는 NFS 코드에 패치가 적용되었습니다.
- BZ#998752
- 취소된 NFSv4 위임의 처리를 수정하기 위해 커널 버전 2.6.32-358.9.1.el6에 포함된 패치로 NFSv4 코드에 회귀 버그가 발생했습니다. 특정 상황에서 NFSv4 예외 및 비동기 오류 처리에서 이러한 회귀를 통해 NULL inode를 NFSv4 위임 관련 함수에 전달하여 커널 패닉이 발생했습니다. 이 상황에서 NULL inode를 더 이상 전달할 수 없도록 NFSv4 예외 및 비동기 오류 처리가 수정되었습니다.
- BZ#947582
- XFS 파일 시스템은 "xfs_trans_ail_delete_bulk: AIL" 오류 메시지에 없는 로그 항목을 삭제하려고 하는 경우가 있었습니다. 이 문제는 EFI/EFD 처리 논리가 잘못되었으며 EFI 로그 항목이 AIL에 배치되어 커밋되기 전에 해제되었을 수 있었기 때문에 발생했습니다. EFI/EFD 처리 논리를 수정하는 XFS 코드에 패치가 적용되어 EFD 로그 항목이 처리되기 전에 EFI 로그 항목이 해제되지 않도록 합니다. 앞서 언급한 오류는 XFS 종료 시 더 이상 발생하지 않습니다.
- BZ#947275
- Cryostat4 마운트 만료 코드의 버그로 인해 Cryostat4 모듈이 사용 중인 NFS 마운트 트리를 "사용하지 않음"으로 잘못 보고할 수 있습니다. 그 결과, 192.0.2.는 트리를 마운트 해제하려고 시도했으며 " umount 오프셋 실패" 오류로 인해 실패했습니다. 마운트 트리가 빈 디렉토리로 표시됩니다. 잘못 사용된 dentry 마운트 검사를 제거하기 위해 패치가 적용되었으며 앞서 언급한 문제가 더 이상 발생하지 않습니다.
- BZ#927988
- st 커널 모듈을 반복적으로 추가 및 제거하면 시스템이 응답하지 않을 수 있었습니다. 이는 SCSI 보행 드라이버의 디스크 대기열 참조 수 버그로 인해 발생했습니다. 이 버그를 해결하는 업스트림 패치가 SCSI인 드라이버로 백포트되었으며 이 상황에서 시스템이 예상대로 응답합니다.
- BZ#927918
- 이전 업데이트에서는 블록 장치 큐가 삭제될 때 -ENODEV 오류 코드를 반환하는 blk_get_request() 함수에 새로운 실패 모드를 도입했습니다. 그러나 변경 사항에는 함수의 모든 호출자에 대한 NULL 포인터 확인이 포함되지 않았습니다. 결과적으로 커널은 시스템에서 블록 장치를 제거할 때 NULL 포인터를 역참조하여 커널 패닉이 발생했습니다. 이번 업데이트에서는 이러한 누락된 NULL 포인터 검사를 추가하는 패치를 적용합니다. 또한 blk_get_request() 함수의 일부 호출자는 이전에 -ENODEV 대신 -ENOMEM 오류 코드를 반환할 수 있어 잘못된 호출 체인 전파가 발생합니다. 이번 업데이트에서는 올바른 반환 코드가 전파되는 패치를 적용합니다.
- BZ#790921
- 기본적으로 커널은 VMAs(가상 메모리 영역) 할당을 위한 최적의 알고리즘을 사용하여 처리된 파일을 주소 공간에 매핑합니다. 그러나 대량의 작은 파일(수천 또는 수백만의 중복)이 매핑되면 주소 공간이 매우 조각화되어 CPU 사용량과 성능이 저하되었습니다. 이번 업데이트에서는 활성화된 경우 이전에 할당된 VMA 이후의 주소 공간의 첫 번째 사용되지 않는 영역에 파일을 매핑할 수 있는 선택적 다음 적합성 정책이 도입되었습니다.
- BZ#960717
- "devloss" 시간 초과와 검색 상태 머신 간의 드문 경합 상태는 두 개의 회전 잠금을 역순으로 중첩된 lpfc 드라이버의 버그를 트리거할 수 있습니다. 회전 잠금의 역순으로 인해 교착 상태가 발생하고 시스템이 응답하지 않습니다. 이번 업데이트를 통해 교착 상태 문제를 해결하는 패치가 적용되어 이 상황에서 시스템이 더 이상 중단되지 않습니다.
- BZ#922999
- 업스트림에서 블록 예약 기능을 백포트하는 동안 오류가 발생하면 시스템 호출 이름 변경 중에 할당이 필요할 때 예약 구조가 누락되었습니다. 파일 시스템 오브젝트(예: 파일 또는 디렉터리)의 이름을 변경하려면 대상 디렉터리에 대한 블록 할당이 필요합니다. 대상 디렉터리에 예약 구조가 할당되지 않은 경우 NULL 포인터 역참조가 발생하여 커널 패닉이 발생했습니다. 이번 업데이트를 통해 이름 변경 작업 전에 예약 구조가 할당되고 이 시나리오에서는 커널 패닉이 더 이상 발생하지 않습니다.
- BZ#805407
- 로그 I/O 완료를 기다리는 XFS 파일 시스템을 종료하려는 시도로 인해 시스템이 응답하지 않을 수 있었습니다. XFS 코드에 대한 패치가 적용되어 종료 방법을 다른 컨텍스트에서 호출할 수 있으므로 AIL 외부에서 XFS 로그 항목을 올바르게 삭제할 수 있으므로 이 문제를 해결합니다.
- BZ#922931
- dm_btree_remove() 함수의 버그로 인해 리프 값에 잘못된 참조 수가 포함될 수 있습니다. 공유 블록을 제거하면 더 이상 사용되지 않는 블록을 고려한 공간 맵이 발생할 수 있습니다. 결과적으로 thin 장치의 공유 리전에 삭제 요청을 전송하면 스냅샷이 손상될 수 있었습니다. 이 시나리오의 손상을 방지하기 위해 버그가 수정되었습니다.
- BZ#980273
- 메모리 매핑 코드의 최근 변경으로 인해 처리된 파일을 주소 공간에 매핑하기 위해 VMAs를 할당하는 새로운 선택적인 차세대 알고리즘이 도입되었습니다. 그러나 이러한 변경으로 인해 특정 내부 기능의 동작이 중단되어 VMA 할당 체계가 아닌 다음 VMA 할당 체계를 항상 따랐습니다. 결과적으로 첫 번째 적합성 VMA 할당 스키마를 사용하는 경우 이 버그로 인해 선형 주소 공간 조각화가 발생하여 mmap() 요청에 대한 초기 "-ENOMEM" 오류가 발생할 수 있었습니다. 이 패치는 원래의 첫 번째 적합성 동작을 함수에 복원하므로 앞서 언급한 문제가 더 이상 발생하지 않습니다.
- BZ#922779
- Cryostat2가 4KB의 섹터 크기가 있는 블록 장치에 대해 섹터 오프셋을 올바르게 계산하지 않아 이러한 장치에서 데이터와 메타데이터가 손실되었습니다. 이 문제를 해결하는 패치가 적용되어 삭제 및 FITRIM 요청이 이제 4KB 섹터 크기가 있는 블록 장치에 대해 예상대로 작동합니다.
- BZ#1002765
- 실시간(RT) 스케줄러의 버그로 인해 실행 대기열의 잘못된 속성으로 인해 RT 우선 순위 프로세스가 중지될 수 있습니다. 이 버그의 영향을 받을 때 마이그레이션 커널 스레드는 CPU에서 실행을 중지한 후 영향을 받는 CPU로 마이그레이션된 다른 모든 프로세스도 실행을 중지했습니다. RT 스케줄러 및 RT 우선 순위 프로세스에 패치가 적용되어 더 이상 이 문제에 영향을 미치지 않습니다.
- BZ#920794
- ip 유틸리티의 혼잡 창 잠금 기능을 사용하면 시스템이 응답하지 않을 수 있습니다. 이는 라우팅 메트릭을 사용하여 혼잡 창이 잠긴 경우 tcp_slow_start() 함수가 무한 루프를 입력할 수 있었기 때문에 발생했습니다. 업스트림 커널을 준수하기 위해 패치 세트가 적용되어 이 시나리오에서는 문제가 더 이상 발생하지 않습니다.
- BZ#978609
- 중단 작업 및 isci 드라이버의 SPP 장치 작업 관리 경로의 경쟁 조건으로 인해 드라이버가 SAS 디스크 장치에서 보류 중인 시간 초과 I/O 요청을 정리하지 못할 수 있습니다. 결과적으로 커널은 시스템에서 이러한 장치를 제거했습니다. isci 드라이버에 적용된 패치는 중단 기능이 입력되고 작업이 완료되지 않은 경우 작업 관리 기능 요청을 SAS 드라이브에 전송하여 이 문제를 해결합니다. 이제 드라이버는 이 상황에서 예상대로 시간 초과 I/O 요청을 정리합니다.
- BZ#920672
- 커널의 initialization 코드의 경쟁 조건으로 인해 hpsa 및 hpilo 드라이버의 요청에서 IOMMU 기능이 활성화된 AMD 시스템에서 AMD iommu 드라이버를 초기화하는 동안 IO_PAGE_FAULT 오류가 발생할 수 있었습니다. 이 경합 상태를 트리거하지 않도록 커널은 이제 init_device_table_dma() 함수를 실행하여 통합 매핑의 초기화가 완료된 후에만 모든 장치의 requests를 차단합니다.
- BZ#1003697
- 구성된 본딩 장치에서 arp_interval 및 arp_validate 본딩 옵션이 올바른 순서로 활성화되지 않은 경우 본딩 장치에서 ARP 응답을 처리하지 않아 활성 슬레이브 장치의 실패 및 변경 사항을 연결했습니다. arp_validate 및 arp_interval 값을 기반으로 내부 본딩 ARP 후크를 수정하는 일련의 패치가 적용되었습니다. 따라서 arp_validate가 이미 활성화된 후에도 arp_interval이 설정되어 있고 ARP 응답이 예상대로 처리되더라도 ARP 후크가 등록됩니다.
- BZ#920445
- FPU를 사용하는 다중 스레드 프로세스가 중단된 경우 커널은 덤프 파일을 생성하는 대신 거의 종료될 수 없었습니다. 이는 커널이 모든 스레드가 비활성화될 때까지 기다리지 않고 활성 스레드의 FPU 상태를 메모리로 덤프하려고 시도하여 BUG_ON() 루틴을 트리거했기 때문에 발생했습니다. 이 문제를 해결하는 패치가 적용되었으며 커널은 이제 FPU 상태를 메모리에 덤프하기 전에 스레드가 비활성화될 때까지 기다립니다.
- BZ#962460
- 이전에는 VLAN 장치에 대해 GRO(Generic Receive Offload) 기능이 기본적으로 활성화되지 않았습니다. 결과적으로 be2net 드라이버를 사용하는 VFA(Embulex Virtual Fabric Adapter) II와 같은 특정 네트워크 어댑터가 VLAN 태그를 사용할 때 패킷을 삭제하고 8021q 커널 모듈이 로드되었습니다. 이번 업데이트에서는 VLAN 장치에 대해 기본적으로 GRO를 활성화하는 패치를 적용합니다.
- BZ#827548
- 메모리 관리(mm) 코드에서 read_swap_cache_async()와 get_swap_page() 함수 간의 경쟁 조건으로 인해 교착 상태가 발생할 수 있습니다. 교착 상태는 커널 선점이 비활성화된 경우 블록 DISCARD 및 TRIM 작업을 지원하는 장치에 스왑 파티션을 배포한 시스템에서만 발생할 수 있습니다(!CONFIG_PREEMPT 매개변수). read_swap_cache_async() 함수에 스왑 캐시에 페이지가 없는 SWAP_HAS_CACHE 항목이 제공되면 DISCARD 작업이 scan_swap_map() 함수에서 수행되었습니다. 결과적으로 I/O 작업의 완료는 동일한 CPU의 작업 큐에 read_swap_cache_async()가 실행 중임을 예약했습니다. 이로 인해 read_swap_cache_async()의 스레드가 "-EEXIST" 케이스 주위에 무기한 루프되어 시스템이 응답하지 않게 렌더링되었습니다. 이 문제는 read_swap_cache_async()에 명시적으로 cond_resched() 호출을 추가하여 해결되어 영향을 받는 CPU에서 다른 작업을 실행할 수 있으므로 교착 상태를 방지할 수 있습니다.
- BZ#987426
- NFSv4 코드의 무한 루프 버그로 인해 NFSv4 마운트 프로세스가 NFSv4 파일 시스템을 마운트하려고 할 때 LOOKUP_ROOT 작업의 사용 중인 루프에 중단되고 이 작업에 대한 첫 번째 반복이 실패했습니다. LOOKUP_ROOT 작업을 제대로 종료할 수 있는 패치가 적용되었으며 이 상황에서 마운트 시도가 성공하거나 실패합니다.
- BZ#828936
- OProfile 툴의 버그로 인해 OProfile 커널 모듈을 언로드하는 동안 NULL 포인터 역참조가 발생하여 커널 패닉이 발생했습니다. nolapic 매개변수 세트를 사용하여 커널이 실행 중이고 OProfile이 NMI 타이머 인터럽트를 사용하도록 구성된 경우 문제가 트리거되었습니다. OProfile을 초기화할 때 NMI 타이머를 올바르게 설정하여 문제가 해결되었습니다.
- BZ#976915
- 이전에 NFS 클라이언트는 파일에 바이트 범위 잠금을 해제하기 위해 LOCKU 및 RELEASE_LOCKOWNER 작업을 NFS 서버로 보내기 전에 완료되지 않은 I/O 작업이 완료될 때까지 기다리지 않았습니다. 결과적으로 서버가 관련 READ 작업 중 일부 전에 LOCKU 및 RELEASE_LOCKOWNER 작업을 처리하면 요청된 잠금 소유자와 연결된 모든 잠금 상태를 해제하고 READs에서 NFS4ERR_BAD_STATEID 오류 코드를 반환했습니다. 이로 인해 "Lock reclaim failed!" 오류 메시지가 시스템 로그에 생성되고 NFS 클라이언트가 오류에서 복구해야 했습니다. 일련의 패치가 적용되어 NFS 클라이언트가 잠금을 해제하기 전에 모든 미해결 I/O 작업이 완료될 때까지 기다립니다.
- BZ#918239
- Red Hat Enterprise Linux 6 커널이 가상 머신으로 실행되면 하이퍼바이저의 부팅 시간 탐지를 수행하여 하이퍼바이저별 최적화를 활성화합니다. Red Hat Enterprise Linux 6.4는 Microsoft Hyper-V 하이퍼바이저의 탐지 및 최적화를 도입했습니다. 그러나 이전 Hyper-V가 먼저 감지되었지만 일부 Cryostat 하이퍼바이저가 Hyper-V를 에뮬레이션하려고 할 수 있으므로 에뮬레이션이 정확하지 않을 때 부팅 실패가 발생할 수 있습니다. IoT 탐지 시도가 항상 Hyper-V 전에 수행되도록 패치가 적용되어 이 문제를 해결합니다.
- BZ#962976
- 감사 큐가 너무 긴 경우 커널은 kauditd 데몬을 예약하여 감사 큐의 부하를 완화합니다. 이전 버전에서는 현재 감사 프로세스에 이러한 상황에서 보류 중인 신호가 있는 경우 wait_for_auditd() 함수가 인터럽트 가능 작업으로 호출되었기 때문에 감사 백로그 시간 동안 busy-wait 루프에 진입했습니다. 이로 인해 선점되지 않은 비iprocessor 시스템에서 시스템 잠금이 발생할 수 있습니다. 이번 업데이트에서는 wait_for_auditd()를 중단되지 않음으로 설정하여 문제를 해결합니다.
- BZ#833299
- 펌웨어의 버그로 인해 LSI MegaRAID 컨트롤러를 사용하는 시스템이 첫 번째 커널에 "intel_iommu=on" 및 "iommu=pt"커널 매개 변수가 지정된 경우 kdump 커널에서 이 장치를 초기화하지 못했습니다. 펌웨어 수정을 사용할 수 있을 때까지 해결 방법으로 megaraid_sas 드라이버에 대한 패치가 적용되어 처음으로 컨트롤러를 초기화하려고 할 때 펌웨어가 준비 상태에 있지 않은 경우 드라이버가 컨트롤러를 재설정하고 준비 상태로 전환하도록 재시도합니다.
- BZ#917872
- 포트 자동 선택 코드의 이전 변경으로 인해 사용 빈도가 충돌하지 않고 포트를 공유할 수 있습니다. 결과적으로 SO_REUSEADDR 소켓 옵션을 사용하여 소켓을 바인딩할 때 bind(2) 함수가 이미 사용된 임시 포트를 할당할 수 있었습니다. 후속 연결 시도는 EADDRNOTAVAIL 오류 코드가 있는 경우 실패했습니다. 이번 업데이트에서는 포트 자동 선택 코드를 수정하는 패치를 적용하여 이제 SO_REUSEADDR 옵션이 활성화된 경우에도 bind(2)가 비 충돌 포트를 선택하도록 합니다.
- BZ#994430
- 브릿지 멀티캐스트 코드에 대한 이전 패치로 IPv6 멀티 캐스트 쿼리를 수신할 때마다 멀티 캐스트 그룹에 대한 활성 타이머를 다시 초기화할 수 있는 버그가 도입되었습니다. 브릿지 멀티캐스트 코드에 패치가 적용되어 브리지 멀티캐스트 타이머가 활성 상태일 때 더 이상 다시 초기화되지 않습니다.
- BZ#916994
- 여러 iSCSI, FC 또는 SRP 경로를 사용하여 iSCSI 이니시에이터 및 iSCSI 대상을 연결하는 시스템에서 커널 패닉이 발생할 수 있습니다. 이는 SCSI 드라이버의 경쟁 조건으로 실행 큐를 처리하기 전에 시스템에서 SCSI 장치를 제거할 수 있었기 때문에 NULL 포인터 역참조가 발생했습니다. SCSI 드라이버가 수정되었으며 이제 활성화되어 있는 동안 SCSI 장치 실행 대기열에 대한 참조를 유지하여 경쟁을 방지할 수 있습니다.
- BZ#994382
- 커널의 md 드라이버에는 커널 패닉을 일으킬 수 있는 raid10 코드의 use-after-free 버그가 포함되어 있었습니다. 또한 raid5 코드의 데이터 손상 버그가 발견되었습니다. 드라이브에 포함된 RAID4, RAID5 또는 RAID6 어레이가 복구 프로세스 중일 때 하드 드라이브가 교체되었을 때 버그가 발생했습니다. 발견된 모든 버그를 수정하기 위해 일련의 패치가 적용되었습니다. md 드라이버에는 이제 언급된 use-after-free 및 데이터 손상 버그가 발생하지 않도록 하는 필수 테스트가 포함되어 있습니다.
- BZ#840860
- RPC 작업을 끊는 sunrpc 코드 경로는 속도를 위해 고도로 최적화되므로 코드는 잠금 메커니즘을 사용하지 않지만 정확한 작업 순서가 필요합니다. 작업 순서와 관련하여 여러 버그가 발견되었으며 이로 인해 BUG_ON() 어설션 또는 sunrpc 계층에서 데이터 구조를 잘못 사용하는 커널이 충돌했습니다. 이러한 문제는 sunrpc 계층의 wake-up 코드 경로에서 RPC_TASK_QUEUED 및 RPC_TASK_RUNNING 비트와 관련된 작업을 올바르게 정렬하여 해결되었습니다.
- BZ#916735
- RPC 코드에서 네트워크 소켓이 높은 네트워크 트래픽으로 백업되면 타이머가 설정되어 재전송으로 인해 네트워크 트래픽이 더 많이 생성될 수 있습니다. 이 문제를 방지하기 위해 RPC 코드는 타이머를 설정하는 대신 소켓이 비어 있을 때까지 기다립니다.
- BZ#916726
- 병렬 NFS(pNFS)를 사용하는 경우 open() 시스템 호출 중에 파일 레이아웃 정보를 가져오는 동안 프로세스가 종료될 때 커널 패닉이 발생할 수 있었습니다. 이 시나리오에서 이러한 문제가 발생하지 않도록 패치가 적용되었습니다.
- BZ#916722
- 이전에는 open(2) 시스템 호출이 처리될 때 GETATTR 루틴에서 유효한 속성도 반환되었는지 확인하지 않았습니다. 결과적으로 open() 호출이 이러한 경우 실패하는 대신 유효하지 않은 속성으로 성공했습니다. 이번 업데이트에서는 누락된 검사가 추가되어 유효한 속성이 반환되는 경우에만 open() 호출이 성공합니다.
- BZ#916361
- crypto_extensionval_lookup() 함수는 암호화 알고리즘이 등록되지 않은 경우에도 암호화 알고리즘을 등록할 때 까지의 상태를 반환할 수 있습니다. 이로 인해 extensionval이 두 번 종료되고 커널 패닉이 발생할 수 있습니다. 예를 들어 NFS 서비스가 FIPS 모드에서 실행된 경우와 FIPS 모드에 이 알고리즘의 블랙리스트가 있는 경우에도 MD5 해시 알고리즘을 사용하려고 했습니다. extensionval을 반환하기 전에 생성되었는지 확인하기 위해 crypto_extensionval_lookup() 함수에 조건이 추가되었습니다.
- BZ#976879
- 이전 버전에서는 고도로 로드된 NFS 서버를 실행하는 시스템에서 특히 대기 시간이 높은 연결보다 동시 수정이 발생한 대규모 디렉토리에서 NFS READDIR 작업이 저하될 수 있었습니다. 이 문제는 NFS 코드가 특정 dentry 작업을 비효율적으로 수행하고 디렉토리 속성을 너무 자주 재검증했기 때문에 발생했습니다. 이번 업데이트에서는 다음과 같이 문제를 해결하는 일련의 패치를 적용합니다. 필요한 dentries는 READDIR 작업 후에 dcache에서 액세스할 수 있으며 디렉터리 속성은 디렉터리 시작 시 또는 캐시된 특성이 만료되는 경우에만 다시 무효화됩니다.
- BZ#976823
- Cryostat2는 파일 크기를 늘리는 동안 할당량 변경 블록에 대한 저널 공간을 예약하지 않았습니다. 결과적으로 보조 비트맵에서 사용 가능한 블록이 할당될 때 polkit2 파일 시스템을 철회하는 치명적인 어설션이 트리거될 수 있었습니다. 이번 업데이트를 통해 polkit2는 할당량 변경의 저널에 추가 블록을 예약하여 이 상황에서 파일 증가 트랜잭션을 성공적으로 완료할 수 있습니다.
- BZ#976535
- CIFS 코드에 대한 이전 패치로 인해 특정 조건에서 CIFS DFS 공유의 마운트 시도가 "마운트 오류 (6): No such device or address" 오류 메시지와 함께 문제가 발생했습니다. 이는 이전 마운트 시도에 실패한 후 반환 코드 변수가 제대로 재설정되지 않았기 때문에 발생했습니다. 이제 변수를 올바르게 재설정하기 위해 백포트된 패치가 적용되고 CIFS DFS 공유를 예상대로 마운트할 수 있습니다.
- BZ#965002
- PCI 드라이버의 버그로 인해 이미 해제된 VF(가상 기능) 장치 항목에 대한 포인터를 사용할 수 있습니다. 그 결과 SR-IOV 장치가 활성화된 I/O 장치를 핫-제거하면 커널 패닉이 발생했습니다. 이번 업데이트에서는 PCI 드라이버를 수정하여 PF(물리 기능) 장치 항목에 대한 유효한 포인터가 사용되고 이 상황에서 커널이 더 이상 패닉 상태가 되지 않도록 합니다.
- BZ#915834
- IRQ 행을 다른 장치와 공유한 경우 uhci-hcd 커널 모듈에서 경쟁 조건이 발생할 수 있습니다. 경쟁 조건으로 인해 데이터 구조가 완전히 초기화되기 전에 IRQ 처리기 루틴이 호출되어 시스템이 응답하지 않게 되었습니다. 이번 업데이트에서는 IRQ 처리기 루틴에 테스트 조건을 추가하여 문제를 해결하는 패치를 적용합니다. 데이터 구조 초기화가 아직 진행 중인 경우 처리기 루틴이 즉시 완료됩니다.
- BZ#975507
- CPU 액셀러레이터에서 제대로 설계되지 않은 계산은 시스템 가동 시간이 kexec를 사용하여 새 커널로 부팅하기 전에 208일을 초과하면 set_cyc2ns_scale() 함수에서 연산 오버플로를 유발할 수 있습니다. 이 오버플로는 TSC(Time Stamp Cryostat) 클럭 소스를 사용하여 시스템에서 커널 패닉을 초래했으며, 주로 소프트 전원 사이클에서 TSC를 재설정하지 않는 Intel Xeon E5 프로세서를 사용하는 시스템에서 문제가 발생했습니다. 이러한 상황에서 이차 오버플로 및 커널 패닉이 더 이상 발생하지 않도록 계산을 수정하는 패치가 적용되었습니다.
- BZ#915479
- NFSv4 nfsd 코드의 버그로 인해 nfsd가 fsync 작업에 대한 NFSv4 복구 디렉터리에 대한 경로를 찾고 있을 때 NULL 포인터가 역참조될 수 있었습니다. 이로 인해 커널 패닉이 발생했습니다. 이번 업데이트에서는 NFSv4 nfsd 코드를 수정하는 패치를 적용하여 경로를 조회하는 대신 NFSv4 복구 디렉터리에서 fsync 파일 설명자를 엽니다. 이 상황에서 커널은 더 이상 패닉이 발생하지 않습니다.
- BZ#858198
- 이전에는 본딩 및 브리지 장치에서 GRO(Generic Receive Offload) 정보를 슬레이브 장치에 전달하지 않았으며 브리지 장치도 VLAN 정보를 해당 포트에 전파하지 않았습니다. 결과적으로 VLAN이 브리지 또는 본딩 장치를 통해 구성된 환경에서 브리지 및 본딩 장치에 구성된 슬레이브 장치의 성능이 크게 낮았습니다. 본딩 및 브리지 장치에 대한 GRO 기능을 추가하고 참여하는 브릿지 포트에 VLAN을 등록할 수 있는 일련의 패치가 적용되었습니다. 슬레이브 장치가 GRO를 지원하는 경우 VLAN이 브리지 또는 본딩 장치를 통해 구성된 환경에서 성능이 크게 향상됩니다.
- BZ#975211
- NFS 코드의 버그로 인해 커널 size-192 및 size-256 slab 캐시가 메모리를 누출할 수 있었습니다. 이로 인해 해당 slab 캐시에서 사용 가능한 대부분의 메모리를 가장 많이 사용하는 경우 OOM 문제가 발생할 수 있습니다. 이 문제를 해결하기 위해 패치가 적용되었으며 NFS 코드의 해당 속성이 올바르게 해제되었습니다.
- BZ#913704
- 이전에는 NFSv3 서버가 복구된 후 NLM(NFS Lock Manager)에서 차단 잠금 요청을 다시 전송하지 않았습니다. 결과적으로 애플리케이션이 NFSv3 마운트에서 실행되고 차단 잠금을 요청했을 때 애플리케이션에 -ENOLCK 오류가 발생했습니다. 이 패치를 사용하면 유예 기간이 만료된 후 NLM이 항상 차단 잠금 요청을 다시 보냅니다.
- BZ#862758
- CPU 시간을 계산할 때 utime 및 stime 값은 rtime을 기반으로 조정됩니다. 이번 업데이트 이전에는 utime 값에 rtime 값을 곱했지만 정수 곱셈 오버플로가 발생하여 결과 값이 64비트로 잘릴 수 있었습니다. 그 결과 애플리케이션이 많은 CPU 시간을 소비하더라도 사용자 공간에 utime 값이 중단되었습니다. 이번 업데이트를 통해 utime 대신 곱셈이 수행됩니다. 이렇게 하면 utime 값과 달리 시간 값이 빠르게 증가할 수 없기 때문에 대부분의 워크로드에서 오버플로가 크게 줄어듭니다.
- BZ#913660
- 손상되었거나 악의적인 서버의 경우 잘못된 유형의 인덱스 노드(inode)를 일치시킬 수 있습니다. 이로 인해 NFS 클라이언트 NULL 포인터 역참조가 발생하여 결과적으로 커널 oops가 발생했습니다. 이 시나리오에서 이 문제가 발생하지 않도록 하기 위해 inode 유형이 올바른지 확인하기 위해 검사가 추가되었습니다.
- BZ#913645
- 이전에 적용된 패치는 ipoib_cm_destroy_tx() 함수에 버그를 도입하여 지원되는 잠금 없이 목록 간에 CM 오브젝트를 이동할 수 있었습니다. 시스템 부하가 많은 경우 이로 인해 시스템이 중단될 수 있습니다. 이번 업데이트를 통해 경쟁 조건을 수정하기 위해 CM 오브젝트의 적절한 잠금이 다시 소개되었으며 작업이 많은 부하에서 시스템이 더 이상 충돌하지 않습니다.
- BZ#966853
- 이전 버전에서는 Red Hat Enterprise Linux 6.4 시스템을 부팅하고 ACPI 고정 리소스 유사성 테이블(SRAT)에 핫 플러그 가능 비트가 활성화된 경우 커널은 SRAT 테이블이 올바르지 않고 NUMA가 구성되지 않은 것으로 간주되었습니다. 이로 인해 일반적인 보호 결함이 발생하고 시스템에서 커널이 패닉되었습니다. SRAT 코드 테이블 일관성 검사를 방지하기 위해 코드에서 SMBIOS 검사를 사용하여 문제가 해결되었습니다. 이제 NUMA가 예상대로 구성되고 이 상황에서 커널이 더 이상 패닉 상태가 되지 않습니다.
- BZ#912963
- HP Cryostat DL980 G7과 같은 특정 서버에서 일반 커널을 부팅할 때 일부 인터럽트가 손실되어 시스템이 응답하지 않거나 데이터 손실도 거의 발생하지 않을 수 있습니다. 이는 커널이 부팅 중에 올바른 대상 모드를 설정하지 않았기 때문에 발생했습니다. 이 시스템은 "x2apic 물리 모드"만 지원하는 동안 기본적으로 "논리적 클러스터 모드"로 부팅되었습니다. 이번 업데이트에서는 문제를 해결하는 일련의 패치가 적용됩니다. 기본 APIC 코드가 수정되어 x2apic 프로빙 코드가 Fixed ACPI Description Table(FADT)을 확인하고 x2apic "physical" 드라이버를 예상대로 설치합니다. 또한 APIC 코드가 간소화되고 코드가 프로브 루틴을 사용하여 대상 APIC 모드를 선택하고 올바른 APIC 드라이버를 설치합니다.
- BZ#912867
- 이전에는 fsync(2) 시스템 호출에서 ENOSPC(장치에 남아 있는 공간 없음) 오류 대신 EIO(입력/출력) 오류가 잘못 반환되었습니다. 이는 페이지 캐시에서 잘못된 오류 처리 때문입니다. 이 문제가 해결되어 올바른 오류 값이 반환됩니다.
- BZ#912842
- 이전에는 NFS RPC 작업이 교착 상태에 진입하여 NFSv4 상태 직렬화 잠금을 사용할 수 있을 때까지 대기하고 NFSv4 서버에서 세션 슬롯을 보유하고 있는 경우 응답하지 않을 수 있었습니다. 이번 업데이트에서는 pNFS 반환 온-닫기 코드에서 가능한 경합 조건과 함께 이 문제를 해결합니다. 위임 리콜이 적용되는 경우 위임된 OPEN 작업을 수락하지 않도록 NFSv4 클라이언트도 수정되었습니다. 클라이언트는 이제 클라이언트가 CLAIM_DELEGATE_CUR 개방형 모드를 사용하는 경우 위임을 반환하려고 하는 NFSv4 서버도 보고합니다.
- BZ#912662
- CPU 시간이 계산된 방식으로 인해 수백 개의 커널 스레드를 사용 중인 CPU 바인딩 프로세스를 실행한 몇 일 후에 정수 곱셈 오버플로 버그가 발생할 수 있었습니다. 결과적으로 커널은 CPU 시간 업데이트를 중지하고 대신 잘못된 CPU 시간을 제공했습니다. 이로 인해 사용자를 혼동하고 다양한 애플리케이션 문제가 발생할 수 있습니다. 이번 업데이트에서는 stime 및 rtime 값이 너무 클 때 계산의 정확도를 줄임으로써 이 문제를 해결하는 패치를 적용합니다. 또한 stime 값을 허용하는 버그는 utime 값으로 잘못 계산되는 경우가 있었습니다.
- BZ#967095
- lockd 데몬의 드문 경합 조건으로 인한 NULL 포인터 역참조로 인해 NFS 서버가 예기치 않게 종료될 수 있었습니다. 적용된 패치는 스핀 잠금으로 관련 코드를 보호하여 이 문제를 해결하여 잠기지 않도록 합니다.
- BZ#911359
- eHEA 이더넷 어댑터의 VLAN(Virtual LAN) 지원이 예상대로 작동하지 않았습니다. "dmesg" 명령을 실행할 때 "devicegy VLAN hw accel" 메시지가 보고되었을 수 있었습니다. 업스트림 백포트 패치가 vlan_rx_register() 기능을 제거했기 때문입니다. 이번 업데이트에서는 함수 백엔드가 추가되었으며 eHEA VLAN 지원이 예상대로 작동합니다. 이번 업데이트에서는 VLAN 패킷을 처리할 때 NULL 포인터 역참조로 인해 발생할 수 있는 커널 패닉을 해결합니다. 패치는 VLAN 그룹이 네트워크 스택에서 설정되었는지 여부를 확인하는 테스트 조건을 추가하여 가능한 NULL 포인터를 역참조하지 않으며 이 상황에서 커널이 더 이상 충돌하지 않습니다.
- BZ#910597
- 이전에 RTAS (RunTime Abstraction Services)의 커널 구현을 통해 PowerPC 및 IBM System p 시스템에서 실시간 파티션 마이그레이션 중에 인터럽트 컨텍스트에서 stop_topology_update() 함수를 호출할 수 있었습니다. 그 결과 시스템이 응답하지 않게 되었습니다. 이번 업데이트에서는 마이그레이션 프로세스 초기에 stop_topology_update()를 호출하여 문제를 해결했으며 이 상황에서 시스템이 더 이상 중단되지 않습니다.
- BZ#875753
- Cryostat2 파일 시스템의 파일을 자르면 "커널 NULL 포인터 역참조를 처리할 수 없음" 오류와 함께 실패할 수 있습니다. 이는 코드가 잘못된 포인터를 참조하도록 하는 누락된 예약 구조 때문입니다. 이를 방지하기 위해 파일을 자르기 전에 블록 예약 구조를 할당하기 위해 패치가 적용되었습니다.
- BZ#909464
- 이전에는 Emulex BladeEngine 2(BE2) 컨트롤러에서 경합 상태가 중단되어 네트워크 어댑터가 응답하지 않는 경우가 있었습니다. 이번 업데이트에서는 be2net 드라이버에 대한 일련의 패치를 제공하여 경쟁이 발생하지 않습니다. BE2 칩셋을 사용하는 네트워크 카드는 인터럽트 이벤트를 잘못 처리했기 때문에 더 이상 중단되지 않습니다.
- BZ#908990
- 이전에는 시스템에서 전원 제한 알림 인터럽트가 기본적으로 활성화되어 있었습니다. 이로 인해 시스템 성능이 저하되거나 Dell PowerEdge 서버와 같은 특정 플랫폼에서 시스템을 사용할 수 없게 될 수도 있습니다. 기본적으로 전원 제한 알림 인터럽트를 비활성화하도록 패치가 적용되었으며 사용자가 기존 시스템 카운터를 사용하여 이러한 이벤트를 관찰할 수 있도록 새 커널 명령줄 매개 변수 "int_pln_enable"이 추가되었습니다. 전원 제한 알림 메시지도 더 이상 콘솔에 표시되지 않습니다. 영향을 받는 플랫폼은 더 이상 이 문제로 인해 시스템 성능이 저하되지 않습니다.
- BZ#876778
- ipmi_si 드라이버 처리의 변경으로 인해 SIG Cryostat 플랫폼에서 Red Hat Enterprise Linux 6.4를 부팅하는 동안 광범위하게 지연이 발생했습니다. 이 드라이버는 현재 커널 내에서 빌드하는 동안 이전 버전의 Red Hat Enterprise Linux 6에서 커널 모듈로 로드되었습니다. 그러나 SIG Cryostat는 를 사용하지 않으므로 ipmi_si 드라이버를 지원하지 않습니다. 패치가 적용되었으며 이제 SIG Cryostat에서 부팅할 때 커널이 ipmi_si 드라이버를 초기화하지 않습니다.
- BZ#908851
- 이전에는 장치에 데이터가 포함되어 있지 않거나 다중 경로 장치가 일시적으로 모든 경로를 손실한 경우 대기열 제한이 유지되지 않았습니다. 이 문제는 dm_calculate_queue_limits() 함수에 대한 호출을 방지하여 해결되었습니다.
- BZ#908751
- virtio 디스크, virtio net, e1000 또는 rtl8139와 같은 가상 PCI 장치를 KVM 게스트에 추가할 때 kacpid 스레드는 새 장치가 추가되는 PCI 버스의 모든 장치의 핫 플러그 매개 변수를 다시 프로그래밍합니다. VGA 또는 QXL 그래픽 장치의 핫 플러그 매개 변수를 다시 프로그래밍할 때 그래픽 장치 에뮬레이션에서는 게스트의 섀도우 페이지 테이블을 플러시하도록 요청합니다. 이전에는 게스트에 대규모의 복잡한 섀도우 페이지 테이블이 있는 경우 플러시 작업에 상당한 시간이 소요되었으며 게스트가 몇 분 동안 응답하지 않는 것처럼 보일 수 있었습니다. 이로 인해 "soft lockup" 워치독의 임계값을 초과했으며 게스트와 호스트 커널 모두에서 "BUG: soft lockup" 이벤트가 기록되었습니다. 이번 업데이트에서는 이 문제를 처리하는 일련의 패치가 적용됩니다. KVM의 Memory Management Unit(MMU)은 이제 EPT(Extended Page Tables)를 지원하는 프로세서와 관련하여 여러 페이지 테이블 루트를 생성하지 않습니다. 이로 인해 EPT가 지원되는 시스템에서 게스트의 섀도우 페이지 테이블이 너무 복잡해지지 않습니다. MMU는 이제 대규모 메모리 매핑만 플러시하여 프로세서가 EPT를 지원하지 않는 시스템의 상황을 완화합니다. 또한 KVM MMU가 메모리 페이지를 해제하지 못하도록 할 수 있는 여유 메모리 계산 경쟁이 수정되었습니다.
- BZ#908608
- 특정 CPU에는 KVM 모듈에서 관리하는 활성 VMCS를 유지하는 데 사용되는 on-chip VMI(가상 시스템 제어 구조) 캐시가 포함되어 있습니다. 이러한 VMCS에는 KVM에서 운영하는 게스트 시스템의 런타임 정보가 포함되어 있습니다. 이러한 CPU는 캐시의 콘텐츠를 메모리로 플러시할 수 있는 VMCLEAR 명령을 지원해야 합니다. 이전에 커널이 Kdump에서 VMCLEAR 명령을 사용하지 않았습니다. 결과적으로 QEMU KVM 호스트의 코어를 덤프할 때 해당 CPU가 VMCS를 메모리에 플러시하지 않았으며 게스트의 런타임 정보는 코어 덤프에 포함되지 않았습니다. 이 문제는 Kdump에서 VMCLEAR 명령 사용 지원을 구현하는 일련의 패치로 해결되었습니다. 이제 QEMU KVM 호스트의 vmcore 파일에 예상대로 모든 VMCS 정보가 포함되도록 CPU에 필요한 경우 커널이 Kdump에서 VMCLEAR 작업을 수행합니다.
- BZ#908524
- pNFS(parallel NFS) 코드가 사용 중인 경우 파일 잠금 프로세스가 서버 재부팅 양식을 복구하는 동안 교착 상태를 입력할 수 있었습니다. 이번 업데이트에서는 이 시나리오의 교착 상태를 방지하는 새로운 잠금 메커니즘이 도입되었습니다.
- BZ#878708
- sysfs의 CPU 장치에 대한 심볼릭 링크가 누락되어 irqbalance 툴에서 CPU NUMA 노드 정보를 가져올 수 없는 경우가 있습니다. 이번 업데이트에서는 sysfs의 CPU 장치에 대한 NUMA 노드 심볼릭 링크를 추가하여 irqbalance를 사용하여 CPU 토폴로지를 빌드할 때 유용합니다.
- BZ#908158
- VFS(가상 파일 시스템) 코드에는 unlink 및 link 시스템 호출 간에 경쟁 조건이 있어 삭제(연결 해제됨) 파일에 대한 하드 링크를 생성할 수 있었습니다. 이는 특정 상황에서 파일 시스템이 종료되는 inode 손상을 일으킬 수 있습니다. 이 문제는 XFS 종료로 인해 복제된 Gluster 볼륨에서 Red Hat Storage에서 관찰되었습니다. 테스트 조건이 VFS 코드에 추가되어 삭제된 파일에 대한 하드 링크가 생성되지 않습니다.
- BZ#908093
- I/O 작업 후 polkit2 파일 시스템에서 불일치가 감지되면 커널은 로컬 노드에서 제거 작업을 수행합니다. 그러나 이전에 커널은 제거 작업을 진행하기 전에 polkit 제어 데몬(gfs_controld)의 승인을 기다리지 않았습니다. 따라서 RHEL2 파일 시스템을 데이터 스토리지에서 격리하는 데 오류가 발생하면 커널에서 이 문제를 인식하지 못했으며, 공유 블록 장치에 대한 I/O 작업이 성공적으로 기록된 후 수행될 수 있습니다. 이로 인해 파일 시스템이 손상되거나 노드가 저널 복구되지 않을 수 있었습니다. 이 패치는 Cryostat2 코드를 수정하여 gfs_controld의 승인 없이 삭제 작업이 더 이상 진행되지 않도록 하며, 제외 작업을 수행한 후 Cryostat2 파일 시스템이 더 이상 손상될 수 없습니다.
- BZ#907844
- 씬 프로비저닝이 활성화된 장치에서 논리 볼륨이 생성된 경우 mkfs.ext4 명령을 완료하는 데 시간이 오래 걸리며 다음 메시지가 시스템 로그에 기록되었습니다.
kernel: blk: request botched
이는 블록 및 SCSI 계층에서 완전히 작동하지 않은 요청 병합을 삭제했기 때문입니다. 이러한 문제가 발생하지 않도록 이 기능이 일시적으로 비활성화되어 있습니다. - BZ#907512
- dcache 및 Cryostat 코드를 수정한 이전 패치로 인해 회귀 문제가 발생했습니다. 이러한 회귀 문제로 인해 NFS 로드가 많은 시스템에서 만료된 많은 volume을 마운트 해제하여 소프트 잠금으로 인해 시스템이 응답하지 않습니다. "소프트 잠금" 워치독이 구성된 경우 머신이 재부팅됩니다. 회귀 문제를 해결하기 위해 잘못된 패치가 복원되었으며 이제 시스템은 소프트 잠금 없이 앞서 언급한 시나리오를 올바르게 처리합니다.
- BZ#907227
- 이전에는 병렬 네트워크 파일 시스템(pNFS)을 사용하고 데이터를 적절한 스토리지 장치에 작성할 때 메타데이터 서버로 전송되는 LAYOUTCOMMIT 요청이 내부적으로 실패할 수 있었습니다. 메타데이터 서버는 기록된 데이터를 기반으로 수정된 레이아웃을 제공하지 않았으며 이러한 변경 사항은 NFS 클라이언트에 표시되지 않았습니다. 이는 LAYOUTCOMMIT 및 LAYOUTRETURN 작업에 대한 인코딩 기능이 void로 정의되고 그에 따라 임의의 상태를 반환했기 때문에 발생했습니다. 이번 업데이트에서는 이러한 인코딩 함수가 예상대로 성공 시 0을 반환하도록 수정되었습니다. 이제 스토리지 장치의 변경 사항이 메타데이터 서버로 전파되고 예상대로 확인할 수 있습니다.
- BZ#883905
- AIL(활성 항목 목록)이 비어 있으면 xfsaild 데몬이 xfsaild_push() 함수에서 반환한 타임아웃 값에 따라 달라지는 작업 절전 상태로 이동합니다. 최신 변경 사항은 AIL이 비어 있을 때 10ms 값을 반환하도록 xfsaild_push()를 수정했으며, 이로 인해 xfsaild를 중단되지 않는 절전 상태(D 상태) 및 인위적으로 시스템 로드 평균으로 설정됩니다. 이번 업데이트에서는 timeout 값을 허용되는 최대 50ms로 설정하여 이 문제를 해결하는 패치를 적용합니다. 이렇게 하면 xfsaild가 인터럽트 가능한 절전 상태(S 상태)로 이동하여 부하 평균에 미치는 영향을 방지합니다.
- BZ#905126
- 이전에는 첫 번째 슬레이브 MAC 주소로 덮어쓰므로 init 스크립트가 마스터 인터페이스 MAC 주소를 올바르게 설정할 수 없었습니다. 이 업데이트를 통해 첫 번째 슬레이브를 자체 채택하기 전에 이 업데이트가 할당되지 않은 MAC 주소를 다시 확인합니다.
- BZ#884442
- be2net 드라이버의 버그로 인해 해당 대기열을 닫기 전에 RX, TX 및 MCC 대기열의 이벤트가 확인되지 않았습니다. 이로 인해 후속 큐를 여는 동안 RX 링을 생성할 때 예기치 않은 동작이 발생할 수 있습니다. 이번 업데이트에서는 이 문제를 해결하는 패치를 적용하여 이 시나리오에서 이벤트가 예상대로 인식됩니다.
- BZ#904726
- 이전에는 mlx4 드라이버에서 mlx4 카드의 다중 기능 모드에서 요청된 Cryostat-X 벡터의 수를 2로 설정했습니다. 그러나 mlx4 펌웨어의 기본 설정을 사용하면 더 많은 수의 요청된 Cryostat-X 벡터 (현재 펌웨어가 있는 4개)를 사용할 수 있습니다. 이번 업데이트에서는 기본 펌웨어 설정을 사용하도록 mlx4 드라이버를 수정하여 mlx4 카드의 성능을 향상시킵니다.
- BZ#904025
- Ctrl+C를 눌러 pNFS(parallel NFS) 마운트에서 많은 수의 파일을 읽고 실행 중인 작업을 취소하고 실행 중인 작업을 취소하면 XDR 코드에서 일반적인 보호 오류가 발생하여 "커널 페이징 요청을 처리할 수 없음" 메시지가 있는 커널 oop로 표시될 수 있었습니다. 이는 LAYOUTGET 작업의 디코딩이 작업자 스레드에 의해 수행되고 호출자가 작업자 스레드가 완료될 때까지 기다리기 때문에 발생했습니다. 읽기 작업이 취소되면 호출자가 대기를 중지하고 페이지를 해제했습니다. 따라서 XDR 코드에서 관련 함수를 호출한 작업자 스레드가 더 이상 존재하지 않습니다. 이러한 페이지의 정리 프로세스가 코드의 다른 위치로 이동되어 이 시나리오에서는 커널 oops가 발생하지 않습니다.
- BZ#903644
- mlx4 드라이버에 대한 이전 패치는 동일한 호스트에서 함수 간 통신을 허용하도록 내부 루프백을 활성화했습니다. 그러나 이러한 변경으로 인해 특정 상황에서 Mellanox 이더넷 어댑터가 기본(비SRIOV) 모드에서 작동하지 않게 되는 vSwitch(가상 스위치) 브리지 장치가 발생했습니다. 이 문제를 해결하기 위해 대상 MAC 주소는 SRIOV 또는 eSwitch 모드에서만 또는 장치 자체 테스트 중에만 전송된 패킷의 Tx 설명자에 작성됩니다. uplink 트래픽은 설명된 설정에서 예상대로 작동합니다.
- BZ#887006
- Intel 5520 및 5500 칩셋은 다시 매핑되는 작업을 제대로 처리하지 않습니다. 이러한 칩셋이 있는 시스템에서 인터럽트 재지정 기능을 활성화하면 다양한 문제와 서비스 중단이 발생할 수 있으며 (예: NIC가 프레임 수신을 중지할 수 있음) 및 "kernel: do_IRQ: 7.71 No irq handler for vector (irq -1)" 오류 메시지가 시스템 로그에 나타납니다. 이 문제에 대한 해결 방법으로 이러한 시스템에서 BIOS에서 인터럽트 재mapping 기능을 비활성화하는 것이 권장되었으며 많은 공급 업체에서 기본적으로 인터럽트 재지정을 비활성화하도록 BIOS를 업데이트했습니다. 그러나 이 기능은 적절한 BIOS 수준이 없는 사용자가 이 문제를 계속 보고하고 있습니다. 따라서 이 업데이트는 커널을 수정하여 이러한 시스템에서 인터럽트 리mapping 기능이 활성화되어 있는지 확인하고 사용자에게 기능을 끄고 BIOS를 업데이트하는 경고 메시지를 사용자에게 제공합니다.
- BZ#887045
- 많은 수의 CPU를 사용하는 Red Hat Enterprise Linux 6 시스템을 부팅할 때 시스템이 부팅되지 않거나 초기화 후 응답하지 않는 것처럼 보일 수 있습니다. 이는 CPU 빈도 드라이버에서 일반 스핀 잠금(cpufreq_driver_lock)을 사용하여 빈도 전환을 직렬화하고, 특정 상황에서 시스템 초기화 및 작업 중에 과도한 경합이 될 수 있기 때문에 발생했습니다. cpufreq_driver_lock을 읽기-쓰기 잠금으로 변환하는 패치가 적용되어 경합 문제를 해결합니다. 모든 Red Hat Enterprise Linux 6 시스템은 이제 정상적으로 부팅 및 작동합니다.
- BZ#903220
- 이전 커널 패치는 업스트림 커널에서 발견된 것보다 IFLA_EXT_MASK Netlink 속성에 다른 값을 할당하여 버그가 발생했습니다. 이로 인해 다양한 문제가 발생할 수 있었습니다. 예를 들어 업스트림 헤더에 대해 컴파일된 바이너리가 Red Hat Enterprise Linux 6.4 이상 커널에서 예기치 않게 작동하거나 작동할 수 있었습니다. 이번 업데이트에서는 IFLA_* 열거를 업스트림과 동기화하여 열거에서 IFLA_EXT_MASK가 올바르게 정렬됩니다. 이렇게 하면 Red Hat Enterprise Linux 6.4 커널 헤더에 대해 컴파일된 바이너리가 예상대로 작동합니다. 이전 버전과의 호환성이 보장됩니다.
- BZ#887868
- SCTP 코드의 버그로 인해 해시된 SCTP 연결을 해제하여 커널 패닉이 발생할 때 NULL 포인터 역참조가 발생할 수 있었습니다. 패치는 SCTP 연결을 해제하기 전에 이 문제를 해결하며 문제가 더 이상 발생하지 않습니다.
- BZ#888417
- 이전에는 DIF(Data Integrity Field) 유형 2 보호가 있는 SCSI sd 드라이버를 사용하는 시스템에서 커널 패닉이 발생할 수 있었습니다. 이는 scsi_register_driver() 함수가 DIF 기능에 sd_cdp_pool 변수를 사용하는 데 필요할 수 있는 prep_fn() 함수를 등록했기 때문입니다. 그러나 이 시점에서 변수는 초기화되지 않았습니다. 기본 코드가 업데이트되어 드라이버가 마지막으로 등록되므로 이 시나리오에서는 커널 패닉이 발생하지 않습니다.
- BZ#901747
- bnx2x 드라이버는 이전에 링크 연결 손실과 함께 종종 MDC/MDIO 시간 초과 오류를 보고했을 수 있었습니다. 이는 MDIO 시계가 CL45 명령 대신 각 부팅 코드 시퀀스의 시작 부분에 설정되어 있기 때문에 이전 부팅 코드를 사용하는 환경에서 발생할 수 있습니다. 이 문제를 방지하기 위해 bnx2x 드라이버는 이제 CL45 명령당 MDIO 시계를 설정합니다. 또한 MDIO 클록은 이제 포트 번호당 EMAC 레지스터 대신 구현되어 포트가 다른 EMAC 액세스에 대해 다른 EMAC 주소를 사용하지 못하도록 합니다. 또한 부팅 코드 또는 관리 펌웨어(MFW) 업그레이드가 필요합니다. 부팅 코드(firmware)가 드라이버의 지연이 지연되는 경우 링크 소유권을 초과하지 않도록 해야 합니다. BCM57711 카드에는 부팅 코드 버전 6.2.24 이상이 필요하며 BCM57712/578xx 카드에는 MFW 버전 7.4.22 이상이 필요합니다.
- BZ#990806
- 감사 하위 시스템이 로드되지 않은 경우 오류 복구 코드로 페일오버하지 않고 audit_log_start() 함수에서 무한히 반복할 수 있습니다. 이로 인해 커널에 소프트 잠금이 발생합니다. 이번 업데이트를 통해 audit_log_start() 함수의 시간 초과 조건이 필요한 경우 제대로 실패하도록 수정되었습니다.
- BZ#901701
- 이전 커널 업데이트로 인해 qp_remove() 함수에서 큐 쌍(qp) 해시 목록 삭제가 중단되었습니다. 이로 인해 InfiniBand 스택 또는 QLogic InfiniBand 드라이버에서 일반적인 보호 결함이 발생할 수 있습니다. 일반적인 보호 결함이 더 이상 발생하지 않도록 이전 동작을 복원하기 위해 패치가 적용되었습니다.
- BZ#896233
- 드문 경우지만 TCP 재전송이 부분적으로 승인되고 축소된 경우 전송 헤드룸으로 인한 오버플로로 인해 사용되는 Socked 버퍼(SKB)가 손상될 수 있습니다. 이로 인해 커널 패닉이 발생했습니다. IPoIB(IPoIB) 연결을 사용할 때 문제가 거의 관찰되지 않았습니다. 이번 업데이트에서는 전송 헤드룸이 사용된 SKB의 최대 크기를 초과하는지 여부를 확인하는 패치를 적용하고, 이 경우 헤드룸이 다시 할당됩니다. 또한 악성 피어가 MSS 프레임을 인식하고 출력 인터페이스에 시퀀스 생성기(SG)가 활성화되지 않은 경우 TCP 스택이 잘못 정렬 SKB를 다시 보낼 수 있음을 확인했습니다. 이번 업데이트에서는 새 헤드로 SKB를 복사할 수 있는 새로운 기능이 도입되어 이 상황에서 SKB가 정렬되어 있습니다.
- BZ#896020
- IPv6를 통해 투명 프록시(TProxy)를 사용할 때 커널은 이전에 직접 연결할 수 없는 로컬 인터페이스 및 피어에 대한 인접 항목을 생성했습니다. 이번 업데이트에서는 이 문제가 해결되어 커널이 더 이상 잘못된 인접 항목을 생성하지 않습니다.
- BZ#894683
- 포트 자동 선택 코드의 이전 변경으로 인해 사용 빈도가 충돌하지 않고 포트를 공유할 수 있습니다. 결과적으로 SO_REUSEADDR 소켓 옵션을 사용하여 소켓을 바인딩할 때 bind(2) 함수가 이미 사용된 임시 포트를 할당할 수 있었습니다. 후속 연결 시도는 EADDRNOTAVAIL 오류 코드가 있는 경우 실패했습니다. 이번 업데이트에서는 포트 자동 선택 코드를 수정하는 패치를 적용하여 이제 SO_REUSEADDR 옵션이 활성화된 경우에도 bind(2)가 비 충돌 포트를 선택하도록 합니다.
- BZ#893584
- 읽기 워크로드가 많은 NFS 클라이언트에서 시간 초과가 발생할 수 있습니다(예: rsync 및 ldconfig 사용). 이 문제에 대한 클라이언트 측 및 서버 측 원인이 모두 발견되었습니다. 클라이언트 측에서 클라이언트가 손실된 TCP 연결을 다시 연결하는 것을 방지할 수 있는 문제가 수정되었습니다. 서버 측에서 서버의 TCP 메모리 부족으로 인해 전송 버퍼 크기가 단일 RPC(원격 프로시저 호출)보다 작아서 서버가 클라이언트에 응답할 수 없게 되었습니다. 코드 수정 사항은 계속 고려 중입니다. 이 문제를 해결하려면 다음을 사용하여 최소 TCP 버퍼 크기를 늘립니다.
echo "1048576 1048576 4194304" >/proc/sys/net/ipv4/tcp_wmem
- BZ#895336
- Broadcom 5719 NIC는 CRC(cyclic redundancy check) 오류로 인해 이전에 수신한 점보 프레임 패킷을 삭제할 수 있었습니다. 이번 업데이트에서는 CRC 오류가 더 이상 발생하지 않도록 tg3 드라이버를 수정하고 Broadcom 5719 프로세스 점보 프레임 패킷을 예상대로 수정합니다.
- BZ#896224
- XFS 파일 시스템에서 크기가 작은 파일의 높은 스레드 워크로드를 실행하는 경우 시스템이 응답하지 않거나 커널 패닉이 발생할 수 있습니다. 이 문제는 xfsaild 데몬에 AIL의 버퍼가 이미 잠겨 있고 로그의 잠금을 강제 해제하기 위해 시도했을 때 xfsaild 잠금에 대한 재귀를 유발하는 미묘한 코드 경로가 있었기 때문에 발생했습니다. 이 패치는 위험한 코드 경로를 제거하고 xfsaild와 관련하여 안전한 잠금 컨텍스트에서 로그 강제 호출을 대기열에 넣습니다. 이 패치는 잠금 실패 후 버퍼 상태를 다시 확인하여 원래 문제를 노출된 버퍼 잠금과 버퍼 고정 상태 간의 경합 상태를 수정합니다. 이 시나리오에서는 시스템이 더 이상 중단되지 않고 커널이 더 이상 패닉되지 않습니다.
- BZ#902965
- NFSv4.1 클라이언트는 NFSv4.1에서 서버 재부팅에서 복구하는 동안 또는 위임을 비활성화하여 pNFS 마운트를 복구하는 동안 응답을 중지할 수 있습니다. 이는 NFS 코드의 잠금과 NFS 및 RPC 스케줄러 코드의 여러 관련 버그로 인해 교착 상태를 트리거할 수 있기 때문에 발생할 수 있습니다. 이번 업데이트에서는 일련의 패치를 적용하여 가능한 교착 상태가 발생하지 않도록 합니다. 이제 NFSv4.1 클라이언트는 설명된 상황에서 예상대로 워크로드를 복구하고 계속 진행합니다.
- BZ#1010840
- Red Hat Enterprise Linux 6의 기본 sfc 드라이버를 사용하면 LRO가 장치에서 지원되었는지 여부와 관계없이 네트워크 장치에서 LRO( Large Receive Offset) 플래그를 삽입할 수 있었습니다. 따라서 LRO가 지원되지 않은 장치에서 LRO 플래그를 사용하도록 설정하면 작업이 영향을 미치지 않아 사용자를 혼동할 수 있었습니다. sfc 드라이버에 대한 패치가 적용되어 sfc 드라이버가 장치에서 LRO를 지원하는지 여부를 올바르게 검증합니다. 장치가 LRO를 지원하지 않는 경우 sfc는 사용자가 더 이상 해당 장치에 대해 전환할 수 없도록 LRO 플래그를 비활성화합니다.
- BZ#886867
- 장치 검색 중에 LUN 0이 시스템에 매핑되지 않은 경우 시스템은 LUN ID가 0인 임시 SCSI 장치를 생성합니다. 이전에는 임시 LUN 0 장치에 대한 조회 데이터가 할당되지 않아 커널 패닉이 발생했습니다. 이번 업데이트에서는 기본 SCSI 코드에 NULL 포인터 테스트가 추가되어 이 시나리오에서는 커널이 더 이상 패닉 상태가 되지 않습니다.
- BZ#886420
- NIC(네트워크 인터페이스)가 무차별(PROMISC) 모드에서 실행되는 경우 NIC는 VLAN 태그가 NIC에 연결되어 있지 않은 경우에도 VLAN 태그 프레임을 수신하고 처리할 수 있습니다. 그러나 bnx2, igb, tg3 및 e1000e와 같은 일부 네트워크 드라이버는 프레임에 VLAN 그룹이 할당된 경우 PROMISC 모드에서 VLAN 태그된 프레임이 있는 패킷 처리를 올바르게 처리하지 않았습니다. 드라이버는 잘못된 루틴을 사용하여 패킷을 처리했으며 다양한 문제가 발생할 수 있습니다. 예를 들어 VLAN에 연결된 DHCPv6 서버는 VLAN 풀의 IPv6 주소를 VLAN 인터페이스가 없는 NIC에 할당할 수 있습니다. VLAN 그룹 없이 VLAN 태그된 프레임을 올바르게 처리하려면 NIC가 PROMISC 모드에 있을 때 패킷 VLAN 그룹 필드의 NULL 값 테스트를 수행하지 못하도록 VLAN 코드에서 프레임을 처리해야 합니다. 이번 업데이트에서는 NIC에 VLAN이 구성되지 않은 경우 bnx2x 드라이버가 프레임에서 VLAN 헤더를 제거하지 않은 버그와 VLAN이 카드에 등록되지 않은 경우에도 NIC에서 VLAN 패킷을 수신 및 전송할 수 있도록 몇 가지 레지스터 변경 사항을 구현하는 또 다른 패치가 포함되어 있습니다.
- BZ#988460
- 슬레이브 장치가 시작되면 current_arp_slave 매개변수가 설정되지 않았지만 슬레이브의 활성 플래그가 비활성으로 표시되지 않았습니다. 결과적으로 active-backup 모드에서 활성 플래그가 있는 두 개 이상의 슬레이브 장치가 시스템에 존재할 수 있었습니다. current_arp_slave 매개변수를 설정하기 전에 슬레이브 장치에 대해 활성 플래그를 비활성화하여 이 문제를 해결하기 위해 패치가 적용되었습니다.
- BZ#883575
- 설명자 처리의 버그로 인해 ioat 드라이버는 Intel Xeon Processor E5 제품군을 사용하여 시스템에서 보류 중인 설명자를 올바르게 처리하지 않았습니다. 그 결과 CPU가 이러한 시스템에서 과도하게 사용되었습니다. 패치가 ioat 드라이버에 적용되어 드라이버가 이제 보류 중인 설명자를 올바르게 결정하고 설명된 프로세서 제품군의 CPU 사용량이 다시 정상입니다.
- BZ#905561
- 브리지 멀티 캐스트 코드의 이전 변경으로 인해 시작 시 더 빠르게 통합할 수 있도록 일반 멀티 캐스트 쿼리를 보낼 수 있습니다. 멀티 캐스트 라우터의 간섭을 방지하기 위해 패킷에 제로 소스 IP 주소가 포함되어 있습니다. 그러나 이러한 패킷은 특정 멀티 캐스트 인식 스위치를 방해하여 시스템이 소스 IP 주소가 0인 IGMP 멤버십 쿼리로 플러드되었습니다. 일련의 패치는 기본적으로 멀티 캐스트 쿼리를 비활성화하고 필요한 경우 일반 멀티 캐스트 쿼리 전송을 전환할 수 있는 멀티 캐스트 큐리어를 구현하여 이 문제를 해결합니다.
- BZ#882413
- 버그로 인해 잘못된 블록 탐지가 완전한 오류가 발생한 장치에서 어떤 블록이 좋지 않은지 분리하려고 했습니다. - 잘못된 블록 추적이 켜지지 않은 경우에도 마찬가지입니다. 이로 인해 RAID 장치 전체 세트가 실패했을 때 I/O 오류를 반환하는 데 매우 큰 지연이 발생했습니다. 대규모 지연으로 인해 재해 복구 시나리오에서 문제가 발생했습니다. 이제 잘못된 블록 추적 코드가 올바르게 비활성화되고 오류가 RAID 배열에서 중복을 초과하기에 충분한 장치가 실패할 때 적시에 반환됩니다.
- BZ#876600
- 이전 버전에서는 MVFS(MultiVersion File System)에서 "ls", "find" 또는 "move"와 같은 명령을 실행하면 커널 패닉이 발생할 수 있었습니다. 이는 kmem_ptr_validate() 함수라는 dentry 검증에 사용되는 d_validate() 함수가 부모 dentry에 대한 포인터의 유효성을 검사하기 때문에 발생했습니다. 포인터는 언제든지 해제되어 kmem_ptr_validate() 함수가 포인터를 역참조하도록 보장할 수 없어 NULL 포인터의 역참조가 발생할 수 있습니다. 이번 업데이트에서는 d_validate()가 수정되어 이 문제를 해결하는 상위 dentry의 하위 dentries 목록을 통과하여 상위-하위 관계를 확인합니다. 설명된 시나리오에서 커널에 더 이상 패닉이 발생하지 않습니다.
- BZ#1008705
- sfc 드라이버는 MTD 하위 시스템을 사용하여 온보드 플래시 파티션을 노출하고 보드당 최대 9개의 플래시 파티션을 노출해야 합니다. 그러나 Red Hat Enterprise Linux 6의 MTD 하위 시스템에는 고정 제한이 32개의 플래시 파티션이 있습니다. 결과적으로 Solarflare 툴은 3개 이상의 보드가 설치되어 있으면 모든 보드에서 작동할 수 없으므로 일부 보드의 펌웨어가 업데이트되거나 버전 번호를 쿼리하지 않습니다. 이번 업데이트를 통해 새로운 EFX_MCDI_REQUEST 하위 명령이 driver-private SIOCEFX ioctl에 추가되어 MTD 계층을 우회하고 컨트롤러의 펌웨어로 직접 요청을 보낼 수 있습니다. 이제 solarflare 도구를 사용할 수 있으며 설치된 모든 장치의 펌웨어를 이 시나리오에서 예상대로 업데이트할 수 있습니다.
- BZ#871795
- 이전에는 VLAN 코드에서 igb 드라이버를 사용하여 네트워크 장치의 인터럽트 비트를 잘못 삭제했습니다. 그 결과 PTP(Precision Time Protocol) 지원이 포함된 igb 네트워크 장치에서 타임스탬프가 실패했습니다. 이번 업데이트에서는 인터럽트가 비활성화된 경우 인터럽트 비트를 보존하도록 igb 드라이버를 수정합니다.
- BZ#869736
- AMD 프로세서와 함께 4GB 이상의 RAM을 사용하는 경우 예약된 리전 및 메모리 홀(E820 리전)도 4GB 범위 위에 배치할 수 있습니다. 예를 들어, 1TB 이상의 RAM이 있는 구성에서 AMD 프로세서는 HT(Hyper Transport) 기능에 대해 1012GB - 1024GB 범위를 예약합니다. 그러나 Linux 커널은 4GB 범위 위에 있는 E820 리전을 올바르게 처리하지 않습니다. 따라서 AMD 프로세서와 1TB RAM이 있는 머신에 Red Hat Enterprise Linux를 설치할 때 커널 패닉이 발생하여 설치에 실패했습니다. 이번 업데이트에서는 직접 매핑에서 4GB 범위 위에 있는 E820 리전을 제외하도록 커널을 수정합니다. 커널은 더 이상 부팅 시 전체 메모리를 매핑하지 않고 매핑해야 하는 메모리 범위만 찾습니다. 이제 위에서 설명한 구성에 시스템을 설치할 수 있습니다.
- BZ#867689
- ACPI에 대한 커널 인터페이스에서 오류 메시지를 잘못 구현했습니다. 시스템에 유효한 ACPI Error Record Serialization Table(ERST)과 pstore.backend 커널 매개변수가 pstore 인터페이스에서 ERST 사용을 비활성화하는 데 사용된 경우 다음과 같은 오류 메시지가 표시되었습니다.
ERST: Could not register with persistent store
그러나 등록 전 오류를 나타내는 데도 동일한 메시지가 사용되었습니다. 일련의 패치는 관련 ACPI 코드를 수정하여 ACPI가 다른 경우를 적절하게 구별하고 그에 따라 고유하고 유익한 메시지를 출력하도록 합니다. - BZ#965132
- 본딩 장치를 설정할 때 TLB와 ALB 모드를 구분하는 데 특정 플래그가 사용되었습니다. 그러나 ALB 모드에서 이 플래그를 사용하면 본딩이 활성화되기 전에 NIC를 축소할 수 있었습니다. 이로 인해 NIC가 필요에 따라 고유한 MAC 주소를 사용하지 않고 슬레이브로 전송된 "반복" 패킷 손실로 인해 발생했습니다. 이 패치는 슬레이브의 MAC 주소 설정을 담당하는 기능을 수정하므로 플래그가 더 이상 TLB에서 ALB 모드를 구분할 필요가 없으며 플래그가 제거되었습니다. 설명된 문제는 이 상황에서 더 이상 발생하지 않습니다.
- BZ#920752
- do_filp_open() 함수의 버그로 인해 읽기 전용 파일 시스템에서 쓰기 액세스가 요청되면 조기에 종료되었습니다. 이로 인해 읽기 전용 파일 시스템에서 장치 노드를 열 수 없었습니다. 이번 업데이트를 통해 읽기 전용 파일 시스템에서 쓰기 요청이 이루어진 경우 do_filp_open()이 더 이상 종료되지 않도록 수정되었습니다.
- BZ#981741
- 부정 조회 후 음수 dentry이 삭제되지 않았거나 dentry decrement의 참조 카운터가 없을 때 FUSE 코드에서 dentry 누출이 발생했습니다. 이로 인해 dentry가 포함된 FUSE 하위 트리를 마운트 해제할 때 BUG() 매크로가 트리거되어 커널 패닉이 발생했습니다. 이 문제와 관련된 일련의 패치가 FUSE 코드에 적용되고 음수 dentries는 이제 BUG() 매크로를 트리거하는 것을 방지할 수 있습니다.
- BZ#924804
- 이번 업데이트에서는 이전에 포함 된 두 개의 qla2xxx 패치를 되돌립니다. 이러한 패치로 인해 파이버 채널 대상 포트 검색 절차가 변경되어 일부 모서리에서 일부 포트가 발견되지 않았습니다. 이 두 패치를 되돌리면 검색 문제가 해결되었습니다.
- BZ#957821
- 메모리 매핑 코드의 버그로 인해 fadvise64() 시스템 호출이 캐시 메모리에서 지정된 파일의 모든 관련 페이지를 플러시하지 않는 경우가 있었습니다. 패치는 요청된 모든 페이지가 플러시되었는지 여부를 확인하고 테스트 실패 시 LRU 페이지vecs를 비우고 재시도하는 테스트 조건을 추가하여 이 문제를 해결합니다.
- BZ#957231
- xen-netback 및 xen-netfront 드라이버는 헤더를 포함하여 64KB보다 큰 패킷을 처리할 수 없습니다. 이전에 xen-netfront 드라이버는 GSO의 최대 크기(Generic Segmentation Offload)를 결정할 때 헤더를 고려하지 않았습니다. 그 결과 DomU 게스트 작업으로 인해 64KB보다 큰 패킷을 보낼 때 DomU에서 네트워크 DoS 문제가 발생할 수 있었습니다. 이번 업데이트에서는 GSO 최대 크기의 계산을 수정하고 문제가 더 이상 발생하지 않는 패치가 추가되었습니다.
- BZ#848085
- tty 계층에서 가능한 경합으로 인해 BUG_ON() 매크로를 트리거한 후 커널 패닉 상태가 발생할 수 있습니다. 이 문제를 해결하려면 BUG_ON() 매크로가 WARN_ON() 매크로로 교체되어 커널 패닉을 피하고 경쟁 문제를 추가로 조사할 수 있습니다.
- BZ#980876
- 네트워크 브리지 코드의 버그로 인해 스파 잠금을 보유하는 동안 내부 함수가 원자적으로 안전하지 않은 코드를 호출할 수 있었습니다. 그 결과 "BUG: scheduling while atomic" 오류가 트리거되고 커널에 의해 호출 추적이 기록되었습니다. 이번 업데이트에서는 함수를 올바르게 주문하는 패치를 적용하여 함수가 원자적으로 안전하지 않은 코드를 호출하는 동안 더 이상 스핀 잠금을 보유하지 않습니다. 이 경우 호출 추적이 있는 앞서 언급한 오류가 더 이상 발생하지 않습니다.
- BZ#916806
- NFSv4 클라이언트는 NFSv4 서버를 재부팅한 후 상태 복구 중에 상태 복구 스레드를 사용하여 교착 상태 상황을 이전에 입력할 수 있었습니다. 이는 클라이언트가 재부팅하기 전에 요청한 OPEN 작업의 NFSv4 시퀀스 ID를 해제하지 않았기 때문에 발생했습니다. 이 문제는 클라이언트가 서버 복구 대기를 시작하기 전에 시퀀스 ID를 해제하여 해결됩니다.
- BZ#859562
- 장치 매퍼 RAID 커널 모듈의 버그로 인해 "sync" 지시문이 적용되지 않았습니다. 그 결과 사용자는 원하는 경우 RAID 어레이를 완전히 재동기화하도록 강제할 수 없었습니다. 이 문제는 수정되었으며 사용자가 'lvchange --resync my_vg/my_raid_lv'를 사용하여 LVM RAID 어레이에서 완전히 재동기화되도록 할 수 있습니다.
기능 개선
- BZ#823012
- 이번 업데이트에서는 Linux perf 툴을 사용하여 하드웨어 성능 카운터에 액세스하여 시스템 z의 Linux에서 소프트웨어에 대한 단순화된 성능 분석을 제공합니다.
- BZ#829506
- 이전에는 fnic 드라이버에서 Cisco UCS Cryostato 어댑터에서 지원하는 것보다 큰 SGL 설명자 수와 함께 I/O 요청을 허용했습니다. 결과적으로 어댑터는 256개 이상의 SGL 설명자와 함께 I/O 요청을 반환했으며 잘못된 SGL을 나타내는 오류가 발생했습니다. fnic 드라이버에서 지원되는 최대 SGL 수를 256으로 제한하기 위해 패치가 적용되어 더 이상 문제가 발생하지 않습니다.
- BZ#840454
- 예를 들어 게스트에서 호스트로 데이터 추적 데이터를 전송하려면 하위 헤드 통신 채널이 필요했습니다. splice() 호출에 대한 지원이 Linux 커널의 virtio_console 모듈에 추가되었습니다. 이를 통해 게스트 내에서 생성되는 데이터의 추가 사본 없이 게스트 커널 데이터를 호스트에 전송할 수 있습니다. 게스트 Linux 커널과 호스트 사용자 공간 간의 하위 헤드 통신은 virtio-serial을 통해 수행됩니다.
- BZ#888903
- 새로운 MTIOCTOP 작업인 MTWEOFI가 SCSI window 드라이버에 추가되어 "immediate" 비트를 사용하여 "파일마크"를 작성할 수 있습니다. 이렇게 하면 SCSI 스트라이프 드라이브가 버퍼 내용을 보존하여 다음 파일 작업을 즉시 시작할 수 있습니다. 이렇게 하면 DVD에 여러 개의 작은 파일을 작성해야 하는 애플리케이션에 대한 쓰기 성능이 크게 향상될 수 있으며, 이 경우 이 애플리케이션의 쓰기 성능도 저하될 수 있습니다.
- BZ#913650
- 이전에는 사용자가 RAID LV를 마운트 해제, 비활성화 및 다시 활성화하여 배열에 일시적인 실패한 장치를 복원해야 했습니다. 이제 'lvchange --refresh'를 실행하여 마운트 해제하지 않고 이러한 장치를 복원할 수 있습니다.
- BZ#923212
- OVS(Open vSwitch)는 가상화된 서버 환경에서 가상 스위치로 사용하도록 설계된 오픈 소스 다중 계층 소프트웨어 스위치입니다. Red Hat Enterprise Linux 6.4부터 Open vSwitch 커널 모듈이 Red Hat Enterprise Linux OpenStack Platform의 enabler로 포함되어 있습니다. Open vSwitch는 해당 사용자 공간 패키지가 포함된 Red Hat 제품과 함께만 지원됩니다. 패키지가 없으면 Open vSwitch가 작동하지 않으며 다른 Red Hat Enterprise Linux 변형과 함께 사용할 수 없습니다.
- BZ#928983
- RHEL6.5 bfa 드라이버는 dev_loss_tmo 값의 동작을 변경하여 bfa 드라이버 특정 path_tov 값보다 큰 값으로만 설정할 수 있습니다. dev_loss_tmo를 설정할 수 있는 최소 기본값은 31초입니다. 기본 bfa path_tov 값을 낮추지 않고 31초 미만의 dev_loss_tmo 값을 설정하려고 하면 성공하지 못합니다.
- BZ#929257
- 오류 복구 지원이 플래시 장치 드라이버에 추가되어 플래시 장치의 I/O에 부정적인 영향을 미치지 않고 하드웨어 서비스를 업그레이드할 수 있습니다.
- BZ#929259
- 암호화 어댑터 복원력 기능이 추가되었습니다. 이 기능은 포괄적인 장애 복구를 통해 암호화 어댑터용 System z 일반적인 RAS를 제공합니다. 예를 들어 이 기능은 Linux 게스트 재배치로 인한 예기치 않은 오류 또는 변경 사항을 처리하고 활동 또는 구성 변경 사항을 일시 중단 및 재개합니다.
- BZ#929262
- "fuzzy live dump" 기능이 추가되었습니다. 이 기능을 사용하면 시스템을 중단하지 않고도 문제 분석을 허용하기 위해 실행 중인 Linux 시스템의 커널 덤프를 생성할 수 있습니다. 덤프가 작성되는 동안 Linux 시스템이 계속 실행되고 커널 데이터 구조가 덤프 프로세스 중에 변경되므로 결과 덤프에는 불일치가 포함됩니다.
- BZ#929264, BZ#929264
- 커널은 이제 DASD 장치에 대한 오프라인 인터페이스를 제공합니다. DASD 장치를 오프라인으로 설정하고 실패한 모든 I/O 요청을 반환하는 대신 이 인터페이스를 사용하면 장치를 오프라인으로 설정하기 전에 DASD 장치를 오프라인으로 설정하고 모든 미해결 데이터를 장치에 쓸 수 있습니다.
- BZ#929274
- 커널은 이제 시스템 전체의 고유 식별자로 하드웨어 탐지를 활성화하는 물리적 채널 ID(PCHID) 매핑을 제공합니다.
- BZ#929275
- 이제 커널이 VEPA 모드를 지원합니다. VEPA 모드는 외부 스위치를 통해 동일한 프레임의 가상 머신 간에 트래픽을 라우팅합니다. 그런 다음 스위치는 보안, 필터링 및 관리를 위한 단일 제어 지점이 됩니다.
- BZ#755486, BZ#755486
- Message Transfer Part Level 3 User Adaptation Layer (M3UA)는 ISDN 및 CryostatN과 같은 Telephony 장비 대신 SCTP(Stream Control Transmission Protocol)를 사용하여 IP를 통해 MTP 레벨 3 사용자 신호를 전송하기 위해 IETF 표준에 의해 정의된 프로토콜입니다. 이번 업데이트를 통해 SCTP에 대해 M3AU 측정 카운터가 포함되었습니다.
- BZ#818344
- 향후 Intel 프로세서를 사용하는 시스템을 Red Hat Hardware Certification 프로그램을 통해 인증할 수 있도록 향후 Intel 2D 및 3D 그래픽에 대한 지원이 추가되었습니다.
- BZ#826061
- 특정 스토리지 구성(예: 많은 LUN이 있는 구성)에서 SCSI 오류 처리 코드는 응답하지 않는 스토리지 장치에 대해 UNIT READY와 같은 명령을 실행하는 데 많은 시간을 할애할 수 있습니다. 새로운 sysfs 매개변수 eh_timeout이 SCSI 장치 오브젝트에 추가되어 SCSI 오류 처리 코드에서 사용하는 gRPC UNIT READY 및 REQUEST SENSE 명령에 대한 시간 초과 값을 구성할 수 있습니다. 이렇게 하면 응답하지 않는 장치를 확인하는 데 걸리는 시간이 줄어듭니다. eh_timeout의 기본값은 이 기능을 추가하기 전에 사용된 시간 초과 값인 10초입니다.
- BZ#839470, BZ#839470
- 이번 업데이트를 통해 Red Hat Enterprise Linux 6에서 12Gbps LSI SAS 장치가 지원됩니다.
- BZ#859446
- Red Hat Enterprise Linux 6.5에는 실제로 서로 관련되어 있고 함께 액세스할 가능성이 있는 파일에 더 나은 지역성을 제공하는 Orlov 블록 al Cryostat가 도입되었습니다. 또한 리소스 그룹이 고도로 결합되면 성능을 극대화하는 데 다른 그룹이 사용됩니다.
- BZ#869622
- mdadm 툴에서는 이제 RAID0, RAID1, RAID10 및 RAID5에 대한 TRIM 명령을 지원합니다.
- BZ#880142
- OpenStack에 대한 네트워크 네임스페이스 지원이 추가되었습니다. 네트워크 네임스페이스(netns)는 경량 컨테이너 기반 가상화 기술입니다. 가상 네트워크 스택을 프로세스 그룹과 연결할 수 있습니다. 각 네임스페이스에는 자체 루프백 장치 및 프로세스 공간이 있습니다. 가상 또는 실제 장치는 각 네트워크 네임스페이스에 추가할 수 있으며 사용자는 이러한 장치에 IP 주소를 할당하고 이를 네트워크 노드로 사용할 수 있습니다.
- BZ#908606
- 동적 하드웨어 파티셔닝 및 시스템 보드 슬롯 인식 지원이 추가되었습니다. 동적 하드웨어 파티셔닝 및 시스템 보드 슬롯 인식 기능은 재구성을 위해 고급 시스템 미들웨어 또는 애플리케이션을 경고하고 사용자가 시스템을 확장하여 재부팅 없이 추가 워크로드를 지원할 수 있습니다.
- BZ#914771, BZ#920155, BZ#914797, BZ#914829, BZ#914832, BZ#914835
- Linux용 IEEE 표준 1588에 따른 PTP(Precision Time Protocol) 구현이 Red Hat Enterprise Linux 6.4에서 기술 프리뷰로 도입되었습니다. 이제 Red Hat Enterprise Linux 6.5에서 커널 및 사용자 공간 모두에서 PTP 인프라가 완전히 지원됩니다. 네트워크 드라이버 타임 스탬프 지원에는 이제 bnx2x, tg3, e1000e, igb, ixgbe 및 sfc 드라이버도 포함됩니다.
- BZ#862340
- Solarflare 드라이버(sfc)가 PTP 지원을 기술 프리뷰로 추가하도록 업데이트되었습니다.
- BZ#918316
- Red Hat Enterprise Linux 6.5에서 사용자는 암호화 해시 함수를 MD5에서 SHA1로 변경할 수 있습니다.
- BZ#922129
- pm8001/pm80xx 드라이버는 SAS/SATA 컨트롤러를 기반으로 하는 PMC-Sierra Adaptec Series 6H 및 7H SAS/SATA HBA 카드와 PMC Cryostat 8081, 8088, 8089 칩에 대한 지원을 추가합니다.
- BZ#922299
- VMware 플랫폼 드라이버 업데이트 VMware 네트워크 반가상화 드라이버가 최신 업스트림 버전으로 업데이트되었습니다.
- BZ#922941
- 향후 AMD 프로세서에 대해 ECC(오류 수정 코드) 메모리가 활성화되어 있습니다. 이 기능을 사용하면 ECC 메모리 관련 카운터 및 상태 비트에 액세스하여 성능 및 오류를 확인할 수 있습니다.
- BZ#922965
- 향후 Intel SOC(System-on-Chip) 프로세서를 위해 운영 체제에서 장치 지원이 활성화됩니다. 여기에는 듀얼 Atom 프로세서, 메모리 컨트롤러, SATA, Universal Asynchronous Receiver/Transmitter, USB 및 Intel Legacy Block (ILB - lpc, timers, SMBUS)이 포함됩니다.
- BZ#947944
- KSM(커널 공유 메모리)은 페이지를 병합할 때 NUMA(Non-Uniform Memory Access)를 고려하여 시스템의 애플리케이션 성능을 개선하도록 개선되었습니다. 또한 Red Hat OpenShift에서 사용할 수 있는 애플리케이션의 밀도를 높이기 위해 추가 페이지 유형이 포함되어 있습니다.
- BZ#949805
- FUSE(사용자 공간의 파일 시스템)는 커널을 수정할 필요 없이 사용자 공간에 파일 시스템을 순전히 개발할 수 있는 프레임워크입니다. Red Hat Enterprise Linux 6.5는 FUSE(예: GlusterFS)를 사용하는 사용자 공간 파일 시스템에 대한 성능 향상을 제공합니다.
- BZ#864597
- 기본 TCP 스택 버퍼는 이더넷 링크를 완전히 사용하는 대역폭 애플리케이션이 너무 큽니다. 이로 인해 연결 대역폭을 완전히 사용할 수 없으며 여러 클라이언트 장치에서 링크를 공유한 경우 분산될 수 있습니다. 이 문제를 해결하기 위해 TCP 코드에 새로운 기능인 TSQ(TCP Small Queues)가 도입되었습니다. TSQ 기능은 xmit 대기열, RTT(TCP round-trip time) 및 CWND(지속 창) 크기에서 여러 TCP 패킷을 줄입니다. 또한 가능한 bufferbloat 문제의 영향을 완화합니다. 이러한 변경에는 Tx 병합의 기본값을 너무 높게 설정하여 발생하는 mlx4 장치의 성능 문제를 해결하는 패치도 포함되어 있습니다.
8.83. kexec-tools
버그 수정
- BZ#1015764
- 이전에는 mkdumprd 유틸리티에서 strip_comments() 함수가 올바르게 구현되지 않았습니다. 인수가 strip_comments()에 전달되면 첫 번째 인수를 고려하여 나머지 인수를 건너뛰었습니다. 그 결과 "makedumpfile" 인수를 $config_val 변수에 전달했지만 "makedumpfile"의 매개변수가 누락되었습니다. 이번 업데이트를 통해 strip_comments() 함수가 수정되었습니다. 결과적으로 전달된 인수를 더 이상 건너뛰지 않습니다.
- BZ#886572
- kdump 파일 시스템이 다른 독립적이고 암호화된 장치가 있는 논리 볼륨 또는 볼륨 그룹에 있는 경우 mkdumprd 유틸리티는 암호화된 장치에 액세스하려고 할 때 오류 메시지로 종료되어 kdump가 제대로 작동하지 않습니다. 이 문제를 해결하기 위해 패치가 제공되어 kdump가 설명된 시나리오에서 올바르게 재구성되고 다시 시작되어 이 버그가 수정되었습니다.
- BZ#920705
- 특정 멀티 포트 네트워크 카드는 모든 포트에 대해 동일한 PCI 버스 주소를 반환합니다. kdump 유틸리티에서 네트워크 포트를 매핑할 때 하나의 네트워크 포트를 이러한 카드의 다른 포트와 구분할 수 없습니다. 결과적으로 다른 네트워크 포트가 다른 네트워크에 있는 경우 kdump에서 NFS 또는 SSH를 통해 데이터를 덤프하지 못했습니다. 이번 업데이트를 통해 설명된 시나리오에서 MAP_NET_BY_MAC 변수가 설정되고 kdump는 이제 모든 포트에 대한 데이터를 예상대로 덤프합니다.
- BZ#883543
- 이전에는 98-kexec.rules 파일의 udev 규칙이 각 메모리가 추가된 kdump 도구를 다시 시작하는 프로세스를 생성했습니다. 이 버그를 해결하기 위해 이전에 실행했던 서비스를 다시 시작하려고 할 때 "condrestart" 매개변수가 사용됩니다. 따라서 재시작이 필요하지 않은 경우 kdump가 더 이상 재시작되지 않습니다.
- BZ#921142
- 이전에는 extra_modules 목록의 커널 모듈이 기본 제공 블랙리스트로 재정의되었습니다. 그 결과 kdump에서 mlx4_core 및 mlx4_en 모듈을 로드하고 이러한 모듈을 사용하여 네트워크 카드를 통해 데이터를 덤프할 수 없었습니다. 이번 업데이트를 통해 extra_modules 목록의 모듈은 블랙리스트에 추가되는 경우 제외되지 않으며 kdump에서 예상대로 사용할 수 있습니다.
- BZ#1008543
- 이전에는 makedumpfile에서 dumpfile 헤더에 더 이상 사용되지 않는 "diskdump" 기능에서 상속된 필드가 있었습니다. 이 필드는 크래시 유틸리티에서 물리적 주소 읽기 요청이 합법적인지 여부를 결정하는 구분 기호로 사용되었습니다. 이 필드는 32비트보다 큰 PFN(물리 프레임 번호) 값을 처리할 수 없으며 이러한 값은 잘렸습니다. 이번 업데이트에서는 헤더에 세 개의 새 필드가 추가되었습니다. 결과적으로 makedumpfile의 dumpfile 헤더는 32비트보다 큰 PFN 값을 올바르게 전달합니다.
- BZ#876667
- 이전 버전에서는 일부 커널 모듈의 경우 "modprobe --show-depends" 명령 출력에 모든 행에 대한 "insmod" 접두사가 없었습니다. 결과적으로 mkdumprd 유틸리티는 각 행이 "insmod" 접두사로 시작된 것으로 가정한 현재 코드로 로드하지 못했습니다. 이 코드는 awk 스크립트의 "insmod"로 시작하는 행만 일치하도록 수정되었습니다. 결과적으로 mkdumprd가 더 이상 이 시나리오에서 로드되지 않습니다.
- BZ#1009207
- 이전에는 순환 모드에서 makedumpfile이 cyclic 버퍼 크기의 크기를 잘못 다시 계산했습니다. 그 결과, makedumpfile은 페이지 프레임 번호의 사이클 범위 길이를 업데이트하지 않아 버퍼 오버런 또는 분할 위반이 발생했습니다. 또한 recalculations에서 divideup() 함수로 인해 순환 버퍼 크기가 너무 많이 정렬되어 효율적이었습니다. 이러한 버그를 해결하기 위해 패치가 제공되었으며 이 시나리오에서는 앞서 언급한 문제가 더 이상 발생하지 않습니다.
- BZ#1010103
- x86_64 커널은 relocatable 커널이며 커널 데이터와 텍스트에 정적으로 할당된 물리적 주소와 커널 기호에 해당하는 각 오브젝트에 실제로 할당된 주소 사이에 차이가 있을 수 있습니다. 간격은 phys_base() 함수입니다. makedump 유틸리티는 vmcore의 특정 범위에서 발생되는 일부 "Linux 커널" 문자열 주소를 비교하는 임시 방식으로 phys_base를 계산합니다. 결과적으로 makedumpfile은 phys_base를 계산하지 못하고 vmcore를 변환하지 못했습니다. 이 버그는 수정되었으며dumpfile이 phys_base를 올바르게 계산하고 vmcore를 정상적으로 해석합니다.
- BZ#893764
- 이전 버전에서는 /etc/dasd.conf 파일에서 구문 분석된 빈 Direct Access Storage Device(DASD) 옵션을 설정하여 환경 변수가 표시되었습니다. 그 결과 kdump 서비스를 다시 시작하면 전체 kdump 스크립트가 표시되었습니다. 이번 업데이트 후 장치의 /etc/dasd.conf 파일에 지정된 옵션이 없는 경우 kdump 스크립트는 다음 단계로 진행합니다. 결과적으로 kdump 서비스를 다시 시작하면 더 이상 전체 kdump 스크립트가 표시되지 않습니다.
- BZ#918372
- 이전에는 원시 장치에 작성된 kdump 데이터가 완전히 플러시되지 않았습니다. 그 결과 저장된 vmcore가 때때로 불완전했습니다. 이번 업데이트에서는 blockdev 툴을 사용하여 블록 장치 버퍼를 플러시합니다. 결과적으로 raw 장치에 저장된 vmcore가 항상 완료됩니다.
- BZ#903529
- 이전에는 SCM(Storage Class Memory) 장치가CSI(Small Computer System Interface) 디스크와 동일한 sysfs 속성을 노출하지 않았기 때문에 mkdumprd 유틸리티에서 덤프 파일을 쓰기 위한 "필수 디스크" 목록을 확인하지 못했습니다. 결과적으로 mkdumprd에서 특정 SCM 장치를 올바르게 처리하지 않아 kdump의 대상으로 이러한 장치에 파일 시스템을 지정하려고 할 때 무한 루프가 발생했습니다. 이번 업데이트 후 mkdumprd는 장치의 스토리지 증가 주소를 기반으로 SCM 장치 대기를 처리합니다. 이는 재부팅 시 SCM 장치를 고유하게 식별하는 속성입니다. 결과적으로 mkdumprd는 이제 덤프 파일을 쓰기 위한 "심각 디스크" 목록을 성공적으로 결정하고 무한 루프가 더 이상 발생하지 않습니다.
- BZ#906601
- 이전 버전에서는 다중 경로 지원을 사용하여 구성된 시스템에서 mkdumprd 툴에서 다중 경로 장치를 kdump initrd로 처리하는 코드를 푸시했습니다. 그 결과 kdump 유틸리티에서 다중 경로 장치에서 vmcore를 캡처하지 못했습니다. 이번 업데이트에서는 "dmsetup ls" 명령이 vmcore를 캡처할 다중 경로 장치와 일치하는 장치 이름을 나열할 때까지 kpartx 유틸리티 호출이 지연되는 메커니즘이 도입되었습니다. 결과적으로 mkdumprd는 다중 경로 장치가 생성될 때까지 기다린 다음 vmcore를 성공적으로 캡처합니다.
- BZ#977651
- 이전 버전에서는 Red Hat Enterprise Linux가 hugepages 매개변수를 사용하도록 구성된 경우 kdump 커널에서도 이 매개변수를 사용했습니다. 결과적으로 메모리 제한으로 인해 hugepages를 사용하면 kdump 커널에 대한 OOM(메모리 부족) 오류가 발생할 수 있었습니다. 이번 업데이트를 통해 Red Hat Enterprise Linux에서 사용할 때 kdump 커널에서 hugepages 및 hugepagesz 커널 매개변수를 사용하지 않습니다. 사용자가 kdump 커널에서 hugepages를 명시적으로 사용하려는 경우 /etc/sysconfig/kdump 파일의 KERNEL_COMMANDLINE_APPEND 옵션을 통해 지정할 수 있습니다.
- BZ#963948
- 이전에는 VMware 게스트가 추가 RAM을 추가할 때 kdump.init 스크립트의 여러 인스턴스가 동시에 시작되었습니다. 그 결과 kdump.init 인스턴스 간에 경쟁 상태가 발생했습니다. 글로벌 뮤지스트 잠금을 도입하여 이제 하나의 인스턴스만 이 잠금을 확보하고 실행할 수 있으므로 다른 인스턴스는 큐에서 잠금을 대기합니다.By introducing a global mutex lock, now only one instance can acquire this lock and run, others will be waiting for the lock in queue. 결과적으로 kdump.init 인스턴스가 직렬 순서로 실행되고 이 시나리오에서는 경쟁 조건이 더 이상 발생하지 않습니다.
- BZ#951035
- 이전에는 mkdumprd 유틸리티에서 사용하는 도구가 포함된 e2fsprogs 패키지가 시스템에 설치되지 않은 경우 mkdumprd에 잘못된 오류 메시지가 표시되었습니다. 이번 업데이트를 통해 사용자에게 이러한 툴이 누락된 것을 명시적으로 알리기 위해 오류 메시지가 개선되었습니다.
기능 개선
- BZ#959449
- 이번 업데이트를 통해 kdump 툴은 네트워크를 통해 임의의 브릿지, 본딩 또는 vlan 이름으로 작업할 수 있습니다. 이제 설정된 명명 규칙을 따르지 않고 장치의 이름을 지정할 수 있습니다. 예를 들어 본딩 장치는 "bond"로 시작할 필요가 없습니다. 사용자는 /sys/ 또는 /proc/ 디렉터리에 특정 디렉터리가 있는지 확인하여 네트워크 장치가 본딩, 브리지 또는 vlan인지 확인할 수 있습니다.
- BZ#871522
- 이번 업데이트를 통해 kexec-tools는 64비트 PowerPC에서 크래시 메모리 범위를 빌드하는 동안 메모리 제한을 준수합니다. 커널은 /proc/device-tree 파일을 통해 메모리 제한 정보를 내보냅니다. kexec-tools는 이제 크래시 메모리 범위를 읽고 이에 따라 제한합니다.
- BZ#825476, BZ#902147, BZ#902148
- Red Hat Enterprise Linux 6.5에서 makedumpfile 유틸리티는 Lempel-Ziv-Oberhumer(LZO) 및 snappy 압축 형식을 지원합니다. 특히 임의의 콘텐츠로 데이터를 압축할 때 zlib 형식 대신 이러한 압축 형식을 사용하는 것이 더 빠릅니다.
- BZ#947621
- 이번 업데이트에서는 크래시 덤프 캡처 중에 중독된 페이지를 필터링할 수 있는 변경 사항이 포함되어 있습니다. 사용자는 이제 중독 페이지가 덤프되는지 여부를 결정할 수 있습니다. 또한 필터링은 덤프 속도를 높일 수 있습니다.
- BZ#797231
- 이번 업데이트에서는 kdump 서비스 시작 중에 SELinux 레이블을 다시 지정합니다. kdump 서비스는 잘못된 레이블 또는 누락된 레이블이 있는 덤프 경로에 있는 파일의 레이블을 다시 지정합니다.
- BZ#909402
- 이전 Red Hat Enterprise Linux 릴리스에서는 SSH FIPS 모드에 대한 지원이 불완전했습니다. 이번 업데이트에서는 kdump 커널에 관련 라이브러리 파일과 *.hmac 파일이 추가되었습니다. kdump 유틸리티는 이제 SSH FIPS 모드에서 작동할 수 있습니다.
- BZ#975642
- 이번 업데이트에서는 "---allow-missing" mkdumprd 옵션에 대한 설명서가 mkdumprd(8) 도움말 페이지에 추가되었습니다.
8.84. KSH
버그 수정
- BZ#761551
- 이전에는 ksh 쉘이 편집 모드를 기본값으로 설정하지 않아 대화형 모드 및 쉘 자동 완료 시 다양한 사용성 문제가 발생했습니다. 이번 업데이트에서는 새 사용자의 경우 emacs 편집 모드를 기본값으로 설정합니다. 결과적으로 사용성이 크게 향상되고 쉘 자동 완성이 예상대로 작동합니다.
- BZ#858263
- 이전에는 작업의 ksh 내부 카운터가 너무 작았습니다. 결과적으로 스크립트에서 루프에 여러 하위 쉘을 사용하면 카운터 오버플로가 발생하여 ksh 쉘이 세그먼트 오류로 인해 예기치 않게 종료될 수 있었습니다. 이번 업데이트에서는 카운터 변수에 더 큰 유형을 사용하도록 ksh를 수정합니다. 결과적으로 ksh가 더 이상 설명된 시나리오에서 충돌하지 않습니다.
- BZ#903750
- 이전에는 ksh 쉘에서 고정 크기 변수에 대한 오프셋을 올바르게 계산하지 않았습니다. 결과적으로 고정 너비가 작은 변수에 right-justified 변수를 할당할 때 새 변수에 잘못된 내용이 있을 수 있었습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 적용하고 이제 할당이 예상대로 진행됩니다.
- BZ#913110
- 이전에는 명령 대체의 출력이 항상 올바르게 리디렉션되지 않았습니다. 결과적으로 here-document의 출력이 손실될 수 있었습니다. 이번 업데이트에서는 명령 대체에 대한 리디렉션 코드가 수정되었으며 here-document에는 이제 예상대로 출력이 포함됩니다.
- BZ#921455, BZ#982142
- ksh 함수, 명령 별칭 또는 자동 로드된 함수 내부에 배열을 사용하면 메모리 누수가 발생했습니다. 이 버그를 수정하도록 기본 소스 코드가 수정되었으며 설명된 시나리오에서는 메모리 누수가 더 이상 발생하지 않습니다.
- BZ#922851
- 이전에는 ksh SIGTSTP 신호 처리기에서 다른 SIGTSTP 신호를 트리거할 수 있었습니다. 결과적으로 ksh는 무한 루프를 입력할 수 있었습니다. 이 업데이트된 버전은 SIGTSTP 신호 처리를 수정하고 ksh는 이제 문제없이 신호를 처리합니다.
- BZ#924440
- 이전에는 ksh 쉘에서 필요한 때마다 파일 설명자 목록의 크기를 조정하지 않았습니다. 이로 인해 여러 파일 설명자를 사용할 때 메모리 손상이 발생할 수 있습니다. 그 결과 ksh가 예기치 않게 종료되었습니다. 업데이트된 버전은 필요할 때마다 파일 설명자 목록의 크기를 조정하고, 설명된 시나리오에서 ksh가 더 이상 충돌하지 않습니다.
- BZ#960034
- 이전에는 ksh 쉘에서 명령줄에 의해 지정된 "-m" 인수를 무시했습니다. 그 결과 ksh는 모니터 모드를 활성화하지 않았으며 사용자가 스크립트에서 활성화해야 했습니다. 이번 업데이트를 통해 ksh에서 더 이상 인수를 무시하지 않으므로 사용자가 예상대로 명령줄에서 모니터 모드를 활성화할 수 있습니다.
- BZ#994251
- ksh 쉘에서 파이프라인 내부의 명령 대체에서 I/O 리디렉션을 올바르게 처리하지 않았습니다. 결과적으로 특정 명령의 출력이 손실될 수 있었습니다. 이번 업데이트를 통해 리디렉션이 수정되었으며 명령 출력에서 데이터가 더 이상 누락되지 않습니다.
8.85. leadmon
8.86. libXcursor
버그 수정
- BZ#949586
- libXcursor의 마지막 재빌드에서 Icon Theme가 Red Hat Enterprise Linux 6에서는 사용할 수 없는 Adwaita로 변경되었습니다. 이 버그를 해결하기 위해 Red Hat Enterprise Linux 6의 Icon Theme가 dmz-aa로 변경되었습니다.
8.87. libcgroup
버그 수정
- BZ#972893
- 이전에는 pam_cgoup 플러그형 인증 모듈(PAM)에서 캐싱을 사용하지 않았습니다. 결과적으로 시스템에 수천 명의 사용자가 있고 cgrules.conf 파일에 수천 줄의 구성 설정이 포함된 경우 로그인 시간이 몇 초가 걸릴 수 있었습니다. 이번 업데이트를 통해 libcgroup 코드는 cgrules.conf의 모든 행에 대해 /etc/passwd 파일을 한 번 읽지 않으며 설명된 시나리오에서 로그인 시간은 더 이상 영향을 받지 않습니다.
- BZ#863172
- 이번 업데이트 이전에는 cgroup 파일에 쓰기 권한이 올바르게 설정되지 않았습니다. 결과적으로 cgroup 파일을 소유한 그룹의 구성원은 해당 콘텐츠를 수정할 수 없었습니다. 그룹 권한이 업데이트되어 그룹의 멤버가 이제 cgroup 파일의 내용을 수정할 수 있습니다.
- BZ#921328
- 이전에는 구성 파일을 열 때 cgred 서비스의 동작이 올바르게 설정되지 않았습니다. 결과적으로 구성 파일이 없거나 비어 있으면 cgred가 시작되지 않았습니다. 구성 파일의 존재 여부를 명시적으로 확인한 후 cgred가 예상대로 누락되거나 비어 있는 구성 파일로 시작됩니다.
- BZ#912425
- cg_get_pid_from_flags() 함수의 코드는 /etc/cgrules.conf 파일의 모든 항목에 프로세스 이름이 지정된 것으로 가정합니다. 결과적으로 /etc/cgrules.conf 파일의 항목이 프로세스 이름을 지정하지 않으면 cgred 서비스가 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 코드는 빈 프로세스 이름을 수락하고 cgred는 더 이상 충돌하지 않습니다.
- BZ#946953
- 이번 업데이트 이전에는 /bin/cgclassify 파일의 권한이 잘못 설정되었습니다. 그 결과 권한이 없는 사용자로 실행할 때 cgclassify 명령의 "--sticky" 옵션이 무시되었습니다. /bin/cgclassify의 파일 권한이 업데이트되어 일반 사용자에게 "--sticky" 옵션이 올바르게 작동합니다.
- BZ#753334
- 이전에는 사전 분석기에서 쉼표를 사용하는 것은 지원되지 않았습니다. 결과적으로 cgconfig 서비스는 cgconfig.conf 파일에서 쉼표를 구문 분석하지 못했습니다. 사전 분석기에서 쉼표에 대한 지원이 추가되어 cgconfig.conf에서 쉼표를 성공적으로 구문 분석할 수 있습니다.
- BZ#924399
- cgrulesengd 데몬은 나머지 라이브러리와 다른 기본 로깅 수준을 갖습니다. 그 결과 로그 메시지가 일치하지 않았습니다. 이번 업데이트를 통해 cgrulesengd 데몬 및 라이브러리의 로깅 수준이 통합되었으며 로그 메시지가 예상대로 일관되게 유지됩니다.
- BZ#809550
- 이번 업데이트 이전에는 cgcreate(1) 매뉴얼 페이지에 개요에 잘못된 "-s" 옵션이 포함되어 있었습니다. 이번 업데이트에서는 이 옵션이 제거됩니다.
- BZ#961844
- 이전에는 cgred 서비스가 부팅 프로세스에서 너무 빨리 시작되었습니다. 결과적으로 일부 서비스가 인용되기 전에 시작된 경우 제한되는 것을 방지할 수 있었습니다. cgred의 부팅 우선순위가 낮아졌으며 모든 서비스가 올바르게 제한됩니다.
기능 개선
- BZ#589535
- 이번 업데이트 후 cgred 데몬은 로그인한 모든 UNIX 그룹의 모든 사용자에 대해 자동화된 제어 그룹을 지원합니다. 이제 템플릿이 새 제어 그룹을 자동으로 생성하는 데 사용되며, 사용자가 시작하는 모든 프로세스가 적절한 그룹에서 시작하여 여러 사용자를 더 쉽게 관리할 수 있습니다.
8.88. libdrm
8.89. libguestfs
보안 수정
- CVE-2013-4419
- libguestfs에 대한 쉘 스크립팅 및 명령줄 액세스를 가능하게 하는 guestfish는 서버 모드에서 시작될 때 네트워크 소켓을 저장하는 데 사용되는 임시 디렉터리를 안전하지 않게 생성했습니다. 로컬 공격자는 이 취약점을 사용하여 다른 사용자의 guestfish 명령을 가로채고 수정하여 다른 사용자의 권한으로 임의의 guestfish 작업을 수행하거나 이 취약점을 사용하여 인증 자격 증명을 가져올 수 있습니다.
버그 수정
- BZ#892291
- 이전에는 guestmount 유틸리티에서 하드 링크를 생성하지 못하면 잘못된 오류 메시지가 반환되었습니다. 결과적으로 오류의 실제 원인에 대한 정보가 표시되지 않았습니다. 이번 업데이트를 통해 guestmount 의 오류 처리가 수정되었으며 설명된 사례에 올바른 메시지가 표시됩니다.
- BZ#892834
- 심볼릭 링크의 이름을 guestmount 유틸리티로 바꾸려고 할 때 guestmount 는 해당 링크를 덮어쓰는 대신 링크를 따랐습니다. 이번 업데이트를 통해 guestfs_rename API가 추가되어 guestmount 가 대상 파일의 이름을 올바르게 바꿀 수 있습니다.
- BZ#908255
guestfs_download
API 또는 guestfish 다운로드 명령을 사용하여 디렉터리를 다운로드 하는 것은 허용되지 않습니다. 그러나libguestfs
는 이러한 경우 오류를 반환하지 않았으며 대신 프로토콜 동기화가 손실되었습니다. 이번 업데이트를 통해libguestfs
는 다운로드 소스가 디렉터리인지 여부를 테스트하고 오류 메시지가 있는 경우 오류 메시지를 반환합니다.- BZ#909666
- 특정 상황에서 진행 메시지를 생성하는 libguestfs API 호출이 장기 실행되어 스택 오버플로로 인해 libguestfs 가 예기치 않게 종료되었습니다. 이 케이스를 처리하도록 기본 소스 코드가 수정되었으며 스택 오버플로가 더 이상 발생하지 않습니다.
- BZ#971090
- 이번 업데이트 이전에는 libguestfs 검사에서 비표준 systemroot 경로를 사용하는 Microsoft Windows 게스트를 감지하지 못했습니다. 이번 업데이트를 통해 libguestfs 가 Windows
boot.ini
파일의 내용을 사용하여 systemroot 경로를 찾도록 수정되었습니다. 결과적으로 비표준 systemroot 경로를 사용하더라도 Windows 게스트가 올바르게 감지됩니다. - BZ#971326
- 이전에는 대상 크기가 명시적으로 지정되지 않은 경우 libguestfs 에서 Microsoft Windows NTFS 파일 시스템의 크기를 조정하지 않았습니다. 이번 업데이트를 통해 libguestfs 가 대상 스토리지 장치에서 자동으로 이 크기를 설정하도록 수정되었습니다. 결과적으로 대상 크기를 지정하지 않고도 NTFS 파일 시스템의 크기를 조정할 수 있습니다.
- BZ#975753
- 일관성 없는 상태에 있는 Windows 게스트에서 virt-resize 가 실패합니다. 이번 업데이트에서는 이 문제에 대한 설명이 guestfs Cryostat 도움말 페이지에 추가되었습니다.
- BZ#975760
- 드라이브를 추가할 때
iface
매개변수를 사용하는 경우 libguestfs 가 무한 루프를 입력했습니다. 이번 업데이트를 통해 libguestfs 가iface
매개변수를 올바르게 처리하도록 수정되어 중단이 발생하지 않습니다. - BZ#980358
- 특정 XFS 기능을 사용할 수 없는 경우에도
guestfs_filesystem_available(g,"xfs")
함수를 true로 평가할 수 있습니다. 이 문제는 guestfs Cryostat 도움말 페이지에 설명되어 있습니다. - BZ#980372
- 이번 업데이트 이전에는 상대 경로 매개 변수가 있는 hivex-commit 명령은 사용자가 액세스할 수 없는 위치에 기록되었습니다. 이 명령은 절대 경로 또는 원본을 덮어쓰는 NULL 경로를 요구하도록 수정되었습니다. 상대 경로가 hivex-commit 로 전달되면 오류 메시지가 표시됩니다.
- BZ#985269
- libguestfs 를 사용하여 ACL(Access Control Lists)을 설정하는 구문은 이제 guestfs Cryostat 도움말 페이지에 설명되어 있습니다.
- BZ#989352
- 기능이 설정되지 않은 파일의 기능을 읽는 데 libguestfs 를 사용하면 libguestfs 에서 오류를 반환했습니다. 파일 기능을 검색하는
guestfs_cap_get_file()
함수가 수정되어 설명된 경우 빈 문자열을 반환합니다. - BZ#996039
- 특정 상황에서
--remote
및--add
옵션과 함께 guestfish 명령을 사용하면 예기치 않은 결과가 발생할 수 있습니다. 이 동작은 guestfish(1) 도움말 페이지에 설명되어 있습니다. - BZ#996825
- 이전에는 guestfish --remote 명령을 사용할 때 다음 메시지가 표시되었습니다.
libguestfs: error: waitpid (qemu): No child processes
이번 업데이트를 통해 이 불필요한 메시지가 더 이상 표시되지 않습니다. - BZ#998108
- 이전에는 부하가 많은 시스템에서 libguestfs 패키지를 사용할 때 "unstable clocks"에 대한 메시지가 디버깅 출력에 표시되었습니다. 이번 업데이트를 통해 libguestfs 가 kvmclock 커널 기능이 활성화되어 있는지 확인하도록 수정되어 앞서 언급한 메시지 출력을 줄일 수 있습니다.
- BZ#1000122
- 이번 업데이트 이전에는 디스크를 마운트하기 전에 guestfs_ sh 또는 sh 명령을 사용하면 guestfish 유틸리티가 세그먼트 오류로 종료되었습니다. 이번 업데이트를 통해 guestfish 는 이러한 명령을 실행하기 전에 파일 시스템이 마운트되었는지 확인하도록 수정되었으며 그렇지 않은 경우 오류 메시지가 표시됩니다. 결과적으로 위 시나리오에서 guestfish 가 더 이상 충돌하지 않습니다.
8.90. libibverbs-rocee
8.91. libksba
버그 수정
- BZ#658058
- 이전 버전에서는 /usr/bin/libksba-config 스크립트의 콘텐츠가 32비트 및 64비트 버전의 libksba-devel 패키지 간에 충돌했습니다. 따라서 이러한 패키지를 동시에 설치할 수 없었습니다. 이번 업데이트에서는 모든 아키텍처에 대한 콘텐츠가 일관되게 유지되도록 스크립트를 수정하여 이 버그를 수정합니다.
8.92. libnl
버그 수정
- BZ#682240
- libvirt 클라이언트 라이브러리 및 유틸리티를 사용하여 도메인을 시작할 때 libnl 라이브러리에서 메모리 누수가 트리거되었습니다. libnl은 더 이상 사용하지 않는 메모리를 계속 사용하기 때문입니다. 이번 업데이트를 통해 libnl의 메모리 누수가 수정되고 libnl은 사용량을 완료한 후 메모리를 릴리스합니다.
- BZ#689559
- 이번 업데이트 이전에는 libnl의 오류 처리로 strerror() 함수를 관대하게 사용했습니다. 그러나 strerror() 함수는 스레드로부터 안전하지 않았으며 애플리케이션의 여러 스레드가 libnl을 호출할 수 있었습니다. 이번 업데이트를 통해 strerror()의 모든 발생은 스레드 로컬 정적 버퍼에 메시지를 삽입하는 strerror_r() 함수에 대한 호출로 교체됩니다.
- BZ#953339
- 최대 가상 기능 수를 할당하는 igb 모듈의 max_vfs 매개변수가 KVM(커널 기반 가상 머신) 호스트에서 50,50보다 큰 값으로 설정된 경우 게스트가 다음 오류 메시지로 시작하지 못했습니다.오류 : virNetDevParseVfConfig:1484 : netlink 응답에서 IFLA_VF_INFO가 누락되었습니다.오류 : virFileReadAll:457 : '/var/run/libvirt/qemu/eth0_vf0': No such file or directory error : virFileReadAll:457 : Failed to open file'/var/run/libvirt/eth1_vf0': no such file or directory error이번 업데이트에서는 메모리 페이지 크기를 초과하는 Netlink 메시지를 수신할 수 있도록 기본 수신 버퍼 크기가 증가합니다. 따라서 게스트가 KVM 호스트에서 시작할 수 있으며 설명된 시나리오에서는 오류 메시지가 더 이상 발생하지 않습니다.
8.93. libpcap
버그 수정
- BZ#723108
- 이전에는 libpcap 라이브러리에서 BPF(Berkeley Packet Filter) 인프라에 대한 잘못된 필터링 코드를 생성했습니다. 그 결과 커널 내 패킷 필터는 사용자 공간 프로세스에서 수신해야 하는 일부 패킷을 삭제했습니다. 또한 MTUlink로 인해 IPv6 패킷 조각이 발생했을 때 tcpdump 유틸리티에서 잘못된 출력이 생성되었습니다. 이 버그를 해결하기 위해 BPF 필터 생성을 처리하는 코드가 최종 프로토콜을 확인하기 전에 IPv6 PDU에서 조각화 헤더를 확인하도록 수정되었습니다. 결과적으로 IPv6 전송 중에 소스 사이트 조각이 발생하고 tcpdump가 모든 패킷을 수신할 때 커널 필터가 더 이상 IPv6 조각을 삭제하지 않습니다.
- BZ#731789
- 이번 업데이트 이전에는 libpcap이 작은 SnapLen 값이 있는 캡처 장치를 열 수 없어 libpcap에서 오류 코드를 반환하고 tcpdump가 조기에 종료되었습니다. 패킷 캡처 메커니즘에 대한 프레임 계산은 패킷을 실제 SnapLen보다 작은 값으로 자르지 않도록 조정되어 버그를 수정합니다. 결과적으로 libpcap은 SnapLen의 작은 값이 있는 캡처 장치를 열려고 할 때 더 이상 오류를 반환하지 않으며 libpcap을 사용하는 애플리케이션은 패킷을 처리할 수 있습니다.
8.94. libqb
버그 수정
- BZ#889299
- 문자열의 길이 또는 정확도가 지정된 경우 Blackbox 창 관리자의 출력에 로깅 정보가 포함되지 않았습니다. 특히 Pacemaker 클러스터 리소스 관리자와 함께 사용할 때 디버깅을 위해 Blackbox 출력의 유용성에 영향을 미쳤습니다. 이 문제는 strlcpy() 및 strlcat() 함수의 libqb 구현의 버그와 Blackbox 로그 포맷을 담당하는 코드로 인해 발생했습니다. 이번 업데이트에서는 이러한 버그가 수정되어 이제 Blackbox 출력이 예상대로 포맷됩니다.
8.95. libreoffice
버그 수정
- BZ#820554
- 특정 유형의 내장 시간 회귀 테스트가 작동하도록 "--enable-new-dtags" 플래그가 추가되었습니다. 그 결과 GCJ Java complier가 Java 라이브러리의 올바른 위치를 검색하지 못했습니다. 이번 업데이트에서는 플래그를 제거하기 위해 패치를 적용하고 GCJ가 예상대로 작동합니다.
- BZ#829709
- 이전에는 LibreOffice 제품군이 특정 현지 언어로 완전히 번역되지 않았습니다. 이번 업데이트에서는 LibreOffice의 전체 번역이 로컬 언어로 제공됩니다.
- BZ#833512
- Cryostat.org 제품군을 Cryostat 제품군으로 업그레이드하는 동안 이전 버전과의 호환성 링크가 제거되고 Cryostat.org 아이콘이 LibreOffice로 마이그레이션되지 않았습니다. 그 결과 LibreOffice를 시작하려고 하면 오류와 함께 실패했습니다. 이번 업데이트를 통해 호환성 링크가 복원되고 아이콘이 예상대로 작동합니다.
- BZ#847519
- 차트 생성 코드의 버그로 인해 특정 상황에서 차트를 생성하려고 하면 세그먼트 오류로 실패했습니다. 이 버그를 수정하도록 기본 소스 코드가 수정되었으며 차트 생성이 예상대로 작동합니다.
- BZ#855972
- 기본 소스 코드의 버그로 인해 Impress 유틸리티의 개요 보기를 표시하려고 하면 예기치 않게 종료되었습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 적용하고 설명된 시나리오에서 개요 보기가 더 이상 충돌하지 않습니다.
- BZ#863052
- 특정 버전의 Microsoft Office 제품군에는 내부 타임스탬프 필드가 일치하지 않습니다. 이전에는 LibreOffice 제품군에서 해당 필드를 감지하고 예외를 반환했습니다. 결과적으로 사용자는 특정 Microsoft Office 문서를 열 수 없었습니다. 이번 업데이트를 통해 일치하지 않는 타임스탬프 필드를 무시하도록 LibreOffice가 수정되었으며 예상대로 Microsoft Office 문서를 열 수 있습니다.
- BZ#865058
- 파일에 많은 양의 사용자 정의 숫자 형식이 지정되면 해당 형식은 테이블의 사용 가능한 모든 슬롯과 나머지 형식에 대해 일반 형식을 사용했습니다. 그 결과 파일을 로드하는 동안 특정 셀 포맷이 유지되지 않았습니다. 이번 업데이트를 통해 패치가 제공되었으며 셀 포맷이 예상대로 작동합니다.
- BZ#871462
- Libre Cryostat 제품군에는 테스트 목적으로 사용되는 무해한 여러 파일이 포함되어 있습니다. 이전에는 Microsoft Windows 시스템에서 이러한 파일이 Microsoft Security Cryostat와 같은 다양한 안티바이러스 소프트웨어에 대해 잘못된 경고를 트리거할 수 있었습니다. 예를 들어 Red Hat Enterprise Linux 6 ISO 파일을 스캔할 때 경고가 트리거될 수 있습니다. 기본 소스 코드가 수정되어 이 버그를 수정하고, 파일은 더 이상 설명된 시나리오에서 false positive 경고를 트리거하지 않습니다.
- BZ#876742
- 테이블 구현이 충분하지 않기 때문에 Impress 유틸리티는 모든 작업 중에 테이블의 내부 복사본을 만들었습니다. 그 결과 프레젠테이션에 큰 테이블이 포함되면 작업이 상당히 느려졌습니다. 이번 업데이트에서는 테이블 콘텐츠 트래버스를 최적화하는 패치를 제공합니다. 결과적으로 설명된 시나리오에서 작업이 더 빨리 진행됩니다.
- BZ#902694
- 이전에는 keyboard-shortcut 매핑이 자동으로 설정되었습니다. 결과적으로 기존 키가 특정 언어의 바로 가기로 제안되었습니다. 이번 업데이트를 통해 이 버그를 해결하기 위해 패치가 제공되었으며 영향을 받는 바로 가기가 수동으로 매핑됩니다.
8.96. librtas
기능 개선
- BZ#985850
- 이번 업데이트에서는 PRRN 인터페이스를 통해 Dynamic Memory Affinity에 대한 사용자 공간 솔루션에 대한 지원이 추가되었습니다. 시스템 최적화로 파티션의 선호도가 변경되면 영향을 받는 파티션은 파티션의 선호도 속성이 변경되었음을 이벤트-스can RTAS 호출을 통해 알림을 받습니다. 결과적으로 파티션은 기존 RTAS/hidden h_calls를 통해 선호도 문자열을 새로 고칠 것으로 예상됩니다.
8.97. libtevent
버그 수정
- BZ#975489
- 이번 업데이트 이전에는 폴링 백엔드의 조건이 64비트 변수를 32비트 아키텍처에서 64비트보다 작은 부호 없는 정수 변수로 복사했습니다. 조건에 서명되지 않은 정수 변수를 사용하면 조건이 항상 false로 렌더링되었습니다. 변수 형식이 uint64_t 형식으로 변경되어 모든 아키텍처에서 너비가 64비트가 되도록 합니다. 결과적으로 조건이 이제 예상된 결과를 생성합니다.
- BZ#978962
- 이전에는 tevent_loop_wait() 함수가 제거되지 않은 경우에도 내부적으로 자체 신호 처리기를 등록했습니다. 결과적으로 tevent_loop_wait()는 등록된 사용자 지정 처리기가 없어도 종료할 수 없었습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하고 tevent_loop_wait()가 이제 예상대로 작동합니다.
8.98. libvirt
버그 수정
- BZ#846013
- 이전 버전에서는 여러 문제로 인해 마이그레이션 중에 IPv6가 제대로 처리되지 않았습니다. 이번 업데이트를 통해 이제 설명된 시나리오에서 마이그레이션이 성공적으로 수행됩니다.
- BZ#847822
- 수동 구성이 없으면 원격 드라이버가 libvirtd 데몬의 세션 인스턴스에 대한 연결을 지원하지 않았습니다. 이 동작은 이러한 구성을 사용하려는 사용자를 혼동할 수 있습니다. 이번 업데이트를 통해 libvirt에서 필요한 수동 구성이 없는 연결은 허용되지 않습니다.
- BZ#851075
- 이전에는 libvirt 라이브러리에서 ESX 환경에 대한 드라이버 구현이 누락되었습니다. 결과적으로 사용자가 ESX 게스트에 대한 네트워크를 구성할 수 없었습니다. 네트워크 드라이버가 구현되었으며 사용자가 ESX 게스트에 대한 네트워크를 예상대로 구성할 수 있습니다.
- BZ#882077
- 이전 버전에서는 libvirt에서 스냅샷을 생성할 때 원시 QEMU 오류를 보고했으며 제공된 오류 메시지가 혼동되었습니다. 이번 업데이트를 통해 QEMU에서 스냅샷을 만들 수 없는 경우 libvirt에서 명확한 오류 메시지가 표시됩니다.
- BZ#888503
- AMD 제품군 15h 프로세서 CPU 아키텍처는 별도의 코어와 별도의 스레드로 표시되는 “모듈” 으로 구성됩니다. 관리 애플리케이션은 접근 방식 중 하나를 선택해야 했으며 libvirt는 이를 수행하기에 충분한 정보를 제공하지 않았습니다. 또한 관리 애플리케이션은 필요에 따라 AMD 제품군 15h 프로세서 코어의 모듈을 나타낼 수 없었습니다. 이제 기능 XML 출력에 프로세서 토폴로지에 대한 자세한 정보가 포함되어 관리 애플리케이션에서 필요한 정보를 추출할 수 있습니다.
- BZ#892079
- 이전에는 libvirtd 데몬이 게스트 에이전트 서비스를 실행한 Microsoft Windows 게스트에 대해 s3 또는 s4 작업을 실행할 수 없었습니다. 결과적으로 도메인이 삭제되어 “도메인 s4 실패” 오류 메시지가 발생했습니다. 이번 업데이트를 통해 게스트가 성공적으로 삭제되고 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#894723
- VM(가상 머신)을 압축 파일에 저장할 수 있습니다. 이전에는 libvirt가 VM을 다시 시작하는 동안 해당 파일의 압축을 해제하지 못하면 libvirt에서 실행 중인 VM 목록에서 VM을 제거했습니다. 그러나 해당 QEMU 프로세스는 제거되지 않았습니다. 이번 업데이트를 통해 이러한 경우 QEMU 프로세스가 종료됩니다. 또한 치명적이지 않은 압축 해제 오류가 무시되고 이러한 오류가 발생하면 VM을 다시 시작할 수 있습니다.
- BZ#895294
- 해당 인터페이스에 부팅 순서를 설정하면 virDomainUpdateDeviceFlags API를 사용하여 네트워크 인터페이스를 업데이트하지 못했습니다. 제공된 장치 XML에 부팅 순서가 설정되어 있어도 업데이트가 실패했습니다. virDomainUpdateDeviceFlags API는 제공된 장치 XML의 부팅 순서 사양을 올바르게 구문 분석하고 부팅 순서를 사용하여 네트워크 인터페이스를 업데이트할 수 있도록 수정되었습니다.
- BZ#895340
- libvirt 라이브러리를 사용하면 도메인의 NIC(Network Interface Controller)에서 QoS(Quality of Service)를 설정할 수 있습니다. 그러나 구현의 버그로 인해 특정 값이 올바르게 설정되지 않았습니다. 결과적으로 실제 처리량이 도메인 XML의 하나의 세트와 일치하지 않았습니다. 기본 소스 코드가 XML에서 올바른 값을 설정하도록 수정되었으며 처리량은 XML에서 예상대로 하나의 세트와 일치합니다.
- BZ#895424
- Red Hat Enterprise Linux 6의 QEMU에서 vCPU의 핫 플러그를 지원하지 않습니다. 따라서 이 기능을 사용하려는 시도는 실패했지만 libvirt 라이브러리에서 기억하는 프로세서 수가 새 번호로 업데이트되어 기억되었습니다. 이번 업데이트를 통해 libvrit는 이제 QEMU에서 CPU를 실제로 연결 해제하여 연결 해제가 성공한 경우에만 내부 정보가 업데이트되었는지 확인합니다.
- BZ#895826
- 이전 버전에서는 마이그레이션이 실패하면 대상 호스트가 더 이상 파일을 사용하지 않았기 때문에 파일의 레이블을 다시 지정하기 시작했습니다. 그러나 이 동작은 여전히 실행 중인 소스 호스트에 영향을 미쳤습니다. 결과적으로 게스트가 디스크에 쓰는 기능이 손실될 수 있었습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하여 사용 중인 파일이 더 이상 설명된 시나리오에서 레이블을 다시 지정하지 않도록 합니다.
- BZ#895882
- libvirt 라이브러리의 Python 바인딩에는 virDomainSnapshot 클래스에서 getDomain() 및 getConnect() 메서드의 잘못된 구현이 포함되어 있습니다. 결과적으로 Python 클라이언트는 세그먼트 오류로 예기치 않게 종료되었습니다. Python 바인딩에서는 이제 virDomainSnapshot 인스턴스 내에 내부적으로 저장된 Python 오브젝트를 가져오는 적절한 domain() 및 connect() 접근자를 제공하고 충돌은 더 이상 발생하지 않습니다.
- BZ#896013
- 이전 버전에서는 libvirt 라이브러리에서 모든 작업에 대한 백업 체인 세부 정보를 재검색하는 대신 스토리지 파일 백업 체인의 캐시를 추가했습니다. 그런 다음 이 캐시를 사용하여 sVirt에 대해 레이블을 지정할 파일을 결정했지만 libvirt가 캐시를 사용하도록 전환하면 커널 제어 그룹(cgroups)이 사용 중인 경우에만 코드가 채워집니다. cgroup을 사용하지 않은 설정에서 sVirt는 백업 체인 캐시 정보 부족으로 백업 체인 파일에 레이블을 적절하게 지정할 수 없었습니다. 이 동작으로 인해 게스트가 관찰하는 회귀가 발생하지 않았습니다. 이제 프로세스가 이전에 캐시를 채우고 cgroup과 독립적이고 캐시로 인해 sVirt 작업이 더 효율적으로 수행되었으며 cgroup이 적용되는지 여부를 확인할 수 있습니다.
- BZ#903238
- 경우에 따라 사용자가 virsh create ordestroy 루프를 여러 번 실행할 때 경쟁 조건이 발생하여 libvirtd 데몬이 세그먼트 오류로 예기치 않게 종료될 수 있었습니다. 도메인에 대한 잘못된 오류 메시지도 호출자로 삭제되었습니다. 이번 업데이트를 통해 요약된 스크립트가 실행되고 libvirtd 크래시 없이 완료됩니다.
- BZ#903248
- 이전 버전에서는 libvirt 라이브러리에서 QEMU와 다른 상대 지원 체인을 따랐습니다. 이로 인해 libvirt에서 체인을 따를 수 없는 경우 sVirt 권한이 누락되었습니다. 이번 업데이트를 통해 libvirt 및 QEMU에서 상대 백업 파일이 동일하게 처리되고 VDSM에서 상대 백업 파일 기능이 올바르게 작동합니다.
- BZ#903433
- 커널 제어 그룹(cgroups)이 활성화되면 cgroup 간에 작업을 이동해도 드문 경우 경쟁 조건이 발생할 수 있습니다. 결과적으로 start 명령을 반복하고 virsh 유틸리티를 사용하여 명령을 수십 번 중지한 후 게스트를 시작하지 못할 수 있었습니다. 이번 업데이트를 통해 한 cgroup에서 다른 cgroup으로 이동하는 동안 경쟁을 방지하기 위해 스레드 그룹을 처리하는 코드가 최적화되었으며, 이제 설명된 시나리오에서 게스트가 예상대로 시작됩니다.
- BZ#906299
- 사용자가 Coverity 및 Valgrind 누출 탐지 도구를 실행할 때 libvirtd 데몬의 다양한 메모리 누수가 발견되었습니다. 이번 업데이트에서는 이러한 문제를 해결하며 libvirtd는 설명된 시나리오에서 더 이상 메모리를 유출하지 않습니다.
- BZ#908073
- 이전 버전에서는 사용자가 sharable 블록 CD-Rom으로 게스트를 시작할 때 이미 해제된 메모리에 액세스하여 libvirtd 데몬이 예기치 않게 실패했습니다. 이번 업데이트에서는 앞서 언급한 문제를 해결했으며 설명된 시나리오에서 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#911609
- libvirt 클라이언트 라이브러리의 경쟁 조건으로 인해 libvirt를 사용하는 모든 애플리케이션은 세그먼트 오류로 예기치 않게 종료될 수 있었습니다. 이는 한 스레드가 연결 닫기 콜백을 실행한 반면 다른 스레드가 연결 개체를 해제한 다음 연결 콜백 스레드가 이미 해제된 메모리에 액세스한 경우 발생했습니다. 이번 업데이트에서는 여전히 액세스 중일 때 콜백 데이터를 해제할 가능성이 수정되었습니다.
- BZ#912179
- 할당이 0인 논리 볼륨을 생성하라는 메시지가 표시되면 libvirt 라이브러리에서 lvcreate 명령을 실행하여 확장 없이 볼륨을 생성했으며 이는 허용되지 않습니다. 제로 할당이 실패하고 libvirt는 올바른 오류를 언급하지 않은 오류 메시지를 반환했습니다. 이제 libvirt에서 확장 기능을 요청하지 않고 최소 확장 수를 사용하여 볼륨을 생성하려고 합니다. 볼륨 생성 프로세스가 실패할 때 올바른 오류 메시지를 제공하도록 코드도 수정되었습니다. 결과적으로 libvirt를 사용하여 할당이 0인 논리 볼륨을 생성할 수 있습니다.
- BZ#913244
- auto-port 및 port를 지정하지 않았지만 tlsPort 속성이 “-1” 로 설정된 경우 QEMU 명령줄에 지정된 tlsPort 매개변수가 유효한 포트 대신 “1” 로 설정되었습니다. 결과적으로 QEMU는 포트에서 소켓을 바인딩할 수 없기 때문에 실패했습니다. 이번 업데이트에서는 새 virPortAl Cryostat API로 포트 예약을 관리하기 위한 현재 QEMU 드라이버 코드를 교체하고 QEMU는 이제 포트에서 소켓을 바인딩할 수 있습니다.
- BZ#913363
- libvirt 라이브러리는 도메인의 디스크가 공유 스토리지에 저장되지 않았으며 libvirt에서 모든 스토리지를 복사하도록 명시적으로 요청했을 때 마이그레이션을 중단할 수 있습니다. 결과적으로 공유 스토리지가 없는 마이그레이션은 VIR_MIGRATE_UNSAFE 플래그를 활성화한 경우에만 가능합니다. 이번 업데이트를 통해 로컬에 저장된 디스크 이미지에 대해 모든 설정이 안전하므로 안전한 디스크 캐시 설정 테스트가 공유 스토리지로만 제한됩니다.
- BZ#914677
- 이전 버전에서는 libvirt 라이브러리가 필요하지 않은 경우에도 커널 실행에서 누락된 unpriv_sgio 지원을 허용하지 않았습니다. 결과적으로 호스트 시스템을 Red Hat Enterprise Linux 6.5로 업그레이드한 후 사용자가 호스트를 새 커널로 재부팅하지 않으면 공유 가능한 블록 디스크 장치를 사용하여 도메인을 시작할 수 없었습니다. 이번 업데이트를 통해 unpriv_sgio 지원에 대한 검사는 실제로 필요한 경우에만 수행됩니다. 결과적으로 libvirt는 호스트 커널 지원에 관계없이 엄격하게 unpriv_sgio 지원이 필요하지 않은 모든 도메인을 시작할 수 있습니다.
- BZ#916315
- libvirt 코드의 버그로 인해 두 API, vidDomainBlockBlockStatsFlags() 및 vidDomainDetachDeviceFlags()가 동시에 실행되었습니다. 그 결과 libvirtd 데몬이 예기치 않게 종료되었습니다. 이러한 API를 함께 사용할 수 없도록 기본 소스 코드가 수정되어 이러한 경우 데몬이 더 이상 충돌하지 않도록 합니다.
- BZ#917510
- 관리 저장 이미지가 있는 VM(가상 머신)이 관리 저장 이미지를 제거한 “--force-boot” 매개변수를 사용하여 시작된 경우 관리 저장 상태를 보유하는 플래그가 지워지지 않았습니다. 이로 인해 잘못된 정보가 표시되고 관리 stave 상태와 관련된 일부 작업이 실패했습니다. 이 버그가 수정되었으며 이제 설명된 시나리오에서 플래그가 올바르게 지워집니다.
- BZ#920205
- 마이그레이션이 끝나면 libvirt가 대상 호스트의 도메인을 다시 시작하기 전에 SPICE(Simple Protocol For Computing Environments) 데이터를 대상 QEMU로 마이그레이션하기 위해 대기하고 있었습니다. 이로 인해 도메인이 호스트에서 실행되지 않은 대기 시간이 크게 증가했습니다. 이번 업데이트를 통해 SPICE 마이그레이션이 종료될 때까지 대기하지 않도록 기본 코드가 수정되었습니다. 결과적으로 이력서는 상당한 지연없이 가능한 한 빨리 수행됩니다.
- BZ#920441
- 이전에는 QEMU 쿠키 파일의 listen 속성이 삭제되었습니다. 결과적으로 사용자가 다른 네트워크를 사용하고 있는 경우 관리 및 마이그레이션을 위해 하나는 VNC(Virtual Network Computing) 및 SPICE용 네트워크 이름이 client_migrate_info 플래그를 통해 QEMU에 전달되었습니다. 이로 인해 가상 머신을 마이그레이션할 때 SPICE 클라이언트의 연결이 끊어졌습니다. 이번 업데이트를 통해 원격 수신 주소가 대신 전달되고 설명된 시나리오에서 SPICE 클라이언트의 연결이 더 이상 연결되지 않습니다.
- BZ#921387
- 논리 스토리지 백엔드의 use-after-free 버그로 인해 논리 스토리지 풀을 삭제할 때 libvirtd 데몬이 예기치 않게 종료될 수 있었습니다. 기본 소스 코드가 수정되었으며 이제 논리 볼륨을 삭제할 때 데몬이 예상대로 작동합니다.
- BZ#921538
- libvirt의 RPC 구현 클라이언트 측의 경쟁 조건으로 인해 다른 스레드가 이 연결을 통해 전송된 API를 계속 기다리는 경우에도 서버에서 닫은 클라이언트 연결을 해제할 수 있었습니다. 그 결과 다른 스레드가 이미 해제된 메모리에 액세스하고 클라이언트가 세그먼트 장애로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 모든 스레드가 API 호출을 처리하고 호출자에게 오류를 보고하는 경우에만 연결이 해제됩니다.
- BZ#921777
- 이전에는 일시적인 네트워크를 처리할 때 사용되는 잠금이 올바르지 않았습니다. 그 결과, 일시적인 네트워크에서 정의 API를 사용하면 네트워크 오브젝트 잠금이 예상대로 잠금 해제되지 않았습니다. 기본 소스 코드가 수정되어 개체 잠금이 올바르게 잠금 해제됩니다.
- BZ#922153
- 이전 버전에서는 libvirt 라이브러리에서 없는 파일에 대한 제어 그룹(cgroup) 요청을 했습니다. 이전 커널에서는 이러한 비센티컬 cgroup 요청이 무시되었지만 최신 커널은 더 엄격하게 수행되므로 libvirt 로깅이 급증하고 libvirtd 및 감사 로그에 오류가 발생합니다. ausearch 툴에서 표시되는 감사 로그 오류는 다음과 유사합니다.
root [date] - failed cgroup allow path rw /dev/kqemu
이번 업데이트를 통해 libvirt는 더 이상 중요하지 않은 cgroup 작업을 시도하지 않으므로 libvirtd 및 감사 로그에 유효한 시도만 남지 않습니다. - BZ#922203
- 이전에는 감사 메시지를 구성할 때 libvirt 라이브러리에서 잘못된 변수를 사용했습니다. 이로 인해 감사 메시지가 유효하지 않아 ausearch 유틸리티에서 특정 항목을 올바른 경로 대신 “path=(null)” 로 포맷했습니다. 이로 인해 ausearch가 libvirt에서 관리하는 게스트에 대한 cgroup 장치 ACL(액세스 제어 목록) 수정과 관련된 이벤트를 찾지 못할 수 있습니다. 이번 업데이트를 통해 감사 메시지가 올바르게 생성되어 감사 적용 대상이 손실되지 않습니다.
- BZ#923613
- 이전에는 vol-download 명령이 virsh(1) 매뉴얼 페이지에 잘못 설명되었습니다. 이번 업데이트를 통해 명령 설명이 수정되었습니다.
- BZ#923946
- 호스트에서 SELinux를 비활성화하거나 QEMU 드라이버를 사용하지 않도록 구성하고 도메인 XML 구성에 명시적인 seclabel 옵션을 포함하는 경우 코드는 seclabel 옵션을 구문 분석했지만 나중에 도메인 시작 시 레이블을 생성하고 새롭고 빈 seclabel 항목 [seclabeltype='none']을 생성했습니다. 결과적으로 다음 오류 메시지와 함께 Red Hat Enterprise Linux 6.5를 실행하는 두 호스트 간 마이그레이션이 실패했습니다.
libvirtError: XML error: missing security model when using multiple labels
이번 업데이트를 통해 seclabel 항목이 이미 있으면 새 항목이 더 이상 생성되지 않으며 마이그레이션은 설명된 시나리오에서 예상대로 작동합니다. - BZ#923963
- 이전에는 특정 버전의 Red Hat Enterprise Linux 간에 커널 netlink 프로토콜의 메시지에 ABI(Application Binary Interface) 불일치가 있었습니다. libvirt 라이브러리에서 netlink NLM_F_REQUEST 메시지를 전송하고 libvirt 바이너리가 libvirt를 실행하는 시스템의 버전과 다른 버전의 커널의 커널 헤더 파일을 사용하여 빌드된 경우 오류가 반환되었습니다. 그 결과 [interface type='hostdev'] 옵션을 사용하거나 libvirt 네트워크가 [forward mode='hostdev'] 옵션으로 설정된 경우 SR-IOV 네트워크 장치의 Peripheral Component Interconnect(PCI) 패스스루 장치 할당이 실패했습니다. 이러한 경우 다음 오류 메시지 또는 유사한 오류 메시지가 반환되었습니다.
error dumping (eth3) (3) interface: Invalid argument
이번 업데이트를 통해 libvirt는 모든 버전의 커널에 대해 적절하게 포맷된 NLM_F_REQUEST 메시지를 재시도합니다. 이제 단일 libvirt 바이너리에서 Red Hat Enterprise Linux 6 커널 버전을 실행하는 호스트에서 PCI 패스스루를 사용하여 SR-IOV 네트워크 장치를 게스트에 성공적으로 할당합니다. - BZ#924571
- 이전에는 풀을 지정할 수 있는 옵션이 없을 때 virsh 유틸리티의 vol-name 명령에서 NULL 문자열을 출력했습니다. 결과적으로 사용자에게 혼란을 줄 수 있는 오류 메시지가 반환되었습니다. 필요하지 않은 경우 옵션을 지정할 필요가 없도록 명령이 수정되었습니다. 결과적으로 설명된 시나리오에서 오류 메시지가 더 이상 반환되지 않습니다.
- BZ#924648
- 현재 QEMU 드라이버는 최대 메모리 크기 증가를 지원하지 않습니다. 그러나 이 기능은 virsh(1) 매뉴얼 페이지에 설명되어 있습니다. 이번 업데이트를 통해 도움말 페이지가 수정되었습니다.
- BZ#928661
- 이전에는 다른 버그를 수정하도록 코드 리팩토링의 일부가 잠금을 잘못 정리한 케이스를 남겨 두었습니다. 결과적으로 특정 마이그레이션에서 파일 시나리오로 libvirtd 데몬이 예기치 않게 종료될 수 있었습니다. 이번 업데이트 후 도메인을 파일에 저장할 때 잠금 정리 경로가 수정되었으며 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#947387
- libvirt 라이브러리는 libvirtd 서비스를 다시 시작할 때 상태를 다시 읽기 위해 사이드 파일을 사용하여 관리형 도메인의 내부 상태를 저장합니다. 그러나 도메인 상태가 일관되지 않은 상태로 저장된 경우 상태를 다시 읽지 않고 해당 도메인이 손실되었습니다. 이로 인해 도메인이 사라질 수 있었습니다. 이번 업데이트 후 libvirtd 서비스가 도메인의 내부 상태를 저장하면 일관된 내부 상태가 저장되고 이를 중단할 수 없는 도메인이 저장됩니다. 그 결과, 도메인은 더 이상 잊어지지 않습니다.
- BZ#948678
- 이전에는 “virsh vol-create-from” 명령을 사용하여 디렉터리 풀, 파일 시스템 풀 또는 NFS 풀에서 LVM 풀로 RAW 형식으로 없는 스토리지 볼륨을 복제하려고 시도했으며 “알 수 없는 파일 형식” 오류 메시지와 함께 실패했습니다. 이번 업데이트에서는 출력 블록 장치를 RAW 파일 형식으로 처리하여 이 버그가 수정되었으며 스토리지 볼륨을 이제 예상대로 복제할 수 있습니다.
- BZ#950286
- 특정 조건에서 연결이 닫힐 때 게스트가 자동으로 삭제되도록 설정된 경우 제거되지 않습니다. 그 결과 libvirtd 데몬이 예기치 않게 종료되었습니다. 다양한 충돌 시나리오를 해결하는 일련의 패치가 제공되었으며 게스트 자동 삭제 중에 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#951227
- 부하가 많은 시스템에서 libvirt 테스트 모음을 실행하면 테스트가 교착 상태가 될 수 있었습니다. RPM 빌드 중에 테스트 모음이 실행되었으므로 교착 상태가 발생하면 빌드가 완료되지 않았습니다. 이번 업데이트에서는 테스트 모음에 사용된 이벤트 루프 처리가 수정되어 설명된 시나리오에서 테스트 모음이 더 이상 중단되지 않습니다.
- BZ#955575
- 이전에는 해당 ESX 버전 5.1이 이전에 지원되도록 설정된 경우에도 VirtualHW 애플리케이션 버전 9가 지원되는 대로 설정되지 않았습니다. 결과적으로 virtualHW 버전 9를 사용하는 게스트가 있는 ESX 5.1 서버에 대한 연결이 생성되면 다음 오류가 표시되었습니다.
internal error Expecting VMX entry 'virtualHW.version' to be 4, 7 or 8 but found 9
이번 업데이트에서는 지원되는 버전 목록에 VirtualHW 버전 9를 추가하고 앞서 언급한 오류 메시지가 더 이상 이 시나리오에 표시되지 않습니다. - BZ#960683
- libvirt의 호스트 및 게스트의 토폴로지에 대한 정보를 보유하는 libvirt의 내부 데이터 구조는 데몬에 대한 서비스 거부(DoS) 공격 가능성을 방지하기 위해 크기가 제한됩니다. 그러나 이러한 제한은 너무 엄격하게 수행되었으며 CPU가 4096개인 호스트를 libvirt와 함께 사용할 수 있다는 가능성을 고려하지 않았습니다. 이번 업데이트 후 대규모 시스템에서도 확장성을 허용하도록 제한이 증가했습니다.
- BZ#961034
- 이번 업데이트 이전에는 fcntl() 함수를 사용하여 F_DUPFD_CLOEXEC 작업을 통해 최소 파일 설명자(FD) 번호를 지정하면서 단일 인수가 예상되었지만 제공되지 않았습니다. 결과적으로 FD 번호로 임의의 스택 데이터에 액세스하고 libvirt 실시간 마이그레이션이 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 인수가 설명된 시나리오에 제공되어 이 버그를 수정합니다.
- BZ#964359
- 이전 버전에서는 libvirtd 데몬에서 fork() 및 exec() 함수와 getpwuid_r() 함수를 호출하여 하위 프로세스의 추가 그룹을 설정했습니다. 이로 인해 상호 제외(mutex)가 발생할 수 있었습니다. 결과적으로 libvirtd가 fork() 함수라는 시점에 getpwuid_r mutex를 이미 보유하고 있는 경우 분기된 하위 프로세스 교착 상태로 인해 libvirtd가 응답하지 않게 되었습니다. 추가 그룹 세트를 계산하는 코드가 리팩토링되어 포크 후 뮤지션이 필요하지 않도록 합니다. 결과적으로 교착 상태 시나리오는 더 이상 불가능합니다.
- BZ#965442
- 이전에는 볼륨을 추가, 제거 또는 조정한 후 libvirt 라이브러리에서 풀 정보를 업데이트하지 않았습니다. 결과적으로 사용자는 이러한 작업 후에 올바른 풀 정보를 얻기 위해 "virsh pool-refresh" 명령을 사용하여 풀을 새로 고쳐야 했습니다. 이번 업데이트 후 볼륨 추가, 제거 또는 크기 조정 후 풀 정보가 자동으로 업데이트됩니다.
- BZ#970495
- 이전에는 virsh 유틸리티에서 "vol-create" 및 "vol-create-as" 명령의 "--pool" 인수를 풀 이름으로 간주했습니다. 결과적으로 풀 사양에 대한 이름과 UUID를 모두 수락하도록 문서화되어 있어도 vol-create 및 vol-create-as virsh 명령은 풀이 UUID(Universally Unique Identifier)로 지정되었을 때 작동하지 않았습니다. 이번 업데이트를 통해 virsh가 이름과 UUID로 풀을 조회하도록 수정되었습니다. 결과적으로 모두 virsh 명령이 문서에 따라 작동합니다.
- BZ#971485
- 이전 버전에서는 사용자가 도메인 XML에 VNC(Virtual Network Computing) 주소를 지정하지 않은 경우 qemu.conf 파일의 주소가 사용되었습니다. 그러나 마이그레이션 시 XML에서 사용자가 직접 설정하거나 qemu.conf 파일에서 복사된 수신 주소가 설정된 경우는 차이가 없었습니다. 이로 인해 도메인을 마이그레이션할 수 없었습니다. 이번 업데이트 후 수신 주소가 qemu.conf에서 복사되면 대상으로 전송되지 않습니다. 결과적으로 도메인을 마이그레이션할 수 있습니다.
- BZ#971904
- 이전에는 libudev 라이브러리에 전달된 libvirt 라이브러리의 로깅 함수가 여러 매개 변수가 있는 문자열을 올바르게 처리하지 않았습니다. 그 결과 libudev가 메시지를 기록하면 libvirtd 데몬이 예기치 않게 종료될 수 있었습니다. 이번 업데이트 후 libvirt에서 여러 매개 변수를 올바르게 처리합니다. 그 결과 libudev 로그 메시지가 표시되면 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#975201
- 이전 버전에서는 libvirt 라이브러리에 여러 체인 CA 인증서가 포함되어 있어도 cacert.pem 파일에서 하나의 CA(인증 기관) 인증서만 로드했습니다. 그 결과 libvirt가 중간 CA 인증서로 서명되었을 때 클라이언트와 서버 인증서의 유효성을 검증하지 못하여 공통 상위 CA를 공유하지 않았습니다. 이번 업데이트 후 모든 CA 인증서를 로드하도록 기본 코드가 수정되었습니다. 결과적으로 클라이언트와 서버 인증서가 중간 CA 인증서에서 서명하여 공통 상위 CA를 공유하는 경우 CA 인증서 검증 코드가 올바르게 작동합니다.
- BZ#975751
- 이전에는 loader Hypervisor 버전으로 인해 디스플레이가 하나만 있는 게스트에서만 많은 기능을 사용할 수 있었습니다. 결과적으로 두 개의 디스플레이가 있는 게스트를 QEMU 하이퍼바이저에 올바르게 정의할 수 없었으며 다른 일부 기능은 두 번째 디스플레이를 고려하지 않았습니다. 이번 업데이트를 통해 더 많은 디스플레이 유형을 정의할 수 있는 기능과 모든 one-display 가정이 모든 관련 코드에서 수정되었습니다. 결과적으로 여러 디스플레이가 있는 도메인을 정의하고, 올바르게 마이그레이션 및 시작할 수 있습니다.
- BZ#976401
- SPICE 프로토콜은 지정된 IP 주소에서 수신 대기하도록 설정하거나 지정된 네트워크에서 수신 대기하도록 설정할 수 있습니다. QEMU는 런타임 시 SPICE 수신 IP 주소를 변경할 수 없으므로 libvirt 라이브러리는 게스트의 모든 사용자가 SPICE 설정 업데이트로 이 IP 주소를 확인합니다. libvirt 코드의 회귀 버그로 인해 사용자의 XLM 요청이 수신 대기하도록 설정된 경우 libvirt에서 수신 대기 IP 주소 검사를 잘못 평가했습니다. 사용자의 XLM 요청에 수신 대기 IP 주소와 네트워크 주소가 모두 포함되어 있기 때문입니다. 그 결과 사용자 작업이 거부되었습니다. 이번 업데이트를 통해 사용자 요청의 IP 주소를 현재 수신 대기 IP 주소와 비교할 때 libvirt가 수신 대기 IP 주소 유형도 고려합니다. 이제 사용자는 이 시나리오에서 게스트의 SPICE 설정을 업데이트할 수 있습니다.
- BZ#977961
- 마이그레이션할 때 libvirtd 데몬은 대상 게스트에서 마이그레이션 URI(Uniform Resource Identifier)를 유출했습니다. 이 버그를 해결하기 위해 패치가 제공되어 마이그레이션 URI가 올바르게 해제되었습니다.
- BZ#978352
- 이번 업데이트 이전에는 libvirtd 데몬이 virCgroup CryostatTask() 함수에 메모리를 유출했습니다. libvirtd가 메모리 할당을 올바르게 관리하지 못하도록 수정 사항이 제공되었습니다.
- BZ#978356
- 이전에는 libvirtd 데몬이 virCgroupGetValueStr() 함수의 배열 앞에 하나의 바이트에 액세스했습니다. 이 버그가 수정되었으며 libvirtd는 이제 배열 범위 내에 남아 있습니다.
- BZ#979330
- 이전 버전에서는 libvirt 라이브러리가 커널에서 "변경" 알림을 사용하여 장치에 바인딩된 장치 드라이버의 이름을 변경해야 함을 나타냅니다. 그러나 이러한 변경 알림은 전송되지 않았습니다. 그 결과 "virsh nodedev-dumpxml" 명령의 출력에 libvirt가 시작된 시점의 장치에 바인딩되어 현재 바인딩된 드라이버가 아닌 장치 드라이버가 항상 표시되었습니다. 이 버그가 수정되었으며 libvirt는 변경 알림에 따라 "nodedev-dumpxml" 명령이 실행될 때마다 드라이버 이름을 수동으로 업데이트합니다. 결과적으로 드라이버 이름이 "nodedev-dumpxml"의 출력을 형성합니다.
- BZ#980339
- 이전 버전에서는 libvirt 네트워크 정의의 <pf> 요소에 잘못된 장치 이름이 지정된 경우 게스트가 해당 네트워크를 사용하여 인터페이스를 만들려고 하면 libvirt가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 libvirt는 이제 <pf> 장치 이름을 확인하여 해당 이름이 존재하고 sriov 가능 네트워크 장치인지 확인합니다. 결과적으로 잘못된 <pf>가 있는 네트워크를 참조하는 경우 libvirt가 더 이상 충돌하지 않습니다. 대신 적절한 오류 메시지를 기록하고 작업을 방지합니다.
- BZ#983539
- 이전에는 mount 명령이 실패하더라도 virStorageBackendFileSystemMount() 함수가 성공을 반환했습니다. 그 결과 libvirt에서 사용할 수 없는 경우에도 풀을 실행 중으로 표시했습니다. 이번 업데이트를 통해 mount 명령이 실패한 경우 오류가 표시됩니다. 결과적으로 mount 명령이 실패하면 libvirt에서 더 이상 성공 메시지를 표시하지 않습니다.
- BZ#999107
- libvirt 코드의 누락으로 인해 hostdev 기반 네트워크의 VLAN 태그(PCI 장치 할당을 통해 게스트에 할당할 SRIOV 가상 기능 풀)가 하드웨어 장치에 제대로 설정되지 않았습니다. 이번 업데이트를 통해 누락된 코드가 제공되었으며 네트워크 정의에 설정된 VLAN 태그가 게스트에 할당되면 장치에 올바르게 표시됩니다.
- BZ#1001881
- 이전에는 libvirt 라이브러리에서 여러 hostdev 네트워크 장치에 동일한 별칭 이름을 잘못 사용하려고 했습니다. 결과적으로 구성에 hostdev 네트워크 장치가 두 개 이상 있는 게스트를 시작할 수 없었습니다. 이번 업데이트를 통해 libvirt에서 각 장치에 다른 별칭 이름이 있는지 확인합니다. 결과적으로 구성에 여러 hostdev 네트워크 장치가 있는 게스트를 시작할 수 있습니다.
- BZ#1002790
- virsh(1) 매뉴얼 페이지의 blockcopy 명령에 대한 설명은 blockpull 명령에 대한 설명과 동일했습니다. 이 업데이트와 함께 올바른 설명이 제공되었습니다.
- BZ#1006710
- 이전에는 "auto" numatune 배치 및 "nodeset" 옵션을 사용하여 도메인 XML을 구문 분석할 때 nodeset 비트맵이 두 번 해제되었습니다. 그 결과 libvirtd 데몬이 이중 사용으로 인해 예기치 않게 종료되었습니다. 이번 업데이트 후 libvirtd에서 포인터를 해제한 후 NULL로 설정합니다. 결과적으로 이 시나리오에서는 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#1009886
- 이전에는 코드 이동으로 인해 SPICE 마이그레이션 상태를 쿼리하는 데 잘못된 작업이 있었습니다. 결과적으로 SPICE(Simple Protocol for Independent Computing Environments) 원활한 마이그레이션을 통해 도메인을 마이그레이션하고 domjobinfo 명령을 사용하여 동일한 도메인에 대한 정보를 동시에 요청할 때 libvirtd 데몬이 예기치 않게 종료되었습니다. 이번 업데이트 후 이 시나리오에서 작업이 올바르게 설정되고 libvirtd가 더 이상 충돌하지 않습니다.
- BZ#1011981
- libvirt-guests 서비스가 중지되면 libvirt-guests init 스크립트의 status 명령에서 “0” 값을 반환했지만 Linux Standard Base(LSB)에는 다른 값(“3”)이 필요했습니다. 결과적으로 반환 값에 의존하는 다른 스크립트에서 서비스가 실행 중인지 여부를 구분할 수 없었습니다. libvirt-guests 스크립트는 LSB를 준수하도록 수정되었으며 “service libvirt-guests status” 명령은 이제 설명된 시나리오에서 올바른 값을 반환합니다.
- BZ#1013758
- 이전에는 libvirt 라이브러리에 QEMU 프로세스의 최대 메모리 사용량 제한을 결정하는 추론이 포함되어 있었습니다. 제한에 도달한 경우 커널은 QEMU 프로세스를 종료하고 도메인도 종료되었습니다. 그러나 이는 올바르게 추측할 수 없습니다. 그 결과 도메인이 임의로 종료되었습니다. 이번 업데이트를 통해 추론이 삭제되었으며 커널이 더 이상 도메인을 종료하지 않습니다.
기능 개선
- BZ#803602
- 이번 개선된 기능에는 도메인의 VNC(Virtual Network Computing) 콘솔에 대한 공유 정책을 지정하는 기능이 추가되었습니다. QEMU 동작의 공유에서 배타적 VNC로 최신 변경으로 인해 공유 VPN만 사용한 특정 배포가 작동을 중지했습니다. 새 속성 “sharePolicy” 를 사용하면 정책을 배타적에서 공유로 변경할 수 있으며 이러한 배포가 올바르게 작동합니다.
- BZ#849796
- 이번 개선된 기능에는 QEMU의 기본 GlusterFS 지원이 추가되었습니다. 이제 사용자는 GlusterFS 볼륨에 저장된 디스크 이미지를 QEMU 도메인에 네트워크 디스크로 추가할 수 있습니다.
- BZ#851455
- libvirt 라이브러리는 보안상의 이유로 게스트의 네트워크 트래픽 NAT(Network Address Translation)에 대해 기본적으로 1023(“권한 없는 포트”)보다 큰 포트만 사용합니다. 그러나 게스트가 권한 있는 포트를 사용하는 경우에만 사용할 수 있는 네트워크 서비스에 액세스해야 하는 경우가 있습니다. 이번 개선된 기능을 통해 < “nat” >라는 새 요소를 제공하여 사용자가 네트워크 트래픽의 NAT에 사용할 포트 또는 주소 범위를 모두 지정할 수 있습니다.
- BZ#878765
- 이번 업데이트에서는 “migrate” 명령의 “migrateuri” 매개변수에 대한 누락된 설명이 virsh(1) 매뉴얼 페이지에 추가되었습니다.
- BZ#896604
- 이번 개선된 기능을 통해 libvirt 라이브러리에서 ram_size 매개변수를 지원합니다. 이제 사용자는 하나의 PCI(Peripheral Component Interconnect) 장치에서 여러 헤드를 사용할 때 RAM 메모리를 설정할 수 있습니다.
- BZ#924400
- QEMU 게스트 에이전트에서 게스트 CPU 활성화 및 비활성화를 지원합니다. 이 향상된 기능을 통해 사용자가 libvirt API를 사용하여 성능 및 확장성을 위해 게스트에서 CPU를 비활성화할 수 있도록 이 기능에 대한 지원이 libvirt 라이브러리에 추가되었습니다.
- BZ#928638
- DNS(Domain Name System) 서버 및 특히 루트 DNS 서버는 정규화된 도메인 이름이 아닌 DNS 요청 전달을 권장하지 않습니다. 즉, 도메인과 호스트 이름을 포함합니다. 또한 libvirt에서 가상 네트워크의 게스트에 서비스를 제공하기 위해 시작된 dnsmasq 프로세스는 이러한 요청을 전달하지 않습니다. 그러나 이것이 바람직한 특정 상황이 있습니다. 이번 업데이트에서는 정규화되지 않은 도메인 이름이 있는 (DNS) 요청의 업스트림 전달 권한이 추가되었습니다. libvirt 라이브러리에서 정규화되지 않은 호스트 이름으로 DNS 요청을 전달할 수 있도록 네트워크 구성에 옵션을 제공합니다. "forwardPlainNames='yes'" 옵션은 네트워크의 <dns> 요소에 속성으로 추가해야 합니다. 그 후에는 이러한 전달이 허용됩니다.
- BZ#947118
- 호스트 메모리에서 도메인의 메모리 잠금 지원이 libvirt 라이브러리에 추가되었습니다. 이번 업데이트를 통해 사용자는 도메인의 메모리 페이지를 스왑하지 않도록 할 수 있으므로 스왑으로 인한 도메인 실행 대기 시간을 방지할 수 있습니다. 사용자는 이제 호스트 메모리에 항상 존재하도록 도메인을 구성할 수 있습니다.
- BZ#956826
- QEMU I/O 제한은 가상 머신에서 세분화된 I/O 제어를 제공하며 기본 스토리지 장치 상단에 추상화 계층을 제공합니다.
- BZ#826315, BZ#822306
- 새로운 pvpanic 가상 장치를 가상화 스택에 연결할 수 있으며 게스트 패닉으로 인해 libvirt에서 알림 이벤트를 관리 애플리케이션에 보낼 수 있습니다. 이 기능은 Red Hat Enterprise Linux 6.5에서 기술 프리뷰로 도입되었습니다. 이 장치를 사용하려면 추가 qemu 명령줄 옵션을 사용해야 합니다. 이 릴리스에는 libvirt에서 해당 옵션을 설정하는 데 지원되는 방법이 포함되어 있지 않습니다.
- BZ#1014198
- 이전에는 libvirt 라이브러리의 virDomainDeviceUpdateFlags() 함수를 사용하여 사용자가 도메인이 계속 실행되는 동안 도메인 장치에서 일부 구성을 업데이트할 수 있었습니다. 결과적으로 NIC(Network Interface Controller)를 업데이트할 때 구현이 누락되어 QoS를 변경할 수 없었습니다. 이번 업데이트를 통해 누락된 구현이 추가되어 NIC에서 QoS를 업데이트할 수 있습니다.
버그 수정
- BZ#1029632
- 두 클라이언트가 동일한 임시 도메인을 시작하려고 하면 동일한 도메인이 이미 시작되었음을 libvirt가 제대로 탐지하지 못할 수 있습니다. 그 결과 libvirt에서 알 수 없는 도메인에 대해 두 개 이상의 QEMU 프로세스를 실행할 수 있었습니다. 이번 업데이트를 통해 libvirt가 동일한 도메인이 아직 시작되지 않았는지 확인하도록 수정되었습니다. 따라서 동일한 도메인에 대해 두 개 이상의 QEMU 프로세스를 시작하지 않습니다.
8.99. libvirt-cim
버그 수정
- BZ#826179
- 이전에는 KVM_ComputerSystem 클래스를 사용하여 wbemcli 유틸리티를 실행하면 세그먼트 장애로 예기치 않게 종료되었습니다. 이는 libvirtd 데몬에 연결하는 경우에도 보안 정보가 포함된 도메인 XML이 VIR_DOMAIN_ XML_SECURE 플래그를 사용하여 덤프되었기 때문입니다. 그러나 libvirt에서는 이 작업을 금지합니다. 이번 업데이트를 통해 플래그는 읽기 전용 연결과 함께 사용되지 않습니다. KVM_ComputerSystem을 사용하여 wbemcli 명령을 실행하면 도메인 정보가 예상대로 표시됩니다.
- BZ#833633
- 특정 libvirt-cim 또는 sblim-smis-hba 패키지를 업데이트할 때 /var/log/messages 파일에 다음 오류가 기록되었을 수 있었습니다.sfcbmof: *** /var/lib/sfcb/registration/repository//root/pg_interop/qualifiers에 대한 리포지토리 오류이 문제는 libvirt-cim이 sblim-sfcb 리포지토리에 PG_InterOp 클래스를 잘못 설치했기 때문에 발생하지만 이 클래스는 open-pegasus 패키지에 고유합니다. 이번 업데이트를 통해 패키지를 업그레이드하기 전에 PG_InterOp이 등록 취소되고 이 시나리오에 오류 메시지가 기록되지 않습니다.
- BZ#859122
- 이전 버전에서는 libvirt-cim이 open-pegasus 패키지에 고유한 공급자를 sblim-sfcb 리포지토리에 잘못 설치했습니다. 이로 인해 MOF 파일을 컴파일할 때 다양한 문제가 발생할 수 있었습니다. Opengasus에 대한 공급자가 이제 올바른 리포지토리에 설치되고 문제가 더 이상 발생하지 않습니다.
- BZ#908083
- 이전 버전에서는 qemu 도메인이 브리지 네트워크 인터페이스로 정의된 경우 libvirt-cim 공급자를 실행하는 데 다음 오류 메시지와 함께 실패했습니다.domain을 시작할 수 없음: 지원되지 않는 설정: 브리지 유형 인터페이스에서 스크립트가 지원되지 않습니다.이는 qemu 도메인 유형을 확인하기 전에 도메인을 생성하는 데 사용되는 파일에 스크립트를 트리거하는 코드가 추가되었기 때문입니다. 그러나 qemu 도메인에는 스크립트가 허용되지 않습니다. 이번 업데이트를 통해 스크립트를 트리거하는 코드를 추가하기 전에 qemu 도메인 유형을 확인합니다. 결과적으로 libvirt-cim을 사용하면 브리지 네트워크 인터페이스로 qemu 도메인을 생성할 수 있습니다.
- BZ#913164
- 이전에는 게스트의 현재 VNC 주소와 포트 번호를 쿼리하는 호출에서 게스트의 정적 구성을 반환했습니다. 게스트가 "autoport" 선택을 활성화하는 데 사용된 경우 호출이 할당된 포트를 반환하지 않았습니다. libvirt-cim 코드는 정적 구성 정보만 반환하도록 수정되었습니다. 이를 통해 다른 인터페이스에서 도메인 상태를 기반으로 정보를 반환할 수 있습니다. 결과적으로 VNC에 대해 도메인에서 사용하는 현재 및 올바른 포트가 반환됩니다.
- BZ#1000937
- libvirt-cim 브로커에서 관리하는 가상 머신은 "메모리" 섹션의 "dumpCore" 플래그를 인식하지 못했거나 "디스크" 장치에 대한 "공유" 속성을 지원하지 않았습니다. 따라서 해당 속성은 브로커가 구성을 업데이트할 때 가상 머신 XML 구성에서 삭제되었습니다. 결과적으로 가상 머신에 이러한 속성을 예상하거나 설정하는 경우 해당 속성을 재설정하기 위해 구성을 조정해야 했습니다. 이번 업데이트를 통해 libvirt-cim에 패치가 추가되어 이러한 속성을 인식하여 가상 머신 XML 구성에 대한 변경 사항이 구성을 작성할 때 브로커가 손실되지 않습니다. 결과적으로 libvirt-cim 브로커에서 관리하는 가상 머신은 "메모리" 섹션의 "dumpCore" 태그 또는 "디스크" 장치에서 "shareable" 태그를 인식하고 가상 머신 XML 구성을 업데이트할 때 제거되지 않습니다.
8.100. libvirt-snmp
버그 수정
- BZ#736258
- 이전에는 Ctrl+C 키 조합을 사용하여 libvirtMib_subagent를 종료하면 메모리 누수가 발생했습니다. libvirtd 데몬도 때때로 종료될 수 있습니다. 이 문제를 해결하기 위해 패치가 적용되었으며 이 시나리오에서는 메모리 누수가 더 이상 발생하지 않습니다.
8.101. libwacom
8.101.1. RHBA-2013:1567 - libwacom 버그 수정 업데이트
버그 수정
- BZ#847427
- 이전 버전에서는 Wacom Stylus 펜이 libwacom 데이터베이스의 Cryostat CryostatPad X220 태블릿에서 지원되지 않았습니다. 그 결과, Pen은 gnome-wacom-properties 툴에서 인식되지 않았으며 경고 메시지가 반환되었습니다. CryostatPad X220 태블릿에서 Wacom Stylus에 대한 지원이 추가되어 gnome-wacom-properties가 태블릿을 교정할 수 있습니다.
8.102. libxml2
8.102.1. RHBA-2013:1737 - libxml2 버그 수정 업데이트
버그 수정
- BZ#863166
- 이전 버전에서는 XML::Lib XML 모듈을 사용하여 DTD(문서 유형 정의)를 통해 로드된 엔터티가 포함된 XML 파일을 구문 분석하면 XML::Lib XML::Lib XML을 로드하지 않았기 때문에 엔터티 오류가 누락될 수 있었습니다. 이 문제를 해결하기 위해 패치가 적용되었으며 이 시나리오에서는 XML 파일이 성공적으로 구문 분석됩니다.
8.103. linuxptp
버그 수정
- BZ#910966
- 이전에는 ptp4l 애플리케이션에서 클록의 빈도 수정을 제한하지 않았습니다. 결과적으로 일부 PTP 클럭을 사용하여 ptp4l이 큰 오프셋을 수정하고 있을 때 빈도 수정 작업을 -100%로 설정하여 시계를 효과적으로 중지할 수 있었습니다. 이번 업데이트에서는 시계의 허용되는 최대 수정을 구성하는 새 옵션이 추가되어 기본적으로 90%가 됩니다. 결과적으로 ptp4l이 100%까지 시계를 조정할 수 없으면 동기화된 시계가 중지되지 않습니다.
- BZ#910974
- 이전에는 phc2sys 유틸리티에서 ptp4l 애플리케이션에서 현재 UTC(Coordinated Universal Time) 오프셋 및 보류 중인 윤초에 대한 정보를 읽을 수 없었습니다. 그 결과 사용자가 UTC 오프셋을 수동으로 지정해야 했으며 윤초가 처리되지 않았습니다. 이번 업데이트에서는 ptp4l이 PTP 클록을 동기화하고 현재 UTC 오프셋 및 보류 중인 윤초에 대한 정보를 정기적으로 읽을 때까지 대기하는 새 옵션을 phc2sys에 추가합니다. 결과적으로 phc2sys 유틸리티는 올바른 UTC 오프셋을 사용하고 윤초가 올바르게 처리됩니다.
- BZ#991332, BZ#985531
- 이전에는 ptp4l 애플리케이션에서 캐시된 후속 또는 동기화된 메시지가 새로 수신된 동기화 또는 후속 메시지와 연결할 수 있는지 올바르게 확인하지 않았습니다. 그 결과 메시지가 잘못 연관될 수 있었기 때문에 클록의 오프셋과 중단된 동기화가 발생할 수 있었습니다. 동기화 및 후속 메시지를 연결하는 코드가 수정되었습니다. 결과적으로 동기화에 더 이상 중단되지 않습니다.
- BZ#991337
- 이전에는 알림 메시지가 수신될 때 ptp4l 애플리케이션에서 PASSIVE 상태에서 포트의 알림 수신 타이머를 재설정하지 않았습니다. 그 결과 PASSIVE 상태의 포트가 PASSIVE 및 MASTER 상태 간에 반복적으로 전환되었습니다. 이 버그가 수정되었으며 이제 모든 알림 메시지와 함께 타이머가 올바르게 재설정됩니다. 결과적으로 포트는 알림 메시지 수신을 중지할 때까지 PASSIVE 상태로 유지됩니다.
- BZ#966787
- 이전에는 ptp4l 및 phc2sys 유틸리티에서 명령줄 인수와 구성 파일에 지정된 값이 유효한지 확인하지 않았습니다. 이로 인해 유틸리티가 예기치 않게 종료될 수 있었습니다. 이제 유틸리티에서 값이 유효한지 확인하고 유효하지 않은 값이 지정되면 유틸리티에서 더 이상 예기치 않게 종료되지 않고 오류 메시지를 출력합니다.
기능 개선
- BZ#977258
- 시스템 시계가 단계화되지 않는 것이 중요하며 시스템에서 실행되는 다른 프로그램을 방해하지 않는 경우도 있습니다. phc2sys 애플리케이션을 다시 시작하면 클럭이 발생했습니다. 새로운 옵션이 phc2sys에 추가되어 phc2sys가 시계를 단계화하는 것을 방지할 수 있습니다.
8.104. lksctp-tools
8.105. logrotate
버그 수정
- BZ#841520
- logrotate 유틸리티는 소유자가 로그 파일의 현재 소유자와 동일한 경우에도 순환된 로그의 소유자를 설정하려고 합니다. Conseqeuntly, 소유권 변경이 지원되지 않는 파일 시스템 또는 시스템에서 순환에 실패했습니다. 이 업데이트를 통해 소유권이 변경되기 전에 logrotate가 실제 소유권 변경인지 확인합니다. 즉, new ownership이 이전 소유권과 같지 않은지 확인하고 소유권 변경이 실제가 아닌 경우 변경 사항을 건너뜁니다. 이제 logrotate 유틸리티는 이 시나리오에서 로그를 예상대로 순환합니다.
- BZ#847338
- 순환된 로그에서 ACL(액세스 제어 목록)을 설정하면 이전에 로그 파일의 설정 모드를 덮어씁니다. 그 결과 "create" 지시문이 무시되었습니다. 이 버그를 해결하기 위해 "create" 지시문을 사용할 때 ACL이 더 이상 이전 로그 파일에서 복사되지 않으며 "create" 지시문을 사용하여 정의된 모드가 대신 사용됩니다. 결과적으로 "생성" 모드가 예상대로 작동하고 설명된 시나리오에서는 더 이상 무시되지 않습니다.
- BZ#847339
- acl_set_fd() 및 fchmod() 함수가 호출되어 로그 파일 권한을 설정합니다. 그 결과 로그 파일에 짧은 시간 동안 안전하지 않은 권한이 있을 수 있는 경쟁 조건이 있었습니다. 이번 업데이트를 통해 이제 구성 파일에 사용된 지시문과 acl_set_fd() 및 fchmod() 함수 간의 경쟁 조건에 따라 이러한 기능 중 하나만 호출됩니다.
- BZ#848131
- inverse Cryostat 값 0000은 새 로그 파일을 만들 때 사용되었기 때문에 권한을 fchmod() 함수를 사용하여 적절한 값으로 설정하기 전에 새로 생성된 로그 파일에 짧은 시간 동안 원하지 않는 0600 권한이 있을 수 있었습니다. 이번 업데이트를 통해 Cryostat가 0777로 설정되고 새로 생성된 로그 파일에 이 짧은 기간 동안 적절한 0000 권한이 있습니다.
- BZ#920030
- 기본 SELinux 컨텍스트는 압축된 로그 파일이 생성된 후 설정됩니다. 결과적으로 압축 로그에 적절한 SELinux 컨텍스트가 없었습니다. 이번 업데이트를 통해 이제 압축 로그 파일 생성 및 압축 로그 파일에 적절한 SELinux 컨텍스트가 적용되기 전에 기본 SELinux 컨텍스트가 설정됩니다.
- BZ#922169
- 사용 중 오류가 발생한 경우 logrotate 유틸리티에 의해 생성된 임시 파일이 제거되지 않았습니다. 이번 업데이트를 통해 이러한 경우 임시 파일이 제거됩니다.
8.106. logwatch
8.106.1. RHBA-2013:1247 - logwatch 버그 수정 업데이트
버그 수정
- BZ#737247
- 이전에는 logwatch가 up2date 서비스의 "updateLoginInfo() 로그인 정보" 메시지를 올바르게 구문 분석하고 이를 일치하지 않는 항목으로 표시했습니다. 이번 업데이트를 통해 이러한 로그 메시지의 구문 분석이 수정되었으며 예상대로 작동합니다.
- BZ#799690
- 이번 업데이트 이전에는 logwatch가 많은 Openswan 로그 메시지를 올바르게 구문 분석하고 이를 일치하지 않는 항목으로 표시했습니다. 이번 업데이트를 통해 이러한 로그 메시지의 구문 분석이 수정되었으며 예상대로 작동합니다.
- BZ#799987
- logwatch가 Dovecot 2.x 로그 메시지를 올바르게 구문 분석하지 않았습니다. 이로 인해 보고서에 일치하지 않는 항목이 많이 발생했습니다. 이 패치는 Dovecot 2.x 로그를 올바르게 구문 분석하는 추가 논리를 추가하므로 Dovecot 2.x 메시지와 관련된 일치하지 않는 항목이 더 이상 나타나지 않습니다.
- BZ#800843
- .hdr 파일은 RPM 패키지의 헤더입니다. 기본적으로 메타데이터입니다. "Detail" 매개변수가 "Low"로 설정된 경우에도 logwatch의 HTTP 서비스 구문 분석기에서 .hdr 파일에 대한 경고를 발송했습니다. 이번 업데이트를 통해 이제 .hdr 파일이 아카이브로 구문 분석되어 .hdr 파일에 대한 잘못된 경고가 제거됩니다.
- BZ#837034
- 이전에는 logwatch가 구성에서 "ECDHETo" 옵션을 올바르게 처리하지 않았습니다. 이로 인해 보고서가 표시되어야 하는 경우에도 출력이 표시되지 않았습니다. 이 패치는 빈 "ECDHETo" 옵션을 올바르게 처리하는 추가 논리를 추가합니다. 결과적으로 이 옵션이 비어 있어도 출력이 올바르게 생성됩니다.
- BZ#888007
- 이번 업데이트 이전에는 logwatch가 많은 스마트 로그 메시지를 올바르게 구문 분석하고 이를 일치하지 않는 항목으로 표시했습니다. 이번 업데이트를 통해 이러한 로그 메시지의 구문 분석이 수정되었으며 예상대로 작동합니다.
- BZ#894134
- 이번 업데이트 이전에는 DNSSEC 검증이 활성화된 logwatch가 DNS 로그 메시지를 올바르게 구문 분석하고 이를 일치하지 않는 항목으로 표시했습니다. 이번 업데이트를 통해 이러한 로그 메시지의 구문 분석이 수정되었으며 예상대로 작동합니다.
- BZ#894185
- 이전에는 logwatch가 postfix 서비스의 "improper command pipelining" 메시지를 올바르게 구문 분석하고 이를 일치하지 않는 항목으로 표시했습니다. 이번 업데이트를 통해 이러한 로그 메시지의 구문 분석이 수정되었으며 예상대로 작동합니다.
- BZ#894191
- 이전에는 logwatch가 secure 로그에서 사용자 이름을 올바르게 구문 분석하지 않았습니다. 이러한 이름은 일치하지 않는 항목과 같은 다른 기호가 있는 이름을 포함하는 문자만 구성하고 표시되는 것으로 잘못 가정합니다. 이번 업데이트를 통해 밑줄과 숫자를 포함하도록 사용자 이름 구문 분석이 개선되어 이러한 사용자 이름을 포함하는 로그 메시지가 더 이상 일치하지 않는 항목으로 표시되지 않습니다.
- BZ#974042
- "su -" 또는 "su -l" 명령으로 시작된 로그인은 logwatch에서 올바르게 구문 분석되지 않았으며 일치하지 않는 항목으로 표시되었습니다. 이번 업데이트에서는 이 버그가 수정되었습니다.
- BZ#974044
- 이번 업데이트 이전에는 logwatch가 RSYSLOG_FileFormat 타임스탬프를 올바르게 구문 분석하고 이를 일치하지 않는 항목으로 표시했습니다. 이번 업데이트를 통해 rsyslog 타임스탬프 구문 분석이 수정되어 예상대로 작동합니다.
- BZ#974046
- SSH Kerberos(GSS) 로그인은 logwatch에서 올바르게 구문 분석되지 않았으며 일치하지 않는 항목으로 표시되었습니다. 이번 업데이트에서는 이 버그가 수정되었습니다.
- BZ#974047
- Cryostat 가상 콘솔 로그인은 logwatch에서 올바르게 구문 분석하지 않았으며 일치하지 않는 항목으로 표시되었습니다. 이번 업데이트에서는 이 버그가 수정되었습니다.
8.107. luci
보안 수정
- CVE-2013-4482
- luci 서비스가 초기화된 방식에서 취약점이 발견되었습니다. 시스템 관리자가 로컬 사용자가 쓸 수 있는 디렉터리에서 luci 서비스를 시작한 경우 해당 사용자는 이 취약점을 사용하여 임의의 코드를 root 또는 luci 사용자로 실행할 수 있습니다.
- CVE-2013-4481
- luci가 구성 파일을 생성한 방식에서 취약점이 발견되었습니다. 파일은 짧은 기간 동안 사람이 읽을 수 있는 상태로 생성되어 로컬 사용자가 구성 파일에 저장된 인증 시크릿에 액세스할 수 있도록 했습니다.
버그 수정
- BZ#917747
- 이전 버전에서는 luci가 fence-agents 패키지에서 발생한 fence 장치 적용 범위에 동시 추가를 반영하지 않았습니다. 그 결과 Dell iDRAC(idrac), HP iLO2(ilo2), HP iLO3(ilo4), IBM iLO4(ilo4) 및 IBM Integrated Management Module(imm) 장치 또는 에이전트가 적용되지 않아 이러한 장치가 포함된 클러스터를 제대로 사용하거나 설정할 수 없었습니다. 이번 업데이트에서는 전체 의도한 차단 장치 세트로 작동하도록 luci의 기능을 복원합니다.
- BZ#956360
- 이전에는 FIPS와 호환되지 않은 구성 요소를 활용했기 때문에 luci가 FIPS 모드에서 실행되지 않았습니다. 두 구성 요소, python-breaker 라이브러리 및 python-weberror 오류 처리기가 FIPS를 준수하도록 수정되어 luci가 예상대로 FIPS 모드에서 작동합니다.
- BZ#978479
- luci 코드의 버그로 인해 단일 요청으로 클러스터에 여러 노드를 추가하는 동안 데이터 경합 조건이 발생할 수 있었습니다. 결과적으로 노드에 다양한 버전 번호가 있는 구성이 제공되어 클러스터가 예기치 않은 상태가 될 수 있었습니다. 각 luci 코드가 수정되어 이 데이터 경합을 더 이상 트리거할 수 없습니다. 이제 부정적인 결과 위험 없이 한 번에 여러 노드를 클러스터에 추가할 수 있습니다.
- BZ#773491
- 이전의 동적 팝업 메시지 구현은 특정 상황에서 화면을 남기는 메시지가 발생할 가능성이 높았습니다. 따라서 각 luci 코드가 정적 메시지로 표시되도록 동적 팝업을 조정하도록 수정되어 메시지가 표시되지 않을 가능성이 크게 줄어듭니다.
- BZ#883008
- 이전 버전에서는 luci가 fence-agents 패키지에서 발생한 것처럼 일부 차단 장치(<cmd_prompt", "login_timeout", "power_timeout", "retry_on", "shell_timeout") 또는 각 인스턴스("delay")의 매개변수에 대한 동시 추가를 반영하지 않았습니다. 결과적으로 luci에 전용 양식을 제출할 때 유효한 매개변수가 구성의 각 부분에서 삭제될 수 있었습니다. 이번 업데이트에서는 전체 의도된 차단 에이전트 매개변수 세트로 작동하도록 luci의 기능을 복원하면 luci가 이미 구성된 매개 변수를 예기치 않게 삭제하지 못합니다.
- BZ#896244
- cluster.conf(5) 도움말 페이지의 버그로 인해 luci는 클러스터 로깅 구성에서 syslog_facility 옵션의 기본값을 실제 기본값 "local4" 대신 "daemon"으로 예상했습니다. 결과적으로 "syslog_facility"가 명시적으로 설정되어 있지 않은 모든 로깅 구성 항목은 luci에 "Syslog Message Facility"가 "Syslog Message Facility"로 표시되었습니다. 이로 인해 "daemon.*"이 포함된 규칙의 클러스터 메시지가 사용자 정의 로그 파일에 기록되지 않을 수 있었습니다. 이번 업데이트를 통해 luci는 기본 syslog 메시지 기능으로 "local4"를 올바르게 인식하고 luci의 로깅 구성 항목이 기본적으로 적절하게 표시됩니다. 이제 사용자는 로깅 구성 항목의 syslog 기능을 "daemon"으로 효과적으로 설정할 수 있습니다. 이러한 경우 클러스터 메시지는 "daemon.*" 규칙이 예상대로 포함된 로그 파일에 기록됩니다.
- BZ#886517
- luci 애플리케이션에서는 새 클러스터를 생성하거나 기존 클러스터에 노드를 추가할 때 ricci 및 modclusterd 서비스를 자동으로 활성화하지 않았습니다. 따라서 이러한 서비스는 라이프사이클 동안 클러스터를 관리하는 데 필수이므로 관리자의 개입이 필요했습니다. 이러한 서비스가 없으면 클러스터 노드와의 연결이 유지되어 클러스터가 재부팅되지 않았습니다. 이번 업데이트를 통해 새 클러스터를 생성하거나 기존 클러스터에 노드를 추가할 때 모든 클러스터 노드에서 ricci 및 modclusterd 서비스를 활성화하도록 luci가 수정되었습니다. 앞서 언급한 시나리오에서는 관리자의 개입이 더 이상 필요하지 않습니다.
- BZ#878149
- 이전 버전에서는 특정 luci 페이지에서 클러스터 노드에 연결할 수 없는 경우 luci에 오류 500 메시지가 표시되고 로그 추적을 사용하여 오류 메시지를 기록했습니다. 이 상황에 대한 적절한 대응으로 이 업데이트는 다음 메시지 중 하나를 표시하도록 luci를 수정합니다.
Unable to contact any of the nodes in this cluster.
No nodes from this cluster could be contacted. The status of this cluster is unknown
- BZ#880363
- luci 검증 코드의 버그로 인해 "Failover 도메인" 탭에서 존재하지 않는 장애 조치(failover) 도메인이 지정된 경우 혼동되는 검증 오류 메시지가 표시되었습니다. 이 버그가 수정되었으며 luci가 이러한 검증 오류를 올바르게 처리하여 적절한 오류 메시지를 예상대로 표시합니다.
- BZ#878960
- 인증 없이 "사용자 기본 설정" 페이지에 액세스할 수 있어 익명 사용자가 "시험" 모드를 비활성화하거나 활성화할 수 있었습니다. 이 동작은 직접적인 보안 영향은 없지만 할당된 권한 부여의 일관성은 모범 사례로 간주됩니다. 이번 업데이트에서는 이 "기본 설정" 페이지에 액세스하기 전에 사용자를 엄격하게 인증해야 하도록 luci를 수정합니다.
- BZ#886576
- "Fence 인스턴스 편집" 양식의 "이 인스턴스 제거" 버튼에는 기능이 없으므로 클러스터 관리자가 잘못되었을 수 있습니다. 이 버튼이 제거되었으므로 앞서 언급한 양식에 관련 콘텐츠만 표시됩니다.
- BZ#1001835
- luci 애플리케이션은 Dell DRAC 5 차단 장치의 "module_name" 매개변수를 필수로 잘못 간주했습니다. 따라서 이러한 펜스 장치는 모듈 이름을 지정하지 않고 생성할 수 없었습니다. 검증 코드가 수정되어 이제 luci가 이 매개변수를 선택 사항으로 처리하며, 이제 모듈 이름 없이 Dell DRAC 5 차단 장치를 성공적으로 생성할 수 있습니다.
기능 개선
- BZ#917814
- luci가 실수로 선택한 클러스터를 제거하지 못하도록 확인 팝업 대화 상자가 추가되었습니다.
- BZ#983693
- 이제 luci 애플리케이션이 Oracle Database 11g 지원과 관련된 oracledb, orainstance 및 oralistener 리소스 에이전트에 대한 동시 확장을 반영합니다. 또한 보다 광범위한 사용자 지정을 허용하도록 새로 지원되는 TNS_ADMIN 변수를 구성하는 기능도 포함됩니다.
luci
서비스가 자동으로 다시 시작됩니다.
8.108. lvm2
버그 수정
- BZ#820991
- 시스템에 볼 수 있는 클러스터형 볼륨 그룹(VG)이 있는 경우 클러스터되지 않은 잠금 유형을 사용하는 동안 적절한 반환 오류 코드로 자동으로 건너뛸 수 없었습니다. 이 버그를 해결하기 위해 여러 LVM 명령에 대해 "-ignoreskippedcluster" 옵션이 추가되었습니다. 즉, pvs, Cryostats, lvdisplay, pvdisplay, lvdisplay, lvdisplay, Cryostatchange, lvchange 등이 추가되었습니다. 이 옵션을 사용하면 경고 또는 오류 메시지 없이 클러스터형 VG를 올바르게 건너뛰고 반환 오류 코드도 이러한 클러스터형 VG에 의존하지 않습니다.
- BZ#834327
- 이전에는 이 장치가 아직 열려 있는 경우 lvremove 명령이 가상 스냅샷 장치를 제거하지 못했습니다. 결과적으로 <virtual_snashot_name>_vorigin device-mapper 장치가 제거 실패 후 시스템에 남아 있었습니다. 이 장치를 삭제하려면 dmsetup을 사용하는 수동 제거가 필요했습니다. 이번 업데이트를 통해 제거 작업을 진행하기 전에 LV open count 상태를 올바르게 확인하도록 lvremove가 수정되었습니다.
- BZ#861227
- 이전 버전에서는 lvconvert 명령을 "-stripes" 옵션과 함께 사용할 때 "--mirrors" 또는 "-repair", "thinpool" 또는 "type raid*/mirror"와 같은 필수 보조 옵션이 적용되지 않았습니다. 결과적으로 변환 명령을 사용하지 않고 "lvconvert --stripes"를 호출하면 불완전한 변환이 발생했습니다. 이번 업데이트를 통해 올바른 구문을 적용하기 위해 조건이 추가되었습니다. 결과적으로 이제 설명된 시나리오에 오류 메시지가 표시됩니다.
- BZ#880414
- 이전에는 특정 lvm2app 함수가 바이트 대신 섹터에서 값을 반환했습니다. 이 동작은 origin_size, Cryostat_extent_size, stripe_size, region_size, chunk_size, seg_start, pvseg_size 값에 적용됩니다. 그 결과 반환된 lvm2app 결과가 일관되지 않아 잘못된 경우가 있었습니다. 이 동작이 변경되었으며 모든 lvm2app 값이 이제 byte 값을 반환합니다.
- BZ#902538
- lvm2 툴에서는 /proc/devices 파일에서 "emcpower" 행을 검색하여 PowerPath 주요 번호를 결정합니다. 이전에는 일부 버전의 PowerPath에서 ID 문자열 "power2"를 사용했습니다. 이러한 식별자가 있는 시스템에서 PowerPath 장치에 동일한 물리 볼륨 UUID를 표시하는 PowerPath 구성 요소보다 예상되는 우선순위가 부여되지 않았습니다. 이번 업데이트를 통해 EMC 전원 장치 감지가 예상대로 작동하고 장치의 우선 순위가 올바르게 설정됩니다.
- BZ#902806
- 이번 업데이트 이전에는 lvm2 dmeventd 데몬이 LANG 환경 변수를 통해서만 C 로케일로 재설정하려고 했습니다. 그러나 시스템이 LC_ALL 변수를 사용하여 로케일을 설정하는 경우 이 변수는 LANG 변수보다 우선 순위가 높습니다. 이로 인해 광범위한 메모리 소비가 발생합니다. 이번 업데이트를 통해 LC_ALL이 LANG 대신 C로 재설정되어 메모리 사용량을 줄입니다.
- BZ#905254
- 이번 업데이트를 통해 lvmetad deamon이 이미 실행 중이거나 다른 이유로 pidfile이 잠긴 경우 특정 진단 메시지가 추가되었습니다. lvmetad를 이미 실행 중인 동안 시작하려고 할 때 이제 문제에 대한 명확한 표시가 포함된 메시지를 반환합니다.
Failed to acquire lock on /var/run/lvmetad.pid. Already running?
- BZ#907487
- 이전에는 RAID 논리 볼륨에서 누락된 물리 볼륨이 계속 사용되는 경우 'vgreduce --removemissing' 명령을 사용할 수 없었습니다. 이제 'vgreduce --removemissing'에서 실패한 물리 볼륨을 영향을 받는 RAID 논리 볼륨 내의 '오류' 세그먼트로 교체하고 볼륨 그룹에서 PV를 제거할 수 있습니다. 그러나 대부분의 경우 실패한 RAID 장치를 가능한 경우 'lvconvert --repair'를 사용하여 예비 RAID 장치로 교체하는 것이 좋습니다.
- BZ#910104
- 특정 상황에서 lvmetad 데몬의 캐시된 메타데이터가 메타데이터 업데이트 중에 누출될 수 있었습니다. 이번 업데이트를 통해 lvmetad가 누출을 방지하기 위해 수정되었습니다.
- BZ#913644
- 이전에는 Cryostatexport 명령이 실행된 후 장치가 실패한 경우 볼륨 그룹을 가져올 수 없었습니다. 또한 이러한 가져오기 실패로 인해 볼륨 그룹을 복구할 수 없었습니다. 이제 장치가 누락된 경우에도 볼륨 그룹을 가져오기 위해 '--force' 옵션을 사용할 수 있습니다.
- BZ#914143
- LVM에서 LVM 메타 데이터의 장치를 스캔하는 경우 다중 경로 필터, MD 구성 요소 필터 또는 파티션 서명 필터와 같은 여러 필터를 적용합니다. 이전에는 이러한 필터가 적용된 순서에 따라 다른 필터에서 장치에 액세스했기 때문에 다중 경로 필터에서 다중 경로 구성 요소를 필터링하지 못했습니다. 결과적으로 경로에 액세스할 수 없는 경우 I/O 오류가 발생했습니다. 이번 업데이트를 통해 필터링 순서가 변경되었으며 다중 경로 필터가 예상대로 작동합니다.
- BZ#919604
- 'raid1' 유형을 사용하여 thinpool 논리 볼륨에 대한 장치 내결함성을 설정할 수 있습니다. 'mirror' 세그먼트 유형의 논리 볼륨 상단에 thinpools를 더 이상 생성할 수 없습니다. 'mirror' 세그먼트 유형의 데이터 또는 메타 데이터 영역이 있는 기존 thinpools는 여전히 작동하지만 'lvconvert' 명령을 사용하여 'raid1'으로 변환하는 것이 좋습니다.
- BZ#928537
- 제공된 UUID가 올바르지 않은 상태에서 pvcreate 명령을 --restorefile 및 --uuid 옵션과 함께 사용하면 메모리 누수에 대한 내부 오류 메시지가 발행되었습니다.
Internal error: Unreleased memory pool(s) found.
이번 업데이트를 통해 메모리 누수가 수정되었으며 오류 메시지가 더 이상 표시되지 않습니다. - BZ#953612
- device-mapper-event 패키지를 최신 버전으로 업데이트할 때 패키지 업데이트 스크립트는 dmeventd 인스턴스 실행을 다시 시작하고 새 dmeventd 데몬으로 대체하려고 합니다. 그러나 이전 버전의 dmeventd는 재시작에 대한 알림을 인식하지 않으므로 이러한 상황에서 수동 개입이 필요합니다. 이전에는 다음 경고 메시지가 표시되었습니다.
WARNING: The running dmeventd instance is too old
보다 정확한 정보를 제공하고 필요한 조치를 위해 설명된 사례에 대해 다음 메시지가 추가되었습니다.Failed to restart dmeventd daemon. Please, try manual restart
- BZ#953867
- lvmetad 데몬을 관련 LVM 자동 활성화 기능과 함께 사용하면 암호화된 장치 상단에 있는 논리 볼륨이 시스템 부팅 중에 자동으로 활성화되지 않았습니다. 이는 기존의 모든 장치를 초기화하기 위해 시스템 부팅 중에 인위적으로 생성된 추가 udev 이벤트를 무시하여 발생했습니다. 이 버그가 수정되었으며 LVM에서 암호화된 장치를 포함하여 부팅 시 장치를 초기화하는 데 사용되는 udev 이벤트를 올바르게 인식합니다.
- BZ#954061
- lvmetad 데몬을 관련 LVM 자동 활성화 기능과 함께 사용할 때 기본 PV를 연결 해제하거나 비활성화한 후 백업 또는 활성화한 후 논리 볼륨을 나타내는 장치 매퍼 장치가 새로 고쳐지지 않았습니다. 이는 연결된 장치를 식별하기 위해 다른 메이저 및 마이너 쌍을 할당했지만 이 장치에 매핑된 LV는 원래 쌍으로 계속 참조했습니다. 이 버그가 수정되었으며 LVM은 반응 후 PV 장치의 논리 볼륨을 항상 새로 고칩니다.
- BZ#962436
- LVM 버전 2.02.74에 도입된 회귀 문제로 인해 optimal_io_size 장치 힌트가 1MiB의 기본 pe_start 크기보다 작으면 이 optimal_io_size가 무시되고 기본 크기가 사용되었습니다. 이번 업데이트를 통해 optimal_io_size가 PV의 pe_start 값을 계산하기 위해 올바르게 적용됩니다.
- BZ#967247
- 이번 업데이트 이전에는 RAID 논리 볼륨에 이미지를 추가하기 전에 사용 가능한 공간이 잘못 계산되었습니다. 결과적으로 사용 가능한 공간이 충분하지 않으면 이러한 이미지를 추가하지 못했습니다. 이 버그가 수정되었으며 이제 계산이 올바르게 수행됩니다.
- BZ#973519
- 이전 버전에서는 nohup 명령이 입력이 필요하지 않은 LVM 명령과 함께 사용된 경우, nohup은 표준 입력을 쓰기 전용으로 구성했지만 LVM에서 읽기도 위해 다시 열려고 했습니다. 결과적으로 명령은 다음 메시지로 종료되었습니다.
stdin: fdopen failed: Invalid argument
LVM이 수정되었으며 표준 입력이 이미 쓰기 전용으로 열려 있는 경우 LVM에서 읽기 위해 다시 열지 않습니다. - BZ#976104
- 이전 버전에서는 선형 논리 볼륨을 미러 논리 볼륨으로 변환할 때 /etc/lvm/lvm.conf 구성 파일에 설정된 기본 미러 세그먼트 유형이 항상 허용되지 않았습니다. 이 동작이 변경되었으며 구성 파일의 'mirror_segtype_default' 설정으로 지정된 세그먼트 유형이 이제 예상대로 적용됩니다.
- BZ#987693
- 코드 회귀로 인해 '-zero' 옵션 없이 thin-pool을 릴레이하는 경우 thin snapshot의 손상이 발생했습니다. 결과적으로 스냅샷의 처음 4KB가 유효하지 않을 수 있었습니다. 이 버그는 수정되었으며 앞서 언급한 시나리오에서 스냅샷이 더 이상 손상되지 않습니다.
- BZ#989347
- lvm2는 LVM 할당 코드에서 오류가 발생하여 기존의 스트라이핑된 공간에 연속하여 여유 공간 할당을 시도했습니다. lvextend 명령을 사용하여 3방향 스트라이핑된 논리 볼륨을 확장하려고 하면 lvm2 유틸리티가 세그먼트 오류로 인해 예기치 않게 종료되었습니다. 이번 업데이트를 통해 LVM의 동작이 수정되었으며 lvextend가 이제 분할 오류 없이 확장을 완료합니다.
- BZ#995193
- 이전에는 'locking_type = 0'의 구성 설정을 사용하여 볼륨 그룹을 클러스터형에서 비클러스터로 변환할 수 없었습니다. 결과적으로 클러스터를 사용할 수 없고 볼륨 그룹을 비 클러스터 모드로 변환해야 하는 경우 문제가 발생할 수 있었습니다. 이번 업데이트를 통해 앞서 언급한 변환이 가능하도록 LVM이 수정되었습니다.
- BZ#995440
- 이번 업데이트 이전에는 lvmetad 데몬이 실행 중이고 활성화되었는지에 따라 일관되지 않은 메타데이터를 복구했습니다. 그 결과 lvmetad 버전의 메타 데이터 복구가 메타 데이터를 수정하지 못하고 문제가 수동으로 해결될 때까지 모든 명령에 의해 경고 메시지가 반복적으로 출력되었습니다. 이번 업데이트를 통해 코드 경로가 조정되었습니다. 결과적으로 lvmetad와 관계없이 메타데이터 불일치가 적절하게 복구됩니다.
- BZ#997188
- lvm2app 라이브러리의 lvm_list_pvs_free 함수가 물리 볼륨이 없는 시스템에서 호출되면 lvm2app 코드는 이전에 해제된 내부 구조를 해제하려고 했습니다. 결과적으로 함수는 세그먼트 오류로 종료되었습니다. 이 버그는 수정되었으며 lvm_list_pvs_free를 호출할 때 세그먼트 오류가 더 이상 발생하지 않습니다.
- BZ#1007406
- MD RAID 장치에서 LVM 논리 볼륨을 PV로 사용하고 lvmetad 데몬이 활성화된 동안 관련 논리 볼륨 자동 활성화는 시스템에 불완전한 장치 매퍼 장치를 남겨 두는 경우가 있습니다. 결과적으로 장치-매퍼 장치를 수동으로 정리하지 않고 더 이상의 논리 볼륨을 활성화할 수 없었습니다. 이 버그는 수정되었으며 장치는 더 이상 시스템에 남아 있지 않습니다.
- BZ#1009700
- 이전에는 쓰기 실패 직후 복구 명령에서 실패를 처리하기 전에 LVM 미러를 읽을 때 LVM 명령이 응답하지 않을 수 있었습니다. 이번 업데이트를 통해 이 문제를 방지하기 위해 새로운 'ignore_lvm_mirrors' 구성 옵션이 추가되었습니다. 이 옵션을 '1'로 설정하면 LVM 미러가 무시되고 설명된 문제가 발생하지 않습니다. LVM 미러를 무시하면 LVM 미러에서 볼륨 그룹을 스택할 수 없습니다. 앞서 언급한 문제는 "raid1"과 같은 LVM RAID 유형에는 존재하지 않습니다. 특히 미러링된 논리 볼륨 상단에 볼륨 그룹을 스택하려고 할 때 RAID 세그먼트 유형을 사용하는 것이 좋습니다.
- BZ#1016322
- 이번 업데이트 이전에는 libdevmapper.so에서 풀을 삭제하는 동안 경쟁 조건이 발생할 수 있었습니다. 결과적으로 lvmetad 데몬은 특히 여러 LVM 명령이 한 번에 실행되는 것과 같이 더 많은 동시 로드에서 힙 손상으로 인해 종종 종료됩니다. 이번 업데이트를 통해 경쟁 조건을 수정하기 위해 올바른 잠금이 도입되었습니다. 결과적으로 lvmetad는 더 이상 힙 손상 및 후속 충돌을 발생하지 않습니다.
- BZ#1020304
- blkdeactivate 스크립트는 인수로 지정된 장치 목록을 반복하고 하나씩 마운트 해제하거나 비활성화하려고 합니다. 그러나 마운트 해제 또는 비활성화에 실패한 경우 반복이 진행되지 않았습니다. 결과적으로 blkdeactivate는 동일한 장치를 계속 처리하고 끝없는 루프를 입력했습니다. 이 동작이 수정되었으며 blkdeactivate가 장치를 마운트 해제하거나 비활성화하지 못하면 이 장치의 처리가 올바르게 건너뛰고 blkdeactivate가 예상대로 진행됩니다.
기능 개선
- BZ#814737
- 이번 업데이트를 통해 기본적으로 프로비저닝된 기존 논리 볼륨의 씬 스냅샷 생성을 지원하도록 lvm2가 향상되었습니다. 이제thin이 아닌 볼륨의 스냅샷에 thin-pool을 사용할 수 있으므로 성능이 향상됩니다. 현재 lvm2 버전은 병합 기능을 지원하지 않으므로 이전 lvm2 스냅샷과 달리 업데이트된 장치를 원본 장치로 다시 병합할 수 없습니다.
- BZ#820203
- LVM에서는 이제 구성 파일의 유효성을 지원하며 기존 구문 검사 외에 잘못된 값 유형으로 인식되지 않은 항목 또는 항목을 보고할 수 있습니다. 이 기능을 지원하기 위해 /etc/lvm/lvm.conf 구성 파일에 새로운 "config" 구성 섹션이 추가되었습니다. 이 섹션에는 검사를 활성화하거나 비활성화하는 "config/checks"와 (기본적으로 비활성화됨) 잘못된 구성 항목에서 즉시 중단을 활성화하거나 비활성화하는 "config/abort_on_errors"가 있습니다.또한 도입된 새 구성 처리 코드를 사용하는 "lvm dumpconfig" 명령에 새 옵션이 추가되었습니다. "lvm dumpconfig"는 --type, --atversion, --ignoreadvanced, --ignoreunsupported, --mergedconfig, --withcomments, --withversions, --validate 옵션을 인식합니다.
- BZ#888641
- 이전에는 scm (Storage Class Memory) 장치가 내부적으로 파티션 가능한 장치로 인식되지 않았습니다. 결과적으로 scm 장치를 물리 볼륨으로 사용할 수 없었습니다. 이번 업데이트를 통해 scm 장치가 파티션 가능으로 알려진 내부 장치 목록에 추가되었습니다. 결과적으로 물리 볼륨이 scm 파티션에서 지원됩니다. 또한 알려진 모든 장치 유형을 나열하기 위해 새로운 'lvm devtypes' 명령이 추가되었습니다.
- BZ#894136
- lvmetad 데몬이 활성화되면 메타 데이터가 RAM에 캐시되고 대부분의 LVM 명령은 일반 작업 중에 디스크 메타 데이터를 참조하지 않습니다. 그러나 디스크에서 메타 데이터가 손상되면 lvmetad를 다시 시작하거나 재부팅할 때까지 LVM에서 알림을 받지 못할 수 있습니다. 이번 업데이트를 통해 lvmetad가 활성 상태이고 메타 데이터가 캐시되는 동안 VG 일관성을 확인하는 데 사용되는 Cryostatck 명령이 디스크상의 손상을 감지하도록 개선되었습니다. 결과적으로 사용자는 "vgck" 명령을 실행하여 언제든지 디스크상의 메타 데이터의 일관성을 확인하거나 cron을 사용하여 주기적인 검사를 준비할 수 있습니다.
- BZ#903249
- 장치가 일시적으로 실패하는 경우 커널은 중단을 확인하고 장치를 비활성화한 것으로 간주합니다. 나중에 장치를 다시 활성 상태로 허용하기 전에 커널에 알림을 받아야 합니다. 이전에는 LVM에서 이러한 변경 사항을 인식하지 못했으며 'lvs' 명령은 커널이 여전히 장치를 실패한 것으로 간주하더라도 장치가 정상적으로 작동하는 것으로 보고했습니다. 이번 업데이트를 통해 장치가 누락되고 장치가 있지만 커널이 여전히 비활성화된 경우 'p'(부분)를 출력하도록 'lvs'가 수정되었습니다. RAID 논리 볼륨에 대한 'r' 속성을 볼 때 사용자는 배열을 새로 고쳐야 하는지('lvchange --refresh'를 사용하여 커널에 다시 로드) 또는 장치를 교체해야 하는지 결정할 수 있습니다.
- BZ#916746
- 이번 업데이트를 통해 COW 장치 크기의 스냅샷 관리 처리가 향상되었습니다. 이 버전은 스냅샷 COW 크기를 사용 가능한 최대 크기로 트리핑하여 불필요한 디스크 공간 사용을 방지합니다. 또한 최대 크기에 도달하면 스냅샷 모니터링을 중지합니다.
- BZ#921280
- 더 복잡한 장치 스택에 대한 지원이 개선되어 미러 또는 raids와 같은 더 복잡한 볼륨의 크기를 적절하게 조정할 수 있습니다. 새로운 lvm2 버전에서는 raids에서 thin data volume extension을 지원합니다. 미러 지원이 비활성화되었습니다.
- BZ#921734
- 이번 업데이트 이전에는 "vgchange -c {y|n}" 명령 호출이 시스템에서 액세스할 수 있는 모든 볼륨 그룹을 클러스터형 또는 비클러스터로 변경했습니다. 이로 인해 의도하지 않은 변경으로 인해 이 변경 사항을 승인하기 위해 다음 프롬프트가 추가되었습니다.
Change clustered property of all volumes groups? [y/n]
이 프롬프트는 대상 볼륨 그룹을 지정하지 않고 "vgchange -c {y|n}"이 호출되는 경우에만 표시됩니다. - BZ#924137
- blkdeactivate 유틸리티는 라는 외부 도구에서 오류 및 정보 메시지를 표시하지 않습니다. 대신 blkdeactivate에 의해 "done" 또는 "skipped" 메시지만 발행됩니다. 필요한 경우 이러한 오류 메시지를 표시하기 위해 blkdeactivate에 새 -e/-errors 스위치가 추가되었습니다. 또한 가능한 디버그 정보와 함께 외부 도구의 정보 메시지를 표시하는 새로운 -v/-verbose 스위치가 있습니다.
- BZ#958511
- 이번 업데이트를 통해 blkdeactivate 유틸리티가 bind( 'mount -o bind' 명령)로 마운트된 파일 시스템을 올바르게 처리하도록 수정되었습니다. 이제 blkdeactivate는 아래 볼륨을 비활성화하기 전에 이러한 모든 마운트 지점을 올바르게 마운트 해제합니다.
- BZ#969171
- 동시에 많은 RAID 논리 볼륨을 생성할 때 백그라운드 동기화 I/O는 패리티를 계산하거나 미러 이미지를 비중단 I/O에 복사하고 후속 논리 볼륨 생성이 크게 느려질 수 있습니다. 이제 lvcreate에 '-raidmaxrecoveryrate' 옵션을 통해 I/O 초기화를 방해할 수 있습니다. lvchange와 동일한 인수를 사용하여 논리 볼륨을 생성한 후 복구 I/O 속도를 변경할 수 있습니다. 복구 속도를 줄이면 명목 I/O가 혼잡하지 않게 됩니다. 초기화에는 시간이 오래 걸리지만 많은 논리 볼륨을 생성하면 더 빠르게 진행됩니다. (BZ#969171)
- BZ#985976
- 이번 업데이트를 통해 LVM으로 생성된 RAID 논리 볼륨은 이제 스크럽 작업을 사용하여 확인할 수 있습니다. RAID 볼륨이 일관되게 유지되도록 스크럽 작업은 사용자 시작 검사입니다. "check" 또는 "repair" 옵션을 "lvchange --syncaction" 명령에 추가하여 수행할 수 있는 두 가지 스크럽 작업이 있습니다. "확인" 작업에서는 모든 불일치에 대한 논리 볼륨을 검사하지만 수정할 수는 없습니다. "반복" 작업은 발견된 모든 불일치를 수정합니다.
- BZ#1003461
- 이번 업데이트에서는 lvm2에 thin external origin에 대한 지원이 추가되었습니다. 이를 통해 모든 LV를 thin 볼륨의 외부 원본으로 사용할 수 있습니다. 프로비저닝되지 않은 모든 블록은 외부 원본 볼륨에서 로드되지만 한 번 작성된 모든 블록은 thin 볼륨에서 로드됩니다. 이 기능은 'lvcreate --snapshot' 명령과 모든 LV를 씬 LV로 변환하는 'lvconvert' 명령을 통해 제공됩니다.
- BZ#1003470
- '활성 풀 볼륨 "풀 볼륨 이름"의 삭제 상태를 변경할 수 없습니다. '풀 볼륨 "풀 볼륨 이름"이 활성 상태이면 삭제 지원을 변경할 수 없습니다.
- BZ#1007074
- 손상된 씬 풀 메타 데이터의 복구는 이제 낮은 수준의 수동 복구인 'lvconvert --repair' 명령을 통해 제공됩니다. thin pool 메타 데이터 볼륨은 'lvconvert --poolmetadata swapLV Cryostat/pool' 명령을 통해 thin-pool LV에서 스왑 아웃한 다음 thin_check, thin_dump 및 thin_repair 명령을 사용하여 수동 복구 작업을 실행할 수 있습니다. 복구 후 thin pool 메타 데이터 볼륨을 다시 스왑할 수 있습니다. 이 낮은 수준의 복구는 사용자가 thin-pool 기능을 완전히 알고 있는 경우에만 사용해야 합니다.
- BZ#1017291
- LVM은 이제 NVM Express 장치를 적절한 블록 장치 유형으로 인식합니다.
8.109. mailx
8.109.1. RHBA-2013:1129 - mailx 버그 수정 업데이트
버그 수정
- BZ#845098
- 이번 업데이트 이전에는 Red Hat Enterprise Linux 6 mailx 패키지와 함께 제공되는 "mail" 유틸리티가 Red Hat Enterprise Linux 5 mailx 패키지 및 이전 릴리스의 Red Hat Enterprise Linux 5 mailx 패키지와 함께 제공되는 유틸리티와 완전히 호환되지 않았습니다. 결과적으로 mail 유틸리티용으로 작성된 일부 사용자 스크립트가 Red Hat Enterprise Linux 6의 "메일"과 함께 작동하지 않았습니다. 여러 버전의 "mail" 유틸리티에 대한 지원이 mailx 패키지에 추가되었습니다. 이를 통해 사용자는 이 유틸리티를 제공하는 대체 패키지(예: bsd-mailx)를 설치할 수 있습니다.
- BZ#857120
- TMPDIR 환경 변수가 잘못된 경로로 설정되어 있기 때문에 mailx 명령에서 이메일 전송 실패 시 오류 반환 코드를 설정하지 않았습니다. 결과적으로 오류 확인이 올바르지 않아 도움이 되지 않았습니다. 이번 업데이트를 통해 mailx가 이메일을 보내지 못하는 경우 올바른 반환 코드가 설정됩니다. 이제 오류 확인이 제대로 작동합니다.
8.110. man-pages-fr
버그 수정
- BZ#903048
- 프랑스어 도움말 페이지 패키지 man-pages-fr의 빌드 시스템의 일부 문제로 인해 일부 도움말 페이지가 패키지에 포함되어 있지 않았습니다. 예를 들어, 시스템이 프랑스어 로케일에 실행된 경우에도 "echo"의 도움말 페이지가 영어로 표시되었습니다. 따라서 "man echo" 명령은 영어 매뉴얼 페이지를 표시했습니다. man-pages-fr 패키지의 빌드 문제가 해결되어 이제 누락된 도움말 페이지가 포함됩니다. 따라서 시스템이 프랑스어 로케일에 실행될 때 도움말 페이지가 프랑스어로 표시됩니다(예: "man echo"에 프랑스어 도움말 페이지가 표시됩니다.
8.111. man-pages-ja
버그 수정
- BZ#949787
- 이전 릴리스의 shmat(2) 도움말 페이지는 shmat 유틸리티로 반환되었을 수 있는 EIDRM 오류 코드를 언급하지 않았습니다. 이번 업데이트를 통해 EIDRM 오류 코드가 shmat에 포함됩니다.
- BZ#957937
- 이전 릴리스의 strtoul Cryostat 도움말 페이지는 반환 값의 범위를 잘못 언급했습니다. 이번 업데이트에서는 앞서 언급한 문제가 해결되었습니다.
8.112. man-pages-overrides
버그 수정
- BZ#988125
- madvise(2) 매뉴얼 페이지에는 "MADV_DODUMP" 및 "MADV_DONTDUMP" 인수가 포함되어 있지 않습니다. 이번 업데이트에서는 이러한 인수에 대한 설명이 madvise(2) 매뉴얼 페이지에 추가되었습니다.
- BZ#833868
- 이전에는 dig 유틸리티의 도움말 페이지에 Internationalized Domain Name(IDN) 라이브러리의 업스트림별 옵션이 포함되어 있었습니다. 결과적으로 이러한 옵션은 예상대로 작동하지 않았으며 사용자는 도움말 페이지의 단계에 따라 dig에서 IDN 지원을 비활성화할 수 없었습니다. dig(1) 매뉴얼 페이지가 Red Hat Enterprise Linux에 사용된 IDN 라이브러리의 옵션을 포함하도록 수정되었으며 사용자는 도움말 페이지의 단계에 따라 dig에서 IDN 지원을 성공적으로 비활성화할 수 있습니다.
- BZ#978981
- 이전에는 Red Hat Enterprise Linux 6에서 getent 유틸리티에 대한 도움말 페이지가 없었습니다. 이번 업데이트에서는 누락된 getent(1) 매뉴얼 페이지가 추가되어 유틸리티 문서가 완료되었습니다.
- BZ#872144
- 이번 업데이트 이전에는 top(1) 매뉴얼 페이지에서 상주 메모리 크기의 계산을 올바르게 설명하지 않았습니다. 상주 메모리 크기에 대한 잘못된 계산이 이 매뉴얼 페이지에서 제거되었습니다.
- BZ#1018622
- 이전에는 arpwatch(8) 매뉴얼 페이지의 "새 스테이션" 메시지에 대한 설명이 정확하지 않아 혼동이 발생할 수 있었습니다. 이번 업데이트에서는 "새 스테이션" 메시지에 대한 올바른 설명이 arpwatch(8) 도움말 페이지에 추가되었습니다.
- BZ#896700
- 이전에는 auditd.conf(5) 매뉴얼 페이지에 불완전한 문장이 포함되어 있었습니다. 이 업데이트로 불완전한 문장이 수정되었습니다.
- BZ#974697
- ld.so(8) 매뉴얼 페이지에는 "LD_PRELOAD" 변수에 대한 잘못된 설명이 포함되어 있습니다. 이번 업데이트를 통해 ld.so(8) 매뉴얼 페이지에서 변수에 대한 설명이 수정되었습니다.
- BZ#1002071
- bash(1) 매뉴얼 페이지는 Bash 버전 4.1에 도입된 "extglob" 옵션의 동작 변경 사항을 반영하지 않았습니다. 이번 업데이트에서는 bash(1) 도움말 페이지에 "extglob" 동작에 대한 올바른 설명이 추가되었습니다.
- BZ#903258
- fallocate 유틸리티에 대한 매뉴얼 페이지에는 "FALLOC_FL_PUNCH_HOLE" 플래그에 대한 설명이 포함되어 있지 않았습니다. 이번 업데이트에서는 fallocate(2) 매뉴얼 페이지에 "FALLOC_FL_PUNCH_HOLE"에 대한 설명이 추가되었습니다.
- BZ#979318
- 이전에는 netstat 유틸리티의 도움말 페이지에서 명령의 "-A" 옵션에 대한 설명에서 IPv6를 언급하지 않았습니다. 이번 업데이트를 통해 IPv6 기능에 대한 설명이 netstat(8) 도움말 페이지에 추가되었습니다.
- BZ#905066
- 이전 버전에서는 NSS(Network Security Services)에서 curl 유틸리티를 사용할 때 닉네임으로 CA(인증 기관) 인증서를 로드하면 curl 문서에 잘못 설명되었습니다. 이번 업데이트에서는 위에서 언급한 프로세스에 대한 올바른 문서가 추가되었습니다.
- BZ#957010
- 이번 업데이트 이전에는 strtoul Cryostat 매뉴얼 페이지에 "strtoul() 및 "strtoull()" 함수의 잘못된 반환 값이 포함되어 있습니다. 이번 업데이트에서는 strtoul Cryostat 매뉴얼 페이지가 수정되어 이제 올바른 정보가 포함되어 있습니다.
- BZ#960281
- 이전에는 clock_getres(2) 매뉴얼 페이지에 "CLOCK_MONOTONIC_COARSE" 및 "CLOCK_REALTIME_COARSE" clk_id 값이 포함되지 않았습니다. 이번 업데이트를 통해 앞서 언급한 값이 clock_getres(2) 매뉴얼 페이지에 추가되었습니다.
- BZ#974685
- 이전에는 sched_setaffinity(2) 매뉴얼 페이지에 잘못된 예제가 포함되어 있어 혼동이 발생할 수 있었습니다. 잘못된 예는 sched_setaffinity(2) 매뉴얼 페이지에서 삭제되었습니다.
- BZ#951826
- 이전에는 postconf 유틸리티의 도움말 페이지에 postfix 서버의 기본 구성에 대한 잘못된 정보가 포함되어 있었습니다. 이번 업데이트에서는 postconf(5) 매뉴얼 페이지의 기본 구성 설명이 수정되었습니다.
- BZ#979460
- mailx(1) 매뉴얼 페이지에는 "-S" 옵션으로 변수 설정에 대한 불완전한 항목이 포함되어 있습니다. 이번 업데이트에서는 "-S" 옵션으로 변수를 설정하는 방법을 더 잘 설명하고 "from="을 mailx(1) 도움말 페이지에 사용하는 구문 예제를 추가합니다.
- BZ#913191
- 이번 업데이트 이전에는 selinux(8) 매뉴얼 페이지에 오래된 정보가 포함되어 있었습니다. 이 도움말 페이지가 업데이트되어 SELinux가 올바르게 문서화됩니다.
- BZ#907837
- useradd(8) 도움말 페이지에는 "-u, --uid UID" 옵션에 대한 잘못된 설명이 포함되어 있어 혼동이 발생할 수 있습니다. 이 업데이트로 설명이 수정되었습니다.
- BZ#807323
- 이전에는 byzanz-record 유틸리티의 도움말 페이지에서 "webm" 출력 형식을 사용할 수 있는 가능성을 언급하지 않았으며 수동 페이지가 불완전했습니다. 이번 업데이트에서는 byzanz-record(1) 매뉴얼 페이지에 "webm"이 추가되었습니다.
- BZ#1020417
- ssh_config(5) 매뉴얼 페이지에는 "KexAlgorithms" 옵션에 대한 잘못된 기본값이 포함되어 있습니다. 이 버그는 수정되었으며 ssh_config(5) 매뉴얼 페이지에서 "KexAlgorithms"의 기본값이 올바르게 표시됩니다.
- BZ#1020432
- ssh-keygen 유틸리티의 "-n" 옵션은 "-Z"로 이름이 변경되었지만 ssh-keygen(1) 매뉴얼 페이지가 업데이트되지 않았습니다. 이 버그가 수정되었으며 ssh-keygen(1) 매뉴얼 페이지에서 이제 올바른 옵션을 설명합니다.
기능 개선
- BZ#928917
- 이전에는 "O_DIRECT" 플래그가 open(2) 매뉴얼 페이지에 설명되지 않았습니다. 이번 업데이트에서는 이 설명이 추가되어 문서가 완료되었습니다.
8.113. mcelog
버그 수정
- BZ#875824
- 이전에는 mcelog 패키지가 mclogd 서비스를 기본 모드로 실행하는 것과 충돌하는 mce 로그의 상태를 보고하는 cron 작업을 설치했습니다. 결과적으로 mcelog는 cron 작업과 경쟁했으며 완전한 데이터를 수집하지 않았습니다. 이번 업데이트를 통해 mcelogd가 실행 중인 경우 cron 작업이 설치되지 않으므로 이 버그를 수정합니다.
- BZ#919999
- mcelog 패키지의 버그로 인해 AMD Family 15 아키텍처는 지원되지 않았습니다. 버그가 수정되었으며 mcelog는 이제 AMD Family 15를 예상대로 지원합니다.
- BZ#996634
- 이전에는 mcelog 패키지에서 확장 로깅에 대한 지원이 기본적으로 활성화되어 있었습니다. 결과적으로 확장 로깅을 지원하지 않는 프로세서에서 mcelog 서비스는 다음 메시지와 함께 예기치 않게 종료되었습니다.mcelog: /dev/cpu/0/msr를 열어 imc_log: Permission denied를 설정할 수 없습니다이번 업데이트를 통해 mcelog 패키지에서 확장된 로깅이 기본적으로 비활성화되어 있으며 앞서 언급한 시나리오에서 mcelog 서비스가 더 이상 충돌하지 않습니다.
기능 개선
8.114. mdadm
버그 수정
- BZ#903212
- 이전에는 Intel Matrix Storage Manager(IMSM) RAID1 또는 RAID5 볼륨의 크기를 확장하는 동안 재동기화 프로세스가 /proc/mdstat 파일에 보고되었지만 볼륨의 메타데이터에 저장된 프로세스에 대한 정보는 없었습니다. 결과적으로 크기 확장 프로세스 중에 RAID 볼륨이 중지되면 이 진행 상황에 대한 모든 정보가 손실되고 다음 배열의 처음부터 재동기화가 다시 시작됩니다. 이 문제를 해결하기 위해 패치가 적용되었으며 이제 정보는 설명된 시나리오에서 예상대로 메타데이터에 저장됩니다.
- BZ#950545
- 이번 업데이트 이전에는 잘못된 드라이브에 수퍼 블록을 작성하려고 할 때 mdadm 유틸리티가 제대로 작동하지 않았습니다. 결과적으로 mdadm은 쓰기 오류가 발생하면 분할 오류로 인해 예기치 않게 종료될 수 있었습니다. 이 버그가 수정되었으며 이 시나리오에서는 mdadm이 더 이상 충돌하지 않습니다.
- BZ#955972
- 이전 버전에서는 ISM(Intel Matrix Storage Manager) RAID5 볼륨을 다시 빌드한 경우 OROM( OptionRoot)에서 mdadm 유틸리티가 제대로 작동하지 않았습니다. 결과적으로 운영 체제로 부팅된 후 RAID5 볼륨이 "degraded" 상태에 있었고 다시 빌드가 진행되지 않았습니다. 이 문제를 해결하기 위해 패치가 적용되었으며, 설명된 시나리오에서 IMSM RAID5 볼륨을 다시 빌드할 수 있습니다.
- BZ#956016
- 이전 버전에서는 Intel Matrix Storage Manager(IMSM) 볼륨이 재구성되면 프로세스를 중지하는 데 사용되는 "mdadm -Ss" 명령이 제대로 작동하지 않았습니다. 그 결과 "mdadm -Ss"의 첫 번째 실행에서는 볼륨만 중지되었지만 컨테이너가 남아 있고 두 번째 명령을 실행해야 했습니다. 이 버그가 수정되어 이제 볼륨 리셰이프 중에 명령이 예상대로 작동합니다.
- BZ#995105
- 이전에는 Intel Matrix Storage Manager(IMSM) RAID10 볼륨이 다시 동기화되거나 다시 빌드되면 50% 완료 후 프로세스가 제대로 작동하지 않았습니다. 그 결과 프로세스가 다시 조합된 후 올바르게 진행되지 않았으며 데이터가 손상되었습니다. 이번 업데이트를 통해 이 시나리오에서 다시 동기화하고 다시 빌드 작업을 올바르게 다시 작성합니다.
- BZ#1001627
- 이번 업데이트 이전에는 IMSM(Intel Matrix Storage Manager) RAID1 또는 RAID10 볼륨이 다시 빌드되고 이 프로세스가 중지되면 다시 빌드 작업을 다시 시작하려고 시도하지 않았습니다. 그 결과 컨테이너에 새 드라이브가 추가된 경우에도 재빌드가 시작되지 않았으며 메타데이터에 잘못된 정보가 포함되었습니다. 이 버그가 수정되어 이제 다시 빌드가 다시 시작되면 설명된 시나리오에서 제대로 작동합니다.
- BZ#1010859
- 이전에는 Intel Matrix Storage Manager(IMSM) RAID 볼륨에서 디스크가 실패한 경우 mdadm 유틸리티가 제대로 작동하지 않았습니다. 그 결과 실패한 디스크는 볼륨이나 컨테이너에서 제거되지 않았으며, 볼륨이 "degraded" 상태가 아니며 재빌드를 시작할 수 없었습니다. 이번 업데이트를 통해 mdadm은 RAID 볼륨에서 실패한 디스크를 올바르게 처리합니다.
8.115. Mesa
버그 수정
- BZ#879637
- 특정 Intel GT2 이상 프로세서에서 Piglit 빠른 드라이버 테스트를 실행한 후 dmesg 명령의 출력에 분할 오류가 보고될 수 있었습니다. 버그를 해결하기 위해 패치가 적용되었으며 원하지 않는 동작이 더 이상 발생하지 않습니다.
- BZ#908547
- 이번 업데이트 이전에는 압축된 이미지 크기 검사가 잘못된 방식으로 수행되었습니다. 결과적으로 압축 블록 크기에 대해 이미지 크기를 확인하면 특정 애플리케이션이 예기치 않게 종료될 수 있었습니다. 기본 소스 코드가 수정되어 더 이상 가상 시스템 오류로 인해 설명된 시나리오에서 애플리케이션이 충돌하지 않습니다.
기능 개선
8.116. microcode_ctl
버그 수정
- BZ#1000317
- 이전에는 microcode_ctl 유틸리티에서 가상 머신에서 실행 중인지 감지하지 못하고 CPU 마이크로 코드 업데이트를 설치하려고 했습니다. 이 동작으로 인해 커널 링 버퍼에 여러 오류가 반환되었습니다. 기본 소스 코드가 수정되었으며 microcode_ctl이 더 이상 설명된 시나리오에서 CPU 마이크로 코드를 업데이트하지 않습니다.
8.117. mobile-broadband-provider-info
버그 수정
- BZ#844288
- 이전에는 /usr/share/ mobile-broadband-provider-info/ 디렉터리에 있는 serviceproviders.xml 파일에서 "internet.saunalahti"가 Sonera 공급자의 APN(Access Point Name) 값으로 잘못 지정되었습니다. 이로 인해 Sonera 모바일 네트워킹 구성이 작동하지 않았습니다. Sonera의 APN 값으로 "internet.saunalahti"를 포함하는 스탠자는 XML 파일에서 제거되었으며 Sonera 모바일 정보 설정이 예상대로 작동합니다.
8.118. mod_auth_kerb
버그 수정
- BZ#867153
- 이전 버전에서는 KrbLocalUserMapping 지시문이 활성화되면 로컬 이름이 더 긴 경우 mod_auth_kerb에서 주체 이름을 올바르게 변환하지 않았습니다. 결과적으로 Apache 서버는 이러한 시나리오에서 HTTP 500 오류를 반환했습니다. 이 문제를 해결하기 위해 패치가 제공되어 모듈이 해당 주체 이름보다 긴 계정 이름을 올바르게 변환합니다.
8.119. ModemManager
버그 수정
- BZ#883079
- 이전에는 /lib/udev/rules.d/77-mm-*.rules 파일의 "udev" 규칙에 의해 일부 기록 장치가 적용되지 않았습니다. 그 결과, connectivity connection은 전혀 설정되지 않았거나 몇 가지 패키지를 통신한 후 실패했습니다. ModemManager가 올바른 직렬 포트를 사용하도록 추가 "udev" 규칙이 포함되었습니다. 그 결과, ZTE, LG 및 Cryostat와 같은 더 많은 네트워킹 장치가 이제 지원됩니다.
8.120. mysql
8.120.1. RHBA-2013:1647 - mysql 버그 수정 업데이트
버그 수정
- BZ#842052
- 이번 업데이트 이전에는 null이 불가능한 GEOMETRY 유형에 액세스할 때 mysqld 데몬이 초기화되지 않은 메모리로 작동했습니다. Cosequenutly, mysqld는 mysqldump 유틸리티가 실행 중일 때 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 mysqld는 메모리를 올바르게 초기화하므로 이 시나리오에서 더 이상 충돌하지 않습니다.
- BZ#877557
- 이전에는 mysqldump 유틸리티에서 MySQL 5.0.x 서버에 로그 테이블이 생성되어 데이터를 검색했습니다. 결과적으로 mysqldump에서 MySQL 시스템 테이블을 덤프할 수 없었습니다. 이번 업데이트를 통해 mysqldump는 더 이상 로그 테이블을 생성할 것으로 예상하지 않으며, 이제 설명된 시나리오에서 시스템 테이블을 예상대로 덤프할 수 있습니다.
- BZ#884651
- 이번 업데이트 이전에는 mysqld init 스크립트에서 mysqld 데몬의 상태를 올바르게 확인하지 않았습니다. 결과적으로 데몬이 성공적으로 시작된 경우에도 스크립트에서 오류 메시지를 반환할 수 있었습니다. mysqld init 스크립트가 수정되었으며 이제 데몬 상태를 올바르게 확인합니다.
- BZ#904061
- 이전에는 mysql-server 하위 패키지에 logrotate 스크립트가 포함되지 않았습니다. 결과적으로 로그 교체를 수동으로 구성해야 했습니다. 이번 업데이트를 통해 mysql-server 하위 패키지에서 logrotate 스크립트가 제공되었으며 사용자는 스크립트의 적절한 줄의 주석을 제거하여 스크립트를 사용하여 mysqld.log 파일에 로그인할 수 있습니다.
8.121. net-snmp
버그 수정
- BZ#893119
- 이전에는 snmpd인 snmpd에서 UCD-SNMP-MIB::extTable 테이블에 대한 데이터를 채울 때 오류를 확인하지 않았으며 시스템이 메모리 부족을 실행할 때 메모리를 유출할 수 있었습니다. 이 버그는 수정되어 메모리 부족 상태를 확인하고 오류가 발생하면 UCD-SNMP-MIB::extTable 테이블에 대한 메모리를 확보합니다.
- BZ#907571
- 이전에는 snmp_config(5) 매뉴얼 페이지가 어떤 파일을 찾고 있는지 명확하지 않았으며, 리더는 접미사 "conf" 또는 "local.conf"가 snmp 구성 파일로 사용될 수 있다는 잘못된 노출을 가져올 수 있었습니다. 이번 업데이트에서는 snmp_config(5) 매뉴얼 페이지가 snmp 구성 파일로 사용되는 파일을 정확하게 지정하도록 수정되었습니다.
- BZ#919259
- 이전 업데이트에서는 UCD-SNMP-MIB::extCommand OID 문자열의 실행 이름 및 모든 명령줄 인수를 표시하도록 snmpd 데몬이 수정되었습니다. 수정에서는 명령줄 인수 없이 실행 파일을 확인하지 않았습니다. 그 결과 snmpd 데몬은 인수 없이 실행 파일의 UCD-SNMP-MIB::extCommand OID 값을 검색할 때 세그먼트 오류와 함께 충돌하지 않게 종료되었습니다. 이번 업데이트를 통해 snmpd는 이제 인수가 없는지 확인하고 UCD-SNMP-MIB::extCommand OID의 올바른 값을 표시합니다. 결과적으로 설명된 시나리오에서는 충돌이 더 이상 발생하지 않습니다.
- BZ#919952
- 이전 net-snmp 패키지 업데이트에서 HOST-RESOURCES-MIB::hrSWRunTable 테이블이 다시 작성되었으며 회귀 문제로 인해 커널 스레드의 "hrSWRunPath" 문자열을 보고하지 않았습니다. 이번 업데이트에서는 커널 스레드의 HOST-RESOURCES-MIB::hrSWRunPath 문자열이 수정되어 snmpd 데몬에 의해 보고됩니다.
- BZ#922691
- /etc/snmp/snmpd.conf 파일에 "includeAllDisks" 구성 옵션이 지정되면 snmpd 데몬은 시작 시에만 실행 중인 시스템을 스캔하고 새 장치가 나중에 마운트된 경우 UCD-SNMP-MIB:: CryostatTable 테이블을 업데이트하지 않았습니다. 결과적으로 장치가 자주 마운트 및 마운트 해제되는 동적 시스템에서 UCD-SNMP-MIB:: CryostatTable을 사용하여 시스템 시작 시 사용 가능한 장치만 모니터링하므로 스토리지 사용량을 모니터링할 수 없었습니다. 이 버그를 해결하기 위해 UCD-SNMP-MIB:: CryostatTable의 구현이 새로운 장치가 마운트될 때 동적으로 추가되도록 개선되었습니다. 이는 /etc/snmp/snmpd.conf에서 "includeAddDisks" 구성 옵션을 사용하는 경우에만 발생합니다. 결과적으로 장치가 자주 마운트 및 마운트 해제되는 동적 시스템에서는 UCD-SNMP-MIB:: CryostatTable에 항상 마운트된 장치 목록이 표시됩니다.
- BZ#927474
- 이전에는 SNMP 데몬인 snmpd가 netlink 소켓을 사용하여 Linux 커널과 통신할 때 적절한 메시지 크기를 설정하지 않았습니다. 그 결과 "netlink: 12 bytes leftover after parsing attributes"라는 메시지가 커널 로그에 저장되었습니다. 이번 업데이트를 통해 snmpd는 올바른 메시지 크기를 설정하고 커널은 더 이상 앞서 언급한 메시지를 기록하지 않습니다.
- BZ#947973
- 이전 Net-SNMP 릴리스에서는 인터페이스가 10, 100, 1000 또는 2500MB/s 이외의 속도가 있는 경우 snmpd는 IF-MIB::ifXTable 및 IF-MIB::ifXTable 테이블에서 잘못된 네트워크 인터페이스 속도를 보고했습니다. 따라서 반환된 net-snmp ifHighSpeed 값은 ethtool에서 보고된 대로 올바른 속도(예: 0.9 Gb/s)로 설정된 경우 "0"이었습니다. 이번 업데이트를 통해 ifHighSpeed 값은 ethtool 유틸리티에 보고된 대로 올바른 속도를 반환하고 snmpd는 비표준 네트워크 인터페이스 속도를 올바르게 보고합니다.
- BZ#953926
- net-SNMP에서 들어오는 SNMP 메시지가 올바르게 인코딩되었는지 확인하지 않았습니다. 경우에 따라 메시지에 기록된 정수의 크기가 유효하지 않은 메시지를 구문 분석할 때 수신 버퍼 크기를 초과합니다. 이로 인해 SNMP 트랩 처리 데몬인 snmptrapd가 들어오는 잘못된 메시지에서 세그먼트 결함이 예기치 않게 종료되었습니다. 이번 업데이트에서는 수신되는 메시지 검사를 개선하고 잘못된 정수 크기로 들어오는 메시지를 구문 분석할 때 snmptrapd가 더 이상 충돌하지 않습니다.
- BZ#955771
- 이전에는 Net-SNMP python 모듈에서 이 모듈을 사용하는 애플리케이션에 다양한 오류를 전파하지 않았습니다. 그 결과 애플리케이션이 SNMP 통신 중에 발생한 erros를 인식하지 못했습니다. 이 버그를 해결하기 위해 적절한 오류 코드를 반환하도록 Net-SNMP python 모듈이 업데이트되었습니다. 결과적으로 애플리케이션은 이제 SNMP 오류에 대한 정보를 수신합니다.
- BZ#960568
- 이전 릴리스에서는 snmp-bridge-mib 하위 에이전트에서 BRIDGE-MIB::dot1dBasePortTable 테이블에 있는 브리지의 포트로 브리지 자체를 포함했습니다. 이 버그가 수정되었으며 snmp-bridge-mib 하위 에이전트는 이제 BRIDGE-MIB::dot1dBasePortTable 테이블의 포트로만 실제 인터페이스만 보고합니다.
- BZ#968898
- 이전에는 "agentaddress" 구성 옵션을 처리할 때 snmpd 데몬이 문자열을 올바르게 종료하지 않았습니다. 그 결과 SIGHUP 신호를 사용하여 구성을 여러 번 다시 읽을 때 버퍼 오버플로가 발생했습니다. 이 버그가 수정되어 이제 "agentaddress" 처리 중에 문자열이 올바르게 종료되고 SIGHUP 신호를 사용하여 더 이상 충돌하지 않습니다.
- BZ#983116
- 이전 Net-SNMP 업데이트에는 잘못된 수신 SNMP 메시지의 검사를 개선하기 위한 수정 사항이 포함되어 있었습니다. 이번 수정을 통해 회귀 문제가 발생했으며 내부에 여러 변수가 있는 일부 유효한 SNMP 메시지가 유효하지 않은 것으로 표시되었습니다. 그 결과 Net-SNMP 툴과 서버는 유효한 SNMP 메시지를 거부했으며 시간 초과까지 "충분한" 응답을 대기했습니다. 이번 업데이트를 통해 유효한 SNMP 메시지가 더 이상 거부되지 않습니다. 결과적으로 서버와 유틸리티는 첫 번째 들어오는 메시지를 수락하고 시간 초과를 기다리지 않습니다.
- BZ#989498, BZ#1006706
- 이전 Net-SNMP 업데이트에서 HOST-RESOURCES-MIB::hrStorageTable 테이블의 구현은 다시 작성되었으며 VZFS(VZFS) 및 BTRFS(Btree File System)를 사용하여 장치를 다시 작성하지 않았습니다. 이번 업데이트 후 snmpd는 VZFS 및 BTRFS 파일 시스템을 사용하여 장치를 올바르게 인식하고 HOST-RESOURCES-MIB::hrStorageTable에 보고합니다.
- BZ#991213
- 이전에는 snmpd 데몬이 활성화된 큐 그룹을 사용하여 Sendmail 구성 파일을 잘못 구문 분석했습니다. 결과적으로 snmpd는 시작 시 루프를 입력했습니다. 이번 업데이트에서는 큐 그룹과 snmpd를 사용하여 구성 파일의 구문 분석이 더 이상 시작 시 루프에 입력되지 않습니다.
- BZ#1001830
- 이전에는 Net-SNMP 유틸리티 및 데몬에서 MD5 해시 알고리즘 및 DES 암호화를 시스템의 OpenSSL 라이브러리에서 사용할 수 있을 것으로 예상했으며 이러한 암호화 기능을 사용할 때 오류를 확인하지 않았습니다. 결과적으로 시스템이 FIPS 모드에서 실행 중일 때 사용할 수 없는 MD5 또는 DES 알고리즘을 사용하려는 경우 Net-SNMP 유틸리티 및 데몬이 예기치 않게 종료되었습니다. Net-SNMP 유틸리티 및 데몬은 암호화 기능 오류 코드를 확인하고 다음 오류 메시지를 표시합니다.
Error: could not generate the authentication key from the supplied pass phrase
결과적으로 앞서 언급한 유틸리티 및 데몬이 더 이상 FIPS 모드에서 충돌하지 않습니다.
기능 개선
8.122. NetCF
8.122.1. RHBA-2013:1660 - netcf 버그 수정 업데이트
버그 수정
- BZ#844578
- "virsh iface-start" 또는 "ncftool ifup" 명령을 사용하여 DHCP 서버를 사용하도록 구성된 연결이 끊긴 인터페이스를 시작할 때 netcf 라이브러리에서 오류를 보고했습니다. 그러나 모든 인터페이스의 후속 목록에는 인터페이스가 "active"로 표시되었습니다. 이번 업데이트 후 netcf는 인터페이스가 "ifconfig" 유틸리티에 의해 "UP" 및 "RUNNING"을 모두 표시하고 인터페이스를 성공적으로 시작하려고 하는 경우에만 "활성" 인터페이스 상태를 보고합니다.
- BZ#848722
- 이전에는 24비트 이상의 넷마스크가 있는 인터페이스를 정의하려고 했습니다. 이 버그가 수정되어 이제 넷마스크가 최대 30비트인 인터페이스를 정의할 수 있습니다.
8.123. NetworkManager
버그 수정
- BZ#922558
- 이전에는
NetworkManager
에서 DHCP (Dynamic Host Configuration Protocol) 서버에서 정적 경로를 명시적으로 요청하지 않았으므로 일부 서버는 이러한 경로를 제공하지 않았습니다. 이번 업데이트를 통해NetworkManager
는 이제 사용 가능한 경우 DHCP 서버에서 정적 경로를 요청합니다. - BZ#701381
- 이전에는 일부 사용자가 필드가 응답하지 않아
NetworkManager
에서Enable
wireless box를 선택할 수 없었습니다. 또한 하드웨어가 비활성화된 후NetworkManager
에서Enable
wireless 연결 옵션을 사용할 수 없어 다시 활성화되었습니다. 이번 업데이트를 통해 사용자는 하드웨어를 재활성화한 후 GUI 에서 무선 연결을 켤 수 있습니다. - BZ#1008884
- 일부 VM(가상 머신) 구성에서
NetworkManager
metat를 실행하는 경우 아이콘을 마우스 왼쪽 버튼으로 클릭하면 Apple이 예기치 않게 종료될 수 있습니다. 이 버그는 수정되었으며 이러한 구성에서 Applet가 더 이상 충돌하지 않습니다. - BZ#923648
- 이전에는
NetworkManager
연결 편집기(nm-connection-editor
)를 통해 생성된 브리지 및 본딩 연결이 자동으로 연결되도록 설정되지 않았으므로 수동으로 시작해야 했습니다. 이번 업데이트를 통해 이러한 연결은 기본적으로 생성될 때 자동으로 시작됩니다. - BZ#896198
/etc/sysconfig/network
파일의GATEWAY
설정으로NetworkManager
가GATEWAY
를 고정 IP 주소가 있는 모든 인터페이스에 할당했습니다. 이 시나리오는 이러한 주소에 대해GATEWAY
또는 다른 항목이 지정되지 않은 경우에도 발생했습니다. 이 버그를 해결하기 위해/etc/sysconfig/network
에GATEWAY
가 제공되면 게이트웨이 주소가 일치하는 구성만 기본 경로가 제공됩니다. 또는 개별 구성 파일에서DEFROUTE=yes/no
옵션을 사용하여 구성별로 기본 경로를 허용하거나 거부할 수 있습니다.- BZ#836993
- 이전에는
NetworkManager
를 통해 토큰 동기화가 해제된vpnc
프로그램을 사용할 때 서버에 다음 토큰을 입력하라는 메시지가 표시되었습니다. 그러나NetworkManager
는 이 응답을 잘못 해석하고 실패한 연결을 보고했습니다. 이번 업데이트를 통해NetworkManager-vpnc
유틸리티에 다음 토큰 코드에 대한 새 프롬프트가 추가되어 버그를 수정합니다. - BZ#991341
- 이번 업데이트 이전에는 IPv6 라우터 알림을 수신할 때
NetworkManager
가 커널이 추가한 IPv6 기본 경로를 교체하려고 했습니다. 결과적으로 커널에서 다음 실패 메시지를 반환했습니다.'ICMPv6 RA: ndisc_router_discovery() failed to add default route.'
이 버그를 해결하기 위해NetworkManager
는 더 이상 커널에 의해 추가된 IPv6 기본 경로를 대체하지 않습니다. - BZ#758076
- 이전에는
nm-connection-editor
에서 "Choose certificate" 대화 상자 창을 통해 CA(인증 기관) 인증서를 선택할 수 없었습니다. 이는 사용자에게 혼란스러웠습니다. 대화 상자 확인란 정보가 더 유용한 텍스트로 교체되어 버그를 수정합니다. - BZ#919242
- 이전 버전에서는
NetworkManager
가/etc/sysconfig/network
_ENABLED 옵션에서 누락된NM_BOND_BRIDGE_ VLAN _ENABLED
옵션으로 인해 브리지, 본딩 또는 VLAN 인터페이스를 관리할 수 없는 경우NetworkManager
연결 편집기(nm-connection-editor
)에서 여전히 사용자가 이러한 유형의 네트워크 연결을 생성할 수 있었습니다. 이제 편집기에서 사용할 수 없는 연결이 생성되면 사용자에게 경고하므로 버그를 수정합니다. - BZ#915480
- 이전에는
NetworkManager
GUI lets(nm-applet)에 브리지, 본딩 또는 VLAN 인터페이스가 표시되지 않았습니다. 이번 업데이트를 통해nm-applet
이 구성되었지만 아직 생성되지 않은 모든 사용 가능한 본딩, 브리지 및 VLAN 인터페이스를 표시하도록 개선되었습니다. - BZ#905532
- 본딩 인터페이스에 대해 무시된 몇 가지 옵션으로 인해 설치 중에 /sys/class/net/bond0/bonding/primary 파일이 비어 있었습니다. 또한 네트워크 트래픽은 설치 중에 eth0을 통과했습니다. 이 버그가 수정되었으며
NetworkManager
는 훨씬 더 큰 본딩 인터페이스 옵션을 지원합니다. - BZ#953076
- 이전에는
NetworkManager
가 본딩 마스터 인터페이스의 모드를 설정할 수 없는 경우도 있었습니다. 이 버그를 수정하기 위해 패치가 제공되었으며 이제nm-editor
변경에 따라 모드 설정이 변경됩니다. - BZ#953123
- 이전에는
NetworkManager
연결 편집기(nm-connection-editor
)에서 VLAN 인터페이스에 복제된 MAC 주소를 설정할 수 없었습니다. 이 버그를 수정하기 위해 패치가 제공되었으며nm-connection-editor
가 이제 예상대로 작동합니다. - BZ#969363
- 이번 업데이트 이전에는
nm-online
의 도움말 페이지에서는-t
옵션과 같은nm-online
매개변수의 올바른 사용법을 설명하지 않았습니다. 도움말 페이지가 해당 매개변수의 사용법을 올바르게 설명하도록 업데이트되었습니다. - BZ#973245
- 이전에는
NetworkManager
가 표준ifcfg
네트워크 구성 파일과 호환되는 연결 유형만 작성하고 저장했습니다. 이 버그가 수정되었으며 Bluetooth, Cryostat와 같은 기타 연결 유형을 이제/etc/NetworkManager/system-connections/
디렉터리에 키 파일로 저장할 수 있습니다. - BZ#902372
- 이전에는 기존 브릿지를 제어할 때
NetworkManager
에서 명확한 브리지 상태를 확인하지 않았습니다. 이번 업데이트를 통해NetworkManager
는 브리지 옵션을 재설정하고 모든 브리지 포트를 제거하여 브리징 지원이 활성화된 상태에서 새로 브리지 상태를 시작합니다. - BZ#867273
- IB(InfiniBand) 장치가 있는 머신에서 IP-over-InfiniBand(IPoIB) 프로필을 구성한 후 프로필이 연결되지 않았습니다. 이 버그는 수정되었으며 IPoIB(IP-over-Infiniband) 네트워크 구성이 네트워크 Applet 메뉴에 나열됩니다.
- BZ#713975
- 새 무선 네트워크 연결에 대한 구성의 인증 또는 내부 인증 드롭다운 메뉴를 변경한 후 "사용할 때마다 이 암호에 대한크" 확인란이 재설정되었습니다. 이 버그를 해결하기 위해 업데이트된
NetworkManager
GUI kindt는 Cryostat Enterprise 네트워크에 연결할 때 확인란의 값을 저장합니다. - BZ#906133
- 이번 업데이트 이전에는 커널 제한으로 인해 BSSID (Basic Service Set Identifier)가 지정되면 Ad-Hoc everyone 네트워크가 시작되지 않았습니다. 이 버그를 해결하기 위해
NetworkManager
연결 편집기(nm-connection-editor
)는 커널에서 자동으로 선택되므로 ad-Hoc everyone 연결에 대한 BSSID 를 설정하지 않습니다.
기능 개선
- BZ#602265
- 이번 업데이트를 통해
NetworkManager
는PPPoE(Point-to-point Protocol over Ethernet) 기반 연결을 생성 및 관리할 수 있도록 개선되었습니다.NetworkManager
는 이제 피어가 준비되었는지 확인하기 위해 PPPoE 연결을 다시 연결하기 전에 짧은 시간을 기다립니다. - BZ#694789
- 새
GATEWAY_PING_TIMEOUT
구성 옵션이 추가되었습니다. 이 새 옵션을 사용하면NetworkManager
에서 네트워크 연결을 표시하기 전에게이트웨이
ping이 성공할 때까지 기다립니다. - BZ#990310
NetworkManager
는 이제ifcfg
별칭 파일을 읽고 별칭 이름을 address 레이블로 사용하여 해당 파일의 주소를 마스터 인터페이스에 할당합니다.- BZ#564467, BZ#564465
nm-connection-editor
및nm-applet
유틸리티에 대한 수동 페이지가 생성되었습니다.
8.124. nfs-utils
버그 수정
- BZ#889272
- nfsmount.conf 구성 파일의 여러 섹션에 "Backhostname", "Fore place" 또는 "timeo" 옵션이 설정된 경우 결과 구문 분석된 값에 각 옵션이 잘못 표시되었습니다. 이번 업데이트에서는 두 옵션의 첫 번째 인스턴스가 이전 동작을 재정의하도록 이 동작을 변경합니다.또한 구성 파일 옵션이 수행 중인 옵션과 관련이 없는 섹션에서 마운트 syscall으로 잘못 전달되었을 수 있었습니다. 구문 분석기가 각 옵션이 최대 4번(시스템 섹션의 경우 한 번, 서버별 섹션의 경우 한 번, 마운트별 섹션의 경우 한 번, 명령줄 마운트 옵션에 대해 한 번) 표시되도록 보다 엄격하게 수행되었습니다.
- BZ#890146
- 이번 업데이트 이전에는 "nfsstat -s -o rpc" 명령을 실행하면 테이블 헤더에 잘못된 레이블이 있는 출력이 생성되었습니다. 이번 업데이트를 통해 기본 소스 코드가 이제 모든 열에 올바른 이름을 갖도록 조정되었습니다.
- BZ#892235
- nfs 서비스를 시작하면 다음 출력이 생성되었습니다.
Stopping RPC idmapd: [ OK ] Starting RPC idmapd: [ OK ]
이전에 RPC idmapd 서비스를 중지한 다음 시작해야 하는 이벤트 시퀀스가 이전에 필요했지만 현재 init 스크립트에는 이 동작이 필요하지 않습니다. 이제 nfs 서비스를 시작하면 단일 " RPC idmapd" 상태 표시가 간단하게 표시됩니다. - BZ#950324
- sm-notify를 실행하는 경우 nfs-utils 패키지가 IPv6에 대한 지원이 포함된 첫 번째 버전인 버전 1.2.2로 업데이트된 후 "-v <ip_address>" 또는 "-v <hostname>" 옵션을 올바르게 지정하지 않았습니다. 이번 업데이트에서는 '-v' 옵션을 사용하여 호스트 이름, IPv4 또는 IPv6 IP 주소를 지정하는 것이 예상대로 작동하도록 주소 처리 논리가 수정되었습니다.
- BZ#952560
- nfs(5) 도움말 페이지에는 "retrans=n" 옵션에 대한 잘못된 정보가 포함되어 있으며, 이 정보는 NFS 클라이언트가 추가 복구 작업을 시도하기 전에 요청을 재시도하는 횟수를 지정합니다. 이 정보는 수정되었으며 이제 프로토콜 유형별 시도 횟수를 지정합니다. "retrans=n" 옵션에 대한 도움말 페이지 수정 옵션은 다음과 같습니다.NFS 클라이언트가 추가 복구 작업을 시도하기 전에 요청을 재시도하는 횟수입니다. 재전송 옵션을 지정하지 않으면 NFS 클라이언트는 TCP를 사용하는 마운트와 함께 UDP 및 두 번 마운트를 사용하여 각 요청을 세 번 시도합니다.
8.125. nmap
8.125.1. RHBA-2013:0881 - nmap 버그 수정 업데이트
버그 수정
8.126. nspr 및 nspr
버그 수정
- BZ#702083
- PEM 모듈은 인증서가 파생된 고유한 기본 파일 이름을 사용하도록 클라이언트 애플리케이션에 대한 제한을 적용했습니다. 결과적으로 동일한 기본 이름으로 클라이언트 애플리케이션 인증 및 키는 중복으로 잘못 간주되었기 때문에 다른 파일 경로를 로드하지 못했습니다. 비교 알고리즘이 수정되었으며 PEM 모듈이 이제 사용자가 파일의 이름을 지정하는 방법에 관계없이 고유성을 올바르게 결정합니다.
- BZ#882408
- 업스트림 버전의 nss 패키지의 차이로 인해 지원되지 않는
SSL PKCS#11 바이패스
기능을 활성화하려는 시도가 치명적인 오류 메시지와 함께 실패했습니다. 이 동작은 특정 호출의 의미 체계를 중단하여ABI(Application Binary Interface) 호환성을 중단할 수 있습니다. 이번 업데이트를 통해 업스트림 동작을 유지하도록 nss 패키지가 수정되었습니다. 결과적으로SSL PKCS#11 바이패스
를 활성화하려고 하면 더 이상 실패하지 않습니다. - BZ#903017
- 이전에는 스마트 카드와 관련된 인증 코드에 경쟁 조건이 있었습니다. 결과적으로CAC(Common Access Card) 또는PIV(Personal Identity Verification) 스마트 카드 인증서가 Firefox 인증서 관리자에서 확인되면 Firefox 웹 브라우저가 응답하지 않습니다. 기본 소스 코드는 경쟁 조건을 수정하도록 수정되었으며 Firefox 는 더 이상 설명된 시나리오에서 중단되지 않습니다.
- BZ#905013
- 스레드 동기화를 담당하는NSPR(Netscape Portable Runtime) 코드의 오류로 인해 메모리 손상이 발생하는 경우가 있었습니다. 그 결과 웹 서버 데몬(
httpd
)이 NSPR 라이브러리에 대해 1023개 이상의 호출을 수행한 후 세그먼트 오류로 예기치 않게 종료되는 경우가 있었습니다. 이번 업데이트를 통해 NSPR이 이전에 할당된 메모리를 해제하는 방식에 대한 개선 사항 및 설명 된 시나리오에서httpd
가 더 이상 충돌하지 않습니다. - BZ#918136
- 3.14 업스트림 버전의 nss 패키지에서 디지털 서명에서 MD5 해시 알고리즘을 사용한 인증서 서명 지원이 기본적으로 비활성화되어 있습니다. 그러나 특정 웹 사이트는 여전히 MD5 기반 서명을 사용하므로 이러한 웹 사이트에 액세스하려는 시도가 오류와 함께 실패했습니다. 이번 업데이트를 통해 디지털 서명의 MD5 해시 알고리즘은 사용자가 예상대로 이 알고리즘을 사용하여 웹 사이트에 연결할 수 있도록 다시 지원됩니다.
- BZ#976572
- 이번 업데이트를 통해 Galois/Counter Mode( Cryostat ) 구현에 대한 수정 사항이 업스트림 버전 3.14.1 이후 nss 패키지로 백포트되었습니다. 결과적으로 사용자는 업스트림 버전에서 이미 문서화 및 수정된 문제 없이 Cryostat를 사용할 수 있습니다.
- BZ#977341
- 이전에는
certutil
유틸리티에서 사용하는 옵션과 인수 목록인 certutil -H 명령의 출력에서-F
옵션을 설명하지 않았습니다. 이 정보가 추가되어 옵션이 certutil -H 의 출력에 올바르게 설명되어 있습니다. - BZ#988083
- 이전에는
pkcs11n.h
헤더에TLS(Transport Layer Security) 1.2 프로토콜을 지원하기 위한 특정 상수가 누락되었습니다. 상수가 nss-util 패키지에 추가되어 NSS는 이제 TLS 1.2를 예상대로 지원합니다. - BZ#990631
- 이전에는 파일 소유자만 읽고 쓸 수 있도록NSS(Network Security Service)에서
pkcs11.txt
파일에 대한 권한 권한을 되돌리었습니다. 이 동작은 사용자가 지정한 다른 권한을 덮어씁니다. 결과적으로 시스템 전체 보안 데이터베이스를 사용하여 자체 구성에 보안 모듈을 추가할 수 없었습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 제공합니다. 결과적으로 NSS 는pkcs11.txt
에 대한 기존 권한을 유지하며 사용자는 NSS 보안 모듈 데이터베이스를 수정할 수 있습니다. - BZ#1008534
- NSS(Network Security Services)의 버그로 인해 IPA (ID, 정책, 감사) 서버가 예기치 않게 종료되고 오류가 반환되었습니다. 이 버그는 이 업데이트로 수정되었으며 IPA 서버의 설치는 이제 예상대로 진행됩니다.
- BZ#1010224
- NSS
softoken
암호화 모듈에서 자체 테스트를 실행하기 전에freebl
라이브러리가 올바르게 초기화되었는지 확인하지 않았습니다. 결과적으로LDAP(Lightweight Directory Access Protocol) 클라이언트와 같은 특정 클라이언트는 NSS를 초기화하고 종료할 수 있었습니다. 이러한 경우freebl
은 정리되고 언로드되었습니다. 라이브러리가 다시 로드되면 테스트를 실행하려고 하면 예기치 않게 종료되어TLS(Transport Layer Security) 연결 오류와 같은 클라이언트 오류가 발생했습니다. 이 버그가 수정되었으며softoken
은 자체 테스트를 실행하기 전에freebl
을 올바르게 초기화합니다. 결과적으로 설명된 시나리오에서는 더 이상 오류가 발생하지 않습니다.
기능 개선
8.127. ntp
버그 수정
- BZ#673198
- ntpdate 서비스는 인터넷에서 날짜 및 시간 업데이트를 받기 전에 NetworkManager 서비스가 네트워크를 구성할 때까지 기다리지 않았습니다. 그 결과, ntpdate는 네트워크가 구성되지 않은 경우 시스템 시계를 설정하지 못했습니다. 이번 업데이트를 통해 ntpdate는 초기 시도가 실패하면 여러 간격으로 인터넷에서 업데이트를 가져옵니다. NetworkManager가 네트워크를 구성하는 데 시간이 오래 걸리는 경우에도 시스템 시계가 설정됩니다.
- BZ#749530
- ntp-keygen 유틸리티는 항상 DES-CBC(Data Encryption Standard-Cipher Block Chaining) 암호화 알고리즘을 사용하여 개인 NTP 키를 암호화했습니다. 그러나 DES-CBC는 FIPS 모드에서 지원되지 않습니다. 따라서 ntp-keygen은 FIPS 모드가 활성화된 시스템에서 사용할 때 빈 개인 키를 생성했습니다. 이 문제를 해결하기 위해 개인 키 파일에 암호화 알고리즘을 선택할 수 있는 ntp-keygen에 새로운 "-C" 옵션이 추가되었습니다. 이제 FIPS 모드가 활성화된 시스템에서 개인 NTP 키가 예상대로 생성됩니다.
- BZ#830821
- ntpstat 유틸리티에서 "time correct to within" 값에 루트 지연을 포함하지 않아 ntpstat에서 보고하는 값보다 실제 최대 오류가 클 수 있었습니다. ntpstat 유틸리티는 이제 루트 지연을 예상대로 포함하도록 수정되었으며 유틸리티에서 표시하는 "시간 정확" 값이 이제 올바르게 되었습니다.
- BZ#862983
- DHCP에서 제공하는 NTP 서버(dhclient-script 사용)를 ntp.conf 파일에 추가할 때 ntp 스크립트에서 이러한 서버가 이미 포함되어 있는지 확인하지 않았습니다. 이로 인해 구성 파일에 NTP 서버 항목이 중복될 수 있습니다. 이번 업데이트에서는 ntp.conf 파일에서 중복 NTP 서버 항목이 더 이상 발생하지 않도록 ntp 스크립트를 수정합니다.
- BZ#973807
- ntpd를 브로드캐스트 클라이언트로 구성하면 네트워크 구성 변경 시 브로드캐스트 소켓을 업데이트하지 않았습니다. 결과적으로 네트워크 서비스가 다시 시작된 후 브로드캐스트 클라이언트가 작동을 중지했습니다. 이번 업데이트에서는 네트워크 인터페이스 업데이트 후 ntpd를 수정하여 네트워크 서비스가 예상대로 다시 시작된 후 클라이언트가 계속 작동하도록 합니다.
기능 개선
- BZ#623616, BZ#667524
- NTP는 이제 기본 ntp.conf 파일에서 iburst 구성 옵션을 사용하여 4개의 오프사이트 NTP 서버를 지정하므로 초기 시간 동기화가 빨라 NTP 서비스의 안정성이 향상됩니다.
- BZ#641800
- SHA1 symetric 키를 사용한 인증에 대한 지원이 NTP에 추가되었습니다. SHA1 키는 ntp-keygen 유틸리티로 생성하고 클라이언트 및 서버 시스템의 /etc/ntp/keys 파일에 구성할 수 있습니다.
- BZ#835155
- 서명된 응답에 대한 지원이 NTP에 추가되었습니다. Samba 4를 AD(Active Directory) DC(Domain Controller)로 사용할 때 필요합니다.
- BZ#918275
- 기타 ntpd 옵션인 "interface"가 추가되었습니다. 이 옵션을 사용하면 ntpd가 열리는 네트워크 주소 및 처리 없이 들어오는 패킷을 삭제할지 여부를 제어할 수 있습니다. "interface" 옵션 사용에 대한 자세한 내용은 ntp_misc(5) 매뉴얼 페이지를 참조하십시오.
8.128. numactl
8.128.1. RHBA-2013:1712 - numactl 버그 수정 업데이트
버그 수정
- BZ#881779
- 이번 업데이트 이전에는 numactl(8) 매뉴얼 페이지에 "localalloc" 옵션이 명확하게 설명되어 있지 않아 혼동이 발생할 수 있었습니다. 이번 업데이트에서는 numactl(8) 매뉴얼 페이지에 "localalloc"에 대한 명확한 설명이 추가되었습니다.
- BZ#987507
- numastat 유틸리티 소스 코드의 버그로 인해 "numastat -m" 명령의 출력에서 할당된 정적 대규모 페이지 메모리 양의 잘못된 값이 보고되었습니다. 이 버그를 해결하기 위해 패치가 적용되었으며 numastat는 이제 대규모 페이지 크기를 올바르게 계산합니다.
8.129. numad
버그 수정
- BZ#987563
- 모든 CPU가 사용 중인 경우 numad 데몬이 너무 어려워서 애플리케이션 및 시스템 성능이 크게 향상되었지만 노드 간에 프로세스 균형을 조정하지 못했습니다. 이번 업데이트를 통해 numad는 모든 CPU가 사용 중인 경우에도 프로세스 이동에 대해 더 공격적입니다. 결과적으로 전체 시스템 성능이 크게 향상되었습니다.
- BZ#987559
- 이전에는 시스템의 hugepage "scan_sleep_millisecs" 매개변수를 설정할 수 없었습니다. 결과적으로 프로세스 메모리가 노드 간에 마이그레이션될 때 NUMA 성능이 손상되었습니다. 새로운 "-H" 옵션을 수락하도록 기본 코드가 변경되어 "scan_sleep_millisecs"를 지정하여 버그를 수정합니다. 이제 사용자가 값을 설정하여 numad 성능을 미세 조정할 수 있습니다.
기능 개선
- BZ#913546
- Red Hat Enterprise Linux 6에서 완전히 지원하도록 logrotate 툴의 구성 파일이 추가되었습니다.
8.130. opencryptoki
8.131. OpenCV
8.131.1. RHBA-2013:1118 - opencv 버그 수정 업데이트
버그 수정
- BZ#658060
- OpenCVConfig.cmake 파일에는 32비트 및 64비트 아키텍처의 콘텐츠가 다르며 /usr/share 디렉터리에 설치되었습니다. 결과적으로 opencv-devel 패키지를 multilib 환경에 설치할 수 없었습니다. 이번 업데이트를 통해 OpenCVConfig.cmake 파일이 /usr/lib(64) 디렉터리로 이동되었으며 multilib 환경에 opencv-devel 패키지를 설치할 수 있습니다.
8.132. openhpi
8.132.1. RHBA-2013:1532 - openhpi 버그 수정 업데이트
버그 수정
- BZ#891626
- power_supply() 구문 분석 루틴의 버그로 인해 반환된 일부 문자열에 잘못 표시된 문자가 포함될 수 있었습니다. 결과적으로 OpenHPI API를 통해 전원 공급 장치(PSU)의 일련 번호 또는 부분 번호를 검색하면 이러한 문자가 포함된 문자열이 생성되었습니다. 이번 업데이트에서는 PSU에 대해 적절한 일련 번호와 부분 번호가 반환되고 반환된 문자열에는 이제 유효한 문자만 포함됩니다.
- BZ#924852
- 이전에는 OpenHPI에서 특정 RDR(Reply를 사용한 데이터 요청) 센서를 지원하는 코드가 누락되었습니다. 그 결과, Onboard Administrator(OA)#159 플러그인을 통해 모니터링되는 인클로저 추출 및 다시 삽입 후 다음 오류 메시지가 로그 파일로 반환되었습니다.openhpid: ERROR: (oa_soap_sensor.c, 2005, RDR not present) openhpid: ERROR: (oa_soap_fan_event.c, 279, 센서 24의 센서 이벤트를 처리하는 데 실패했습니다)이 버그는 수정되었으며 구성 요소를 추출하여 다시 삽입한 후 오류 메시지가 기록되지 않습니다.
- BZ#948386
- 특정 조건에서 OA 전환이 발생했을 때 OA(Onboard Administrator) Cryostat 플러그인과 함께 OpenHPI를 사용할 때 HPI 클라이언트가 응답하지 않거나 openhpi 데몬이 새 활성 OA에 연결하지 못했습니다. 그 결과 클라이언트가 이벤트 및 데이터를 검색할 수 없었습니다. OA 페일오버 상황을 더 잘 고려하여 이 버그를 수정하기 위해 일련의 패치가 제공되었습니다.
- BZ#953515
- 이번 업데이트 이전에는 OpenHPI에서 특정 블레이드 서버에 대한 지원이 누락되었습니다. 그 결과 OpenHPI 데몬이 이러한 서버에서 시작 시 세그먼트 오류로 예기치 않게 종료되었습니다. 설명된 시나리오에서 누락된 지원을 추가하기 위한 패치가 제공되었으며, OpenHPI 데몬이 더 이상 충돌하지 않습니다.
- BZ#953525
- 특정 열 센서에 대한 지원이 누락되어 getBladeInfo() 기능이 예기치 않게 종료되어 전체 검색 프로세스가 실패할 수 있습니다. 이번 업데이트에서는 이러한 센서에 대한 지원이 추가되어 OpenHPI 검색이 예상대로 작동합니다.
8.133. openscap
버그 수정
- BZ#999903
- 이전에는 oscap 유틸리티에서 RPM 데이터베이스(RPMDB)를 쿼리하는 동안 개체 평가 프로세스를 제대로 처리하지 않았습니다. 프로세스가 중단되어 RPMDB가 손상되면 쿼리 시 생성된 RPMDB가 올바르게 제거되지 않았습니다. 이번 업데이트를 통해 생성된 RPMDB Cryostat가 올바르게 제거되고 중단을 처리해도 더 이상 RPMDB 손상이 발생하지 않습니다.
8.134. openssh
보안 수정
- CVE-2010-5107
- 기본 OpenSSH 구성을 사용하면 원격 공격자가 무단 연결 슬롯을 소모하고 다른 사용자가 시스템에 로그인할 수 없도록 쉽게 수행할 수 있습니다. 이 취약점은 MaxStartups를 기본적으로 10:30:100으로 설정하여 임의의 초기 연결 드롭을 활성화하여 해결되었습니다. 자세한 내용은 sshd_config(5) 도움말 페이지를 참조하십시오.
버그 수정
- BZ#872169
- 기존 /dev/log 소켓은 syslog 유틸리티를 사용하여 로깅할 때 필요하며 사용자의 홈 디렉터리를 기반으로 하는 모든 chroot 환경에는 사용할 수 없습니다. 이전에는 이 문제를 해결하기 위해 syslog 파일 설명자를 열어 두기 위해 패치가 적용되었습니다. 그러나 syslog 라이브러리가 변경되었으며 사용된 추론이 작동을 중지했습니다. 그 결과 sftp 명령이 내부 sftp 하위 시스템의 chroot 설정에 기록되지 않았습니다. 패치는 새 조건에 맞게 조정되었으며 sftp 명령은 내부 sftp 하위 시스템의 chroot 설정에 기록됩니다.
- BZ#880575
- 이전 버전에서는 사용자가 보호되지 않은 개인 키를 사용하려고 하면 ssh 유틸리티에 다음 메시지가 표시되었습니다.
It is recommended that your private key files are NOT accessible by others.
키는 나중에 거부되었으며, 이로 인해 동작이 메시지와 일치하지 않아 혼동될 수 있었습니다. 이번 업데이트를 통해 메시지가 다음과 같이 변경되었습니다.It is required that your private key files are NOT accessible by others.
- BZ#896561
- ssh-agent 유틸리티는 더 많은 연결을 열 수 없어 경쟁 조건으로 인해 응답하지 않을 수 있었습니다. 이 시나리오에서는 경쟁 조건이 수정되었으며 ssh-agent가 더 이상 중단되지 않습니다.
- BZ#954094
- "bindpw" 옵션에 큰따옴표가 포함된 경우 ssh-ldap-helper 구문 분석기에서 올바르게 구문 분석되지 않았으며 ssh-ldap-helper가 LDAP 서버에 바인딩하지 못했습니다. 이번 업데이트를 통해 ssh-ldap-helper는 LDAP 구성 파일을 올바르게 구문 분석합니다.
- BZ#955792
- 이번 업데이트 이전에는 터미널 재프로그래밍 공격을 방지하기 위해 ASCII가 아닌 문자가 배너 메시지에서 8진수 표현으로 교체되었습니다. 그 결과 UTF-8 문자열이 포함된 배너가 클라이언트에 올바르게 표시되지 않았습니다. 이번 업데이트를 통해 RFC 3454에 따라 배너 메시지가 처리되고, 제어 문자가 제거되고 UTF-8 문자열이 포함된 배너가 올바르게 표시됩니다.
- BZ#974096
- 이전 버전에서는 대상 사용자의 /tmp/ 디렉터리가 polyinstantiated인 경우 PAM(Pluggable Authentication Module) 세션이 시작된 후 원격 시스템에서 인증 정보 캐시를 찾을 수 없었습니다. 그 결과 Kerberos 티켓 전달이 작동하지 않았습니다. 이번 업데이트를 통해 PAM 세션이 시작된 후 새 /tmp/ 디렉토리에 캐시가 다시 생성되고 이제 Kerberos 티켓 전달이 예상대로 작동합니다.
- BZ#993509
- 이전에는 sshd 데몬이 내부 SFTP 세션을 강제하도록 구성된 경우 데몬에서 대화형 세션의 요청을 올바르게 처리할 수 없었습니다. 결과적으로 sshd가 SSH 연결을 종료하지 않았으며 SSH 클라이언트가 응답하지 않을 수 있었습니다. 이번 업데이트를 통해 서비스에서 SFTP 연결만 허용하는 오류 메시지를 반환하도록 sshd가 수정되었으며 이 시나리오에서는 SSH 클라이언트가 더 이상 중단되지 않습니다.
기능 개선
- BZ#906872
- 이번 업데이트에서는 새 OpenSSH 인증서 형식을 사용하여 사용자 및 호스트에 대한 인증서 인증 지원이 추가되었습니다. 인증서에는 공개 키, ID 정보 및 유효 제약 조건이 포함되어 있으며 ssh-keygen 유틸리티를 사용하여 표준 SSH 공개 키로 서명됩니다. Red Hat Enterprise Linux 6와 함께 제공되는 ssh-keygen 버전은 보안 주체를 지정하는 데 "-Z" 옵션을 사용합니다. 이 기능에 대한 자세한 내용은 /usr/share/doc/openssh-5.3p1/PROTOCOL.certkeys 파일을 참조하십시오.
- BZ#908038
- 이번 업데이트에서는 PKCS#11 토큰에 대한 지원이 추가되었습니다. 이제 OpenSSH 클라이언트는 인증을 위해 스마트 카드를 사용할 수 있습니다.
- BZ#951704
- KexAlgorithms 구성 옵션이 ssh 유틸리티와 sshd 데몬 모두에서 클라이언트 및 서버 구성에 추가되었습니다. KexAlgorithms를 지정하면 사용자와 관리자가 키 교환 방법과 주문 또는 기본 설정을 선택할 수 있습니다.
- BZ#969565
- 이번 업데이트에서는 HMAC(Hash-based Message Authentication Code)의 SHA-2 보안 해시 알고리즘에 대한 지원이 OpenSSH에 추가되었습니다.
- BZ#993577
- 새로운 FIPS(Federal Information Processing Standard) 유효성 검사에는 RNG(random number generator) 시드가 이전 80비트 대신 112비트 이상의 엔트로피를 보유해야 합니다. 따라서 SSH_USE_STRONG_RNG 환경 변수의 최소 값이 14로 증가했습니다.
- BZ#1001565
- 새로운 FIPS(Federal Information Processing Standard) 검증에는 FIPS 모듈이 설치될 때 모든 경우에 POST(Power On Self Test)를 실행해야 합니다. 이번 업데이트를 통해 POST 자체 테스트가 SSH 클라이언트에서 실행되고 dracut-fips 패키지가 설치된 경우 SSH 서버에서 실행됩니다.
8.135. OpenSSL
버그 수정
- BZ#830109
- 이전에는 잘못된 변수 크기가 getsockopt() 함수에 전달되었습니다. 결과적으로 데이터그램 모드에서 BIO(OpenSSL I/O) 계층을 사용하면 세그먼트 오류로 인해 종료가 발생했습니다. 특히 "-dtls1" 옵션을 활성화하여 IBM System z에서 openssl s_client 명령이 예기치 않게 종료되었습니다. 이번 업데이트 후 올바르게 크기가 지정된 변수가 사용되고 데이터그램 BIO 함수가 더 이상 System z의 세그먼트 오류로 종료되지 않습니다.
- BZ#919404
- 이번 업데이트 이전에는 getaddrinfo() 함수에서 openssl s_server 명령 구현에서 잘못 처리된 오류를 반환했습니다. 그 결과 OpenSSL s_server가 IPv4 전용 시스템에서 작동하지 않았습니다. 이번 업데이트를 통해 IPv6 주소에서 getaddrinfo()가 실패하면 IPv4 주소 조회로 대체되도록 코드가 수정되었습니다. 결과적으로 이제 IPv4 주소만 구성된 컴퓨터에서 openssl s_server가 올바르게 시작됩니다.
기능 개선
- BZ#818446
- 이제 Intel RDRAND 명령이 임의의 숫자를 생성하는 데 사용되며 기본 OpenSSL 난수 생성기를 대체했습니다. 이 명령은 OpenSSL이 FIPS 모드에서 실행되는 경우 사용되지 않습니다.
- BZ#929291
- 현재 IBM PowerPC 프로세서에서 OpenSSL의 성능이 향상되었습니다.
- BZ#951690
- 이제 OpenSSL(elliptic curve digital signature algorithm) 및 ECDH(elliptic curve Diffie-Hellman) 알고리즘이 활성화됩니다. 이러한 알고리즘은 NIST(표준 및 기술) 제품군 B 사양에 나열된 타립틱 곡선만 지원합니다.
- BZ#951701
- 새로운 "-trusted_first" 옵션이 OpenSSL에 추가되었습니다. 이를 통해 TLS 서버에서 보낸 중간 인증서 대신 로컬에 저장된 중간 인증서를 선호할 수 있습니다.
- BZ#969562
- TLS(전송 계층 보안) 프로토콜의 버전 1.1 및 1.2는 이제 OpenSSL 라이브러리에서 지원합니다.
- BZ#969564
- 이번 업데이트를 통해 빌드 전에 OpenSSL을 구성할 때 openssl.spec 파일의 하드 코딩된 /usr/ 디렉터리 대신 "%{_prefix}" 매크로가 사용됩니다.
- BZ#987411
- TLS 프로토콜의 다음 프로토콜 협상(NPN) 확장이 이제 OpenSSL에서 지원됩니다. 이 확장 기능을 사용하면 TLS 핸드셰이크 중에 애플리케이션에서 사용하는 애플리케이션 프로토콜을 협상할 수 있습니다.
- BZ#993584, BZ#999867
- FIPS 검증 요구 사항으로 인해 FIPS 모듈이 설치될 때 FIPS Power-on 자체 테스트(POST)를 항상 실행해야 합니다. 라이브러리의 경우 동적 라이브러리 생성자 함수에서 자체 테스트를 실행하여 보장됩니다.For libraries, this is ensured by running the self-tests from the dynamic library constructor function. dracut-fips 패키지가 설치된 경우 OpenSSL은 이제 OpenSSL FIPS 모듈이 설치되고 완료되었음을 나타내는 지표로 처리하고 OpenSSL 동적 라이브러리가 로드될 때마다 자체 테스트를 실행합니다.
8.135.2. RHBA-2013:1751 - openssl 버그 수정 업데이트
버그 수정
- BZ#1025597
- 이전에는 Cyrix CPU에서 실행할 때 OpenSSL 코드가 RDRAND 명령을 잘못 사용했으며 이를 지원하지 않았습니다. 그 결과 OpenSSL 유틸리티를 사용하는 애플리케이션이 시작 시 예기치 않게 종료되었습니다. Cyrix CPU의 CPU 기능 감지가 수정되었으며 OpenSSL을 사용하는 애플리케이션이 더 이상 충돌하지 않습니다.
- BZ#1025598
- 이번 업데이트 이전에는 TLS(Transport Layer Security) 클라이언트는 지원하지 않는 일부 타원 곡선에 대한 지원을 광고했습니다. 결과적으로 서버는 지원되지 않는 elliptic 곡선을 선택할 수 있었으며 클라이언트는 TLS를 통해 서버와 통신할 수 없었습니다. 이번 업데이트를 통해 OpenSSL TLS 클라이언트는 지원되는 곡선과 서버와의 TLS 통신(Red Hat Enterprise Linux OpenSSL TLS 클라이언트에서 지원하지 않는 곡선도 사용)을 설정할 수 있음을 알립니다.
8.136. openswan
버그 수정
- BZ#771612
- 이전에는 /var/log/lastlog 파일에서 grep 유틸리티라고 하는 "ipsec barf" 명령으로 인해 시스템이 상당한 양의 메모리를 사용했습니다. 이번 업데이트 후 "ipsec barf"는 "lastlog -u user" 명령을 사용하므로 유틸리티에서 메모리를 너무 많이 사용하지 못하게 합니다.
- BZ#831669
- RFC 5996 표준에 따라 예약된 필드는 값과 관계없이 수신 시 무시되어야 합니다. 이전에는 일부 페이로드에 대한 수신 시 예약된 필드의 콘텐츠가 무시되지 않았습니다. 그 결과 Openswan에서 오류 메시지를 보고했으며IKE(Internet Key Exchange) 협상에 실패했습니다. 이번 업데이트를 통해 예약된 필드를 무시하도록 Openswan이 수정되었으며 예약된 필드 값과 관계없이 IKE 협상이 성공합니다.
- BZ#831676
- 전송 모드에서 연결을 구성한 경우 Openswan은 트래픽 선택기에 대한 정보를 SA(Security association) 설정 중에 NETKEY/XFRM IPsec 커널 스택에 전달하지 않았습니다. 그 결과 "ip xfrm state" 명령의 출력에서 정보를 사용할 수 없었습니다. 이번 업데이트를 통해 SA가 전송 모드에서 설정된 경우 Openswan은 트래픽 선택기 정보를 커널에 올바르게 전달합니다.
- BZ#846797
- 두 개의 IPsec 호스트(예: host1 및 host2) 간에 터널이 설정된 경우(예: host1에서 dead Peer Detection DPD 사용), host1은 계속 데이터를 전송하는 동안 오프라인 상태가 되면 host1은 DPD 작업 후 여러 단계 2 요청을 계속 큐에 저장했습니다. host2가 다시 온라인 상태가 되면 2단계 요청 스택이 설정되어 새로운 IPsec Security Association(SA)과 시스템 리소스를 소비한 대규모의 추가 SA 그룹이 결국 만료되었습니다. 이번 업데이트를 통해 host2가 중단되는 동안 Openswan에 하나의 보류 단계 2 요청이 있고 host2가 백업되면 새 IPsec SA 하나만 설정되므로 이 버그가 발생하지 않습니다.
- BZ#848132
- 두 개의 IPsec 호스트(예: host1 및 host2) 간에 터널이 설정된 경우 host2가 오프라인 상태가 되고 dead Peer Detection(DPD)을 활성화한 경우 새로운 단계1 교체가 활성화되었지만 "keyingtries=%forever" 옵션(기본값)이 설정되어 있어도 제한된 양의 재시도 횟수가 적용되어 있었습니다. host2가 시간 내에 다시 연결되지 않은 경우 이전 phase1 Security Association(SA)이 만료될 때까지(기본적으로 약 10분) 터널을 다시 입력하지 않았습니다. 즉, "dpdaction=restart" 옵션을 사용하면 피어가 다시 연결할 수 있는 짧은 창만 허용되었습니다. 이번 업데이트를 통해 phase1 교체는 계속 rekey를 시도하므로 재전송 제한 및 타임아웃을 방지할 수 있습니다.
- BZ#868986
- 이전에는 쉼표가 포함된 "rightid" 연결 옵션의 이름으로 지정된 인증서가 무시되었으며 ID 불일치로 인해 이러한 연결이 인증되지 않았습니다. 이번 업데이트를 통해 Openswan은 이제 "rightid" 옵션의 OID 필드 내부의 이스케이프된 쉼표를 지원합니다.
- BZ#881914
- 이전에는 SHA2 다이제스트 알고리즘으로 서명된 인증서가 피어 인증에 사용될 때 다음 오류와 함께 연결 설정이 실패했습니다.
digest algorithm not supported
이 버그가 수정되었으며 Openswan은 이제 이러한 인증서를 인식하고 연결을 올바르게 설정합니다. - BZ#954249
- IPsec(Internet Protocol Security)용 openswan 패키지에는 두 가지 진단 명령인 "ipsec barf" 및 "ipsec look"가 포함되어 있으며 이는 NAT 및 IP 연결 추적에 대한 iptables 커널 모듈을 로드할 수 있습니다. 사용량이 많은 시스템에서 이러한 커널 모듈을 로드하면 성능이 저하되거나 커널이 리소스가 부족해질 때 성능이 저하될 수 있습니다. 이번 업데이트를 통해 진단 명령이 NAT 및 IP 연결 추적 모듈을 로드하지 않습니다. 이번 업데이트에서는 iptables 및 ip6tables 서비스가 이미 이러한 커널 모듈을 로드했기 때문에 IP 연결 추적 또는 NAT를 이미 사용하는 시스템에는 영향을 미치지 않습니다.
- BZ#958969
- 이전에는 IPsec 데몬(pluto)이 인증서 해지 목록(CRL)의 서명을 확인하려고 할 때 서명 값이 0바이트로 시작하고 패딩으로 다른 0이 있는 경우 mpz() 함수가 모든 선행 0을 제거했습니다. 이로 인해 NSS(Network Security Services) 데이터 입력이 1바이트 짧고 NSS가 modulus 길이와 비교했을 때 검증이 실패했습니다. 이번 업데이트에서는 임의의 비정밀도(bignum)로 변환을 제거하고 포인터를 한 위치 앞으로 이동하고 서명 길이를 1로 줄임으로써 선행 0을 처리합니다. 결과적으로 CRL에 대한 확인이 이제 서명에 선행 0과 함께 예상대로 작동합니다.
- BZ#960171
- 이전에는 plutomain.c 파일의 load_crls() 및 load_authcerts_from_nss() 함수의 순서가 올바르지 않았습니다. 그 결과 시작 중에 IPsec 데몬(pluto)이 /etc/ipsec.d/crls/ 디렉터리에서 CRL(Certificate Revocation Lists)을 로드하려고 하면 pluto가 로드된 인증 기관(CA)을 확인할 때 로드에 실패했습니다. 이번 업데이트에서는 plutomain.c 파일에서 앞서 언급한 함수의 순서를 스왑하고 이제 시작 중에 pluto가 더 이상 실패하지 않고 CRL을 성공적으로 로드합니다.
- BZ#965014
- 이전에는 Openswan Internet Key Exchage 버전 2(IKEv2) 구현에서 "예약된" 필드를 0으로 설정하지 않았습니다. 그 결과 Openswan은 TAHI IKEv2 테스트를 통과하지 않았습니다. 이번 업데이트 후 Openswan은 "예약된" 필드를 0으로 설정하고 TAHI IKEv2 테스트를 성공적으로 통과합니다.
- BZ#975550
- 이전에는 Openswan의 인터넷 키 교환 버전 2(IKEv2) 알고리즘에서 MD5 해시를 사용하여 다른 IPsec 구현에 연결할 때(예: strongswan) 설치된 커널 보안 정책 항목에 다른 측면에서 해당 값과 다른 "enc" 또는 "auth" 값이 있었습니다. 결과적으로 SA(Security Association)가 올바르게 설정된 경우에도 연결을 설정할 수 없었습니다. 이번 업데이트 후 Openswan에서 이러한 값이 올바르게 설정되고 연결을 성공적으로 설정할 수 있습니다.
- BZ#985596
- 이전에는 FIPS 모드에서 Openswan에서 SHA2 알고리즘을 사용할 수 없었습니다. 이번 업데이트에서는 FIPS 모드에서 SHA2 알고리즘을 사용할 수 있습니다.
- BZ#994240
- 전송 모드를 위해 트래픽 선택기를 XFRM IPsec 스택에 전달하는 초기 지원은 불완전했으며 NAT-traversal 지원에 필요한 작업 방법은 포함되지 않았습니다. 그 결과 Openswan은 NAT-Traversal을 사용하는 장치와 L2TP 연결을 설정할 수 없었습니다. 이번 업데이트 후 IPsec Security Association (SA)의 방향이 netlink_setup_sa() 함수로 전달되어 클라이언트 IP가 호스트 IP로 대체되고 선택기가 NAT 전송 모드에서 작동합니다.
- BZ#1002633
- 이번 업데이트 후 Openswan은 이제 dracut-fips를 사용하여 FIPS 모드에서 실행해야 하는지 여부를 결정합니다.
기능 개선
- BZ#916743
- 이번 업데이트에서는 IPsec 연결의 전송 지연 타이밍을 제어하는 기능이 도입되었습니다.
- BZ#880004
- 이번 업데이트를 통해 Openswan은 이제IKE(Internet Key Exchage) 조각화를 지원합니다. Openswan은 이제 IKE 조각화를 지원하는 장치에 성공적으로 연결할 수 있습니다.
- BZ#908476
- RFC2407 사양의 섹션 4.6.3.3.에 정의된 대로 Internet Key Exchage 버전 1(IKEv1) INITIAL-CONTACT IPsec 메시지에 대한 지원이 Openswan에 추가되었습니다. 이는 피어가 Notification Payload 메시지가 없는 한 기존 IPsec Security Association (SA)을 새로 협상한 것으로 대체하지 않는 상호 운용성 버그를 해결합니다.
- BZ#957400
- 커널 모듈 aesni_intel은 이제 시작 시 Openswan에 의해 로드됩니다. 이번 업데이트에서는 AES-NI(Advanced Encryption Standard New instructions)를 실행하는 시스템에서 Openswan의 성능이 크게 향상됩니다.
- BZ#959568
- Openswan의 기본 동작은 NAT-Traversal keepalive 패킷을 보내는 것입니다. 이전에 keepalive 패킷 전송을 비활성화하는 것은 글로벌 옵션이었습니다. 이번 업데이트 후 사용자는 연결별로 NAT-Traversal keepalive 패킷을 비활성화할 수 있습니다.
8.137. pacemaker
보안 수정
- CVE-2013-0281
- 특정 상황에서 Pacemaker에서 원격 연결 인증 및 처리를 수행하는 방식에서 서비스 거부 결함이 발견되었습니다. 원격 CIB(Cluster Information Base) 구성 또는 리소스 관리를 허용하도록 Pacemaker를 구성한 경우 원격 공격자는 이 취약점을 사용하여 Pacemaker가 무기한 차단되도록 할 수 있습니다(다른 요청을 처리할 수 없음).
버그 수정
- BZ#902407
- "crm_resource --move" 명령은 원자 리소스용으로 설계되었으며 여러 노드에 있는 복제, 마스터 또는 슬레이브의 리소스를 처리할 수 없습니다. 결과적으로 crm_resource는 리소스를 이동하기에 충분한 정보를 얻을 수 없어 작업을 수행하지 않았습니다. 관리자가 클러스터를 명확하게 지시할 수 있도록 "--ban" 및 "--clear" 옵션이 추가되었습니다. 이제 복제, 마스터 및 슬레이브 리소스를 예상대로 클러스터 내에서 탐색할 수 있습니다.
- BZ#908450
- hacluster 사용자 계정에는 시스템에 사용자 ID(UID) 또는 그룹 ID(GID) 번호가 예약되지 않았습니다. 따라서 설치 프로세스 중에 UID 및 GID 값이 임의로 선택되었습니다. UID 및 GID 번호 189는 hacluster용으로 예약되었으며 이제 모든 설치에 일관되게 사용됩니다.
- BZ#913093
- 특정 클러스터에서는 "uname -n" 명령의 출력과 일치하지 않는 노드 호스트 이름을 사용했습니다. 따라서 crm_standby 및 crm_failcount 명령에서 사용하는 기본 노드 이름이 올바르지 않아 관리자가 업데이트를 무시했습니다. 이제 도우미 스크립트에서 uname 유틸리티 대신 crm_node 명령이 사용됩니다. 이로 인해 클러스터가 예상대로 작동합니다.
- BZ#951371
- 잘못된 반환 코드 처리로 인해 구성이 업데이트된 경우 crm_mon 유틸리티의 내부 복구 논리가 실행되지 않아 어설션 오류가 발생했습니다. 이제 반환 코드가 올바르게 확인되고 예상되는 오류 상태 복구가 투명하게 처리됩니다.
- BZ#996850
- Pacemaker와 결합하면 CMAN의 자동 펜싱 기능이 실패했습니다. Pacemaker에서 자동화된 unfencing 지원이 추가되어 더 이상 원하지 않는 동작이 발생하지 않습니다.
8.138. PAM
8.138.1. RHEA-2013:1734 - pam 개선 업데이트
기능 개선
- BZ#976033
- TTY 감사 중에 일반적으로 감사 Operator에 의해 입력되는 암호를 로깅할 필요가 없거나 기록하지 않는 것이 바람직하지 않습니다. 이번 업데이트에서는 pam_tty_audit PAM 모듈에 향상된 기능이 추가되어 "log_passwd" 옵션이 사용되는 경우에만 TTY 콘솔에 입력된 암호가 기록됩니다. 따라서 pam_tty_audit의 "log_passwd" 옵션이 사용되지 않는 한 암호가 더 이상 기록되지 않습니다. 이 옵션은 Red Hat Enterprise Linux 6.5 이전 커널 버전에서는 사용할 수 없습니다.
8.139. Papi
버그 수정
- BZ#740909
- makefile에서 종속 항목이 누락되어 PAPI 라이브러리의 병렬 재구축이 실패했습니다. 이번 업데이트를 통해 이 문제를 해결하기 위해 새 규칙이 makefile에 추가되었습니다. 결과적으로 설명된 시나리오에서 PAPI를 성공적으로 다시 빌드할 수 있습니다.
- BZ#785258
- 이전에는 Intel Xeon Processor E5-XXXX 노드에서 Hyper-threading이 활성화된 경우 PAPI libary에서 부동 소수점 작업을 계산하도록 performance-monitoring 하드웨어를 구성할 수 없었습니다. 이 버그는 수정되었으며 앞서 언급한 오류가 더 이상 발생하지 않습니다.
- BZ#883475
- papi.spec 파일의 잘못된 ldconfig 설정으로 인해 root 사용자가 프로세스를 실행할 때 papi를 srpm 파일에서 다시 빌드하지 못했습니다. 이번 업데이트를 통해 이 버그를 수정하도록 기본 소스 코드가 수정되었습니다.
- BZ#883766
- 이전에는 이전 버전의 papi를 설치할 때 srpm 파일에서 papi 패키지를 빌드하지 못했습니다. 빌드 중에 papi의 새 버전이 이전에 설치된 papi-devel 패키지의 libpfm.so 파일에 연결하려고 시도하여 papi가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 빌드 중에 파일 연결 순서를 다시 정렬하여 로컬 빌드 파일을 먼저 사용하도록 패치가 도입되었습니다. 결과적으로 이전 버전이 설치된 상태에서 papi가 올바르게 빌드됩니다.
기능 개선
- BZ#726798, BZ#831751, BZ#947622
- Intel Xeon Processor E5-XXXX 및 Intel Xeon Processor E5-XXXX 아키텍처에 대한 지원이 PAPI 라이브러리에 추가되었습니다.
- BZ#743648
- PAPI를 통한 다양한 에너지 및 성능 레지스터에 대한 지원이 추가되었습니다.
- BZ#785975
- 이번 업데이트를 통해 PAPI 인터페이스에서 몇 가지 사소한 문법 오류가 수정되었습니다.
- BZ#866590
- 정적 연결에 대한 라이브러리를 제공하기 위해 papi-static 하위 패키지가 추가되었습니다.
- BZ#910163
- papi-testsuite 하위 패키지에서 papi 테스트를 허용하도록 추가되었습니다.
8.140. parted
8.140.1. RHBA-2013:1627 - 부분적으로 버그 수정 업데이트
버그 수정
- BZ#851705
- 유일한 파티션이 포함된 DM-Multipath(Device Mapper Multipath) 장치에서 파티션을 제거한 후 parted 유틸리티에서 시스템을 재부팅할 때까지 DM-Multipath 장치를 제거하지 못했습니다. 이번 업데이트를 통해 libparted 라이브러리의 버그가 수정되어 이제 parted가 이 시나리오에서 DM-Multipath 장치를 올바르게 제거합니다.
- BZ#869743
- 이전에는 parted 유틸리티에서 서명되지 않은 32비트 정수로 제한된 크기로 루프 장치를 처리할 수 있었습니다. 결과적으로 4GiB보다 큰 루프 장치에 parted를 사용하는 데 실패했습니다. 이번 업데이트를 통해 앞서 언급한 제한이 서명되지 않은 64비트 정수로 증가했으며 최대 2^64 크기의 루프 장치가 지원됩니다.
- BZ#631928
- 이전에는 parted 유틸리티에서 65535를 초과하는 확장 주소 볼륨(EAV) 직접 액세스 스토리지 장치(DASD)를 처리할 수 없었습니다. 결과적으로 EAV DASD 드라이브를 parted를 사용하여 분할할 수 없었으며 EAV DASD 드라이브에 설치할 수 없었습니다. 이번 업데이트에서는 65535가 넘는 EAV DASD 장치에 대한 지원이 추가되어 현재 일부가 올바르게 처리합니다.
8.141. pcs
버그 수정
- BZ#901588
- 이전에는 제약 조건 규칙 ID와 리소스 작업 ID가 pcs 유틸리티에 표시되지 않았습니다. 결과적으로 사용자는 pcs를 사용하여 규칙을 제거할 수 없었으며 다른 툴을 사용하거나 CIB(Cluster Information Base)를 직접 편집해야 했습니다. 이번 업데이트에서는 리소스 작업 및 제약 조건 규칙의 ID를 표시하는 "--full" 옵션이 추가되어 사용자가 pcs를 사용하여 규칙을 처리할 수 있습니다.
- BZ#901607
- 이전에는 pcs 유틸리티에서 마스터 및 슬레이브 리소스를 승격하거나 삭제하는 제약 조건을 생성할 수 없었습니다. 그 결과 pcs를 사용하여 마스터 및 슬레이브 리소스를 승격하거나 시연할 수 없었습니다. 이번 업데이트에서는 pcs가 constriants를 사용하여 마스터 및 슬레이브 리소스를 승격하거나 데모할 수 있는 기능이 추가되었습니다.
- BZ#902450
- 이전 버전에서는 사용자가 모니터 작업을 사용하여 리소스를 생성한 다음 모니터 작업을 업데이트하려고 할 때 모니터 작업을 업데이트하는 대신 새 작업이 생성되었습니다. 결과적으로 pcs 유틸리티에서 리소스 모니터 작업을 업데이트할 수 없었습니다. 이 버그가 수정되었으며 pcs의 리소스 모니터 작업을 업데이트하는 작업이 이제 예상대로 작동합니다.
- BZ#902453
- 사용자가 리소스를 생성하는 동안 존재하지 않는 리소스 에이전트를 선택할 때 pcs utility에 오류 메시지가 표시되지 않았습니다. 결과적으로 리소스가 시작되지 않았지만 사용자에게 알림이 표시되지 않았습니다. 이번 업데이트에서는 필요한 경우 "--force" 플래그로 재정의할 수 있는 오류 메시지가 추가되고, 존재하지 않는 리소스 에이전트를 선택하는 경우 사용자가 올바르게 알림을 받습니다.
- BZ#902460
- 이전에는 사용자가 인식할 수 없는 옵션을 제출할 때 pcs 유틸리티에 특정 오류 메시지가 포함되어 있지 않았습니다. 결과적으로 pcs에서 오류 메시지 대신 역추적을 반환했습니다. 이번 업데이트를 통해 pcs는 설명된 시나리오에 특정 오류 메시지를 출력합니다.
- BZ#903712
- "pcs config" 명령은 Pacemaker 클러스터의 구성을 검토할 때 마스터 및 슬레이브 리소스로 구성된 리소스를 표시하지 않았습니다. 그 결과 사용자가 구성된 마스터 및 슬레이브 리소스 및 해당 옵션을 보기 위해 CIB(Cluster Information Base)를 직접 분석해야 했습니다. 이번 업데이트에서는 이 버그를 해결하기 위한 패치를 제공하므로 "pcs config" 명령에 마스터 및 슬레이브 리소스를 포함한 모든 리소스가 표시됩니다.
- BZ#912496
- 이번 업데이트 이전에는 pcs 유틸리티에서 리소스를 생성할 때 여러 리소스 작업을 지정할 수 없었습니다. 결과적으로 하나의 작업이 있는 리소스만 생성할 수 있었습니다. "pcs resource create" 명령이 업데이트되어 사용자가 여러 작업을 사용하여 리소스를 생성할 수 있습니다.
- BZ#912498
- 이전에는 리소스에 여러 작업이 있을 때 모두 동일한 줄에 표시되었습니다. 결과적으로 특정 리소스의 모든 작업을 볼 수 없었습니다. 이번 업데이트를 통해 각 리소스 작업이 자체 행에 표시됩니다.
- BZ#912528
- 이전에는 pcs 유틸리티에 리소스 오류를 정리하는 명령이 없었습니다. 결과적으로 사용자가 실패한 리소스를 정리할 수 없었습니다. 이번 업데이트에서는 이 문제를 해결하기 위해 "pcs resource cleanup" 명령이 추가되었습니다.
- BZ#915248
- 이전에는 pcs 유틸리티에서 리소스의 실패 수 확인 또는 재설정을 지원하지 않았습니다. 결과적으로 사용자는 대신 지원되지 않는 다른 도구를 사용해야 했습니다. 이번 업데이트를 통해 사용자는 "pcs resource failcount show" 및 "pcs resource failcount reset" 명령을 사용하여 특정 리소스에 대한 실패 수를 재설정하고 볼 수 있습니다.
- BZ#916993
- 이번 업데이트 이전에는 pcs 유틸리티에 수동 페이지가 없었습니다. 결과적으로 사용자는 수동 페이지를 보는 대신 "pcs --help" 명령을 사용해야 했습니다. pcs(8) 도움말 페이지가 추가되어 "man pcs" 명령을 사용하여 pcs에 대한 전체 문서를 볼 수 있습니다.
- BZ#920767
- 이전에는 pcs 유틸리티에 리소스 그룹 관리 또는 비관리를 지원하지 않았습니다. 결과적으로 사용자는 개별 리소스만 관리하고 관리할 수 있었습니다. 이번 업데이트에서는 필요한 지원이 추가되어 이제 전체 리소스 그룹을 관리하고 관리할 수 있습니다.
- BZ#998970
- 이전 버전에서는 리소스가 포함된 그룹을 제거해도 pcs 유틸리티에서 제대로 작동하지 않았습니다. 결과적으로 그룹이 제거되었지만 리소스가 남아 있었습니다. 이 버그가 수정되었으며 "pcs resource delete " 명령으로 그룹과 포함된 리소스가 모두 올바르게 삭제됩니다.
기능 개선
- BZ#887926
- 이번 업데이트에서는 표준 편집기를 사용하여 pcs 유틸리티에 클러스터 구성 편집 지원이 추가되었습니다. 이렇게 하면 사용자가 CIB(Cluster Information Base)를 저장하고 편집한 다음 클러스터로 다시 푸시하는 등 여러 단계를 저장합니다. 사용자는 "pcs cluster edit" 명령을 사용하여 한 단계에서 클러스터 구성을 편집하고 업데이트할 수 있습니다.
8.142. perl
버그 수정
- BZ#767608
- 이전 버전에서는 일치하지 않는 이름을 가진 명명된 캡처 그룹을 참조하여 메모리 누수로 인해 발생했습니다. 이번 업데이트를 통해 이 시나리오의 메모리 누수를 방지하기 위해 기본 소스 코드가 수정되었습니다.
- BZ#819042
- 함수 출력을 지정하지 않고 Pod::Man 또는 Pod:: Cryostat 모듈의 parse_file() 함수가 실행된 경우 parse_file()이 종료됩니다. 이번 업데이트를 통해 기본적으로 parse_file()이 표준 출력을 사용하도록 수정되었습니다. 결과적으로 parse_file()은 정의되지 않은 출력으로 더 이상 실패하지 않습니다.
- BZ#825713
- 이번 업데이트 이전에는 find2perl 유틸리티에서 물음표("?") 문자가 포함된 글로벌 표현식을 잘못 번역했습니다. 그 결과 Perl 코드는 'find' 명령줄 유틸리티와 다른 표현식과 일치했습니다. 이번 업데이트를 통해 글로벌 표현식 번역자가 수정되었으며 find2perl이 'find' 유틸리티와 동일한 glob 표현식과 일치합니다.
- BZ#839788
- 종료 메서드로 선언되었지만 아직 정의되지 않은 개체의 범위를 종료하면 Perl 인터프리터가 예기치 않게 종료되었습니다. 이 버그가 수정되었으며 이제 인터프리터가 정의되지 않은 종료 방법을 예상대로 처리합니다.
- BZ#905482
- 시스템에 libgdm-devel 패키지를 설치하지 않고 XML-LibXSLT 라이브러리가 빌드되면 다른 라이브러리에 연결할 수 없었습니다. 이번 업데이트를 통해 glibc-devel, gdbm-devel 및 db4-devel 패키지가 런타임 종속 항목의 perl-devel 목록에 추가되었습니다. 결과적으로 이제 복잡도 없이 네이티브 Perl 라이브러리를 빌드할 수 있습니다.
- BZ#920132
- 프로토타입된 서브루션에서 "format" 옵션을 사용하여 Perl 코드를 실행하는 동안 Perl 인터프리터는 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 perl 패키지에 다양한 백포트 수정 사항이 추가되었습니다. 결과적으로 복잡성없이 프로토타입 서브루네인에서 형식을 사용할 수 있습니다.
- BZ#973022
- 이번 업데이트 이전에는 XML::Simple::19in() 구문 분석기에서 Getopt::Long::GetOptions() 처리기의 입력을 처리하지 않았습니다. 결과적으로 XML::Simple::XMLin()은 지원되지 않는 메서드를 보고했습니다. 이번 업데이트를 통해 Getopt::Long::GetOptions()가 수정되어 다른 Perl 모듈이 복잡함 없이 읽을 수 있는 간단한 문자열 출력을 생성합니다.
- BZ#991852
- 사용자 정의 신호 처리기를 설치한 후 perl 스크립트에서 스레드별 인터프리터 구조에 액세스하려고 했습니다. 이 구조는 이미 비활성화되었으며 Perl은 세그먼트 오류로 종료되었습니다. 이 버그는 수정되었으며 Perl 스크립트는 더 이상 인터프리터 구조를 요청하지 않습니다. 그 결과 앞서 언급한 시나리오에서 Perl이 더 이상 충돌하지 않습니다.
기능 개선
- BZ#985791
- 이번 업데이트에서는 CGI.pm 모듈이 perl-core 종속 목록에 추가됩니다. 이제 CGI.pm이 perl-core 패키지와 함께 설치됩니다.
8.143. perl-CGI-Session
버그 수정
- BZ#657359
- 이전에는 패키지에서 여러 빌드 시간 종속성이 누락되었습니다. 그 결과 소스에서 패키지를 다시 빌드할 수 없었습니다. 이번 업데이트에서는 누락된 종속성이 패키지에 추가되어 이제 예상대로 소스에서 다시 빌드할 수 있습니다.
8.144. perl-Config-General
8.145. perl-DateTime
버그 수정
- BZ#978360
- 이전에는 oscap::Duration이 2012-07-01으로 윤초를 인식하지 못했기 때문에 2012-06-30T23:59:60 초를 통해 컴퓨팅 시간이 부정확했습니다. 이 버그를 해결하기 위해 2012-06-30 끝에 윤초가 추가되었으며 perl-DateTime 윤초 데이터베이스에 추가되었습니다. 이제 Perl 모듈을 사용하는 시간 산정 및 oscap::Duration은 이제 2012-06-30 초의 윤초를 올바르게 인식합니다.
8.146. perl-Makefile-Parser
버그 수정
- BZ#657496
- 이전 버전에서는 perl-Makefile-Parser 소스 RPM 패키지가 perl-Time-HiRes 패키지를 설치하지 않은 경우 빌드 프로세스가 Makefile.PL 스크립트를 실행하지 못했습니다. 이번 업데이트를 통해 MDOM::Document::Gmake, MDOM::Gmake 및 Time::HiRes Perl 모듈에 대한 빌드 시간 종속성이 RPM 패키지에 추가되어 perl-Makefile-Parser 소스 패키지가 예상대로 최소 환경에 빌드할 수 있습니다.
8.147. perl-Net-DNS
버그 수정
- BZ#766357
- 이전 버전에서는 AAAA 레코드의 동적 업데이트로 인해 주소가 지정되지 않은 경우에도 AAAA 레코드가 RDATA 항목을 생성하는 사전 요구 사항에 대해 DNS 모듈이 FORMERR 오류를 반환했습니다. 결과적으로 DNS 영역에서 AAAA 레코드를 제거하는 데 실패했습니다. 이번 업데이트에서는 필요한 데이터가 정의되고 AAAA 레코드를 제거하는 검사가 추가되었습니다.
8.148. perl-Socket6
버그 수정
- BZ#953873
- Socket6에 대한 도움말 페이지를 호출할 때 수동 페이지를 찾을 수 없습니다. POD(Plain Old Documentation)를 수동 페이지로 변환하도록 빌드 스크립트가 수정되었습니다. 그 결과 "man Socket6" 명령은 socket6 Perl 모듈에 대한 Socket6 Cryostat 매뉴얼 페이지를 예상대로 올바르게 표시합니다.
8.149. perl-Test-Memory-Cycle
버그 수정
- BZ#621089
- 이전에는 perl-Test-Memory-Cycle 패키지에 빌드 요구 사항이 누락되었습니다. 결과적으로 패키지를 빌드할 수 없었습니다. 이번 업데이트에서는 perl-CGI 패키지 빌드 요구 사항을 perl-Test-Memory-Cycle.spec 파일에 추가하고 perl-Test-Memory-Cycle을 예상대로 빌드할 수 있습니다.
8.150. perl-Test-MockObject
버그 수정
- BZ#661804
- perl-Test-MockObject 소스 RPM 패키지를 빌드하면 perl-CGI 패키지가 테스트 실행에 실패했습니다. 이 버그를 수정하기 위해 CGI, Test::Builder 및 Test:: Cryostat Perl 모듈에 대한 빌드 시간 종속성이 RPM 패키지에 선언되었습니다. 따라서 최소한의 환경에서 perl-Test-MockObject 소스 RPM 패키지를 다시 빌드할 수 있습니다.
8.151. perl-XML-Dumper
버그 수정
- BZ#652833
- XML::Dumper 모듈은 XML::Parser 모듈에 대한 종속성이 누락되어 사용할 수 없습니다. 이번 업데이트에서는 perl- XML-Dumper 사양 파일에 필요한 종속성을 추가하고 XML::Dumper를 이제 예상대로 사용할 수 있습니다.
8.152. php
보안 수정
- CVE-2006-7243
- PHP가 NULL 문자로 파일 이름을 올바르게 처리하지 않은 것으로 확인되었습니다. 원격 공격자는 이 취약점을 악용하여 PHP 스크립트가 예기치 않은 파일에 액세스하고 의도한 파일 시스템 액세스 제한을 우회할 수 있습니다.
- CVE-2013-4248
- NULL 바이트가 포함된 호스트 이름이 포함된 인증서를 처리할 때 PHP의 SSL 클라이언트 호스트 이름 ID 검사에서 취약점이 발견되었습니다. 공격자가 신뢰할 수 있는 인증 기관에서 서명한 신중하게 작성한 인증서를 얻을 수 있는 경우 공격자는 인증서를 사용하여 중간자 공격을 수행하여 SSL 서버를 스푸핑할 수 있습니다.
- CVE-2013-1643
- PHP#159 구문 분석기에서#159 메시지 구문 분석 중에 외부 XML 엔터티 확장을 허용했음을 확인했습니다. 원격 공격자는 이 취약점을 악용하여 Cryostat 확장을 사용하여 PHP 애플리케이션에 액세스할 수 있는 임의의 파일을 읽을 수 있습니다.
버그 수정
- BZ#892158, BZ#910466
- 이전 버전에서는 allow_call_time_pass_reference 설정이 비활성화되면 Apache 서버의 가상 호스트가 특정 PHP 콘텐츠를 처리하려고 할 때 세그먼트 오류로 종료될 수 있었습니다. 이 버그는 수정되었으며 allow_call_time_pass_reference가 꺼지면 가상 호스트가 더 이상 충돌하지 않습니다.
- BZ#947429
- 이번 업데이트 이전에는 fclose(), file_put_contents() 또는 copy() 함수 작업 중에 오류가 발생한 경우 함수가 이를 보고하지 않았습니다. 이로 인해 데이터가 손실될 수 있었습니다. 이번 업데이트를 통해 앞서 언급한 기능이 수정되어 오류를 올바르게 보고합니다.
- BZ#969110
- SQLSTATE 오류 코드에 대한 내부 버퍼는 최대 5자를 저장할 수 있습니다. 이전에는 특정 호출이 이 제한을 초과하면 버퍼 오버플로가 발생했습니다. 이번 업데이트를 통해 5자보다 긴 메시지가 자동으로 기본 "HY000" 문자열로 교체되어 오버플로가 발생하지 않습니다.
기능 개선
- BZ#953814
- 이번 업데이트에서는 php 패키지에 다음 rpm 매크로를 추가합니다. %_php, %php_inidir, %php_incldir.
8.153. Piranha
8.153.1. RHBA-2013:1618 - piranha 버그 수정 업데이트
버그 수정
- BZ#903711
- 이전에는 모든 실제 서버를 사용할 수 없는 경우 lvsd 데몬이 "sorry server" 대체 서비스를 제대로 활성화하지 않았습니다. 그 결과 실제 서버가 없는 가상 서비스에 대한 들어오는 트래픽은 "심리 서버"로 전달되지 않았습니다. 이 버그가 수정되었으며 lvsd 데몬은 실제 서버를 사용할 수 없는 경우 "서버"를 올바르게 활성화합니다.
- BZ#980169
- 경우에 따라 짧은 네트워크 중단, director 간의 높은 대기 시간 또는 공격적인 keepalive 및 deadtime 설정으로 인해 대부분 lvsd 데몬이 시그널링 데몬에 의해 신호를 받을 때 제대로 종료되지 않았습니다. 결과적으로 lvsd는 여러 가상 IP(VIP)가 있는 마스터 및 백업 디렉토리에서 모두 실행되었습니다. 이번 업데이트를 통해 lvsd가 Mac 데몬에서 모든 신호를 올바르게 캡처하고 처리하도록 수정되었습니다. 결과적으로 중복 VIP가 올바르게 제거됩니다.
8.154. 389-ds-base
버그 수정
- BZ#830334
- 오류 코드를 잘못 해석하기 때문에 Directory Server는 잘못된 체인 구성 설정으로 디스크 전체 오류로 간주하여 예기치 않게 종료되었습니다. 이제 잘못된 연결 구성 설정이 지정되면 더 적절한 오류 코드가 사용되고 서버가 더 이상 종료되지 않습니다.
- BZ#905825
- Red Hat Enterprise Linux 6.3에서 버전 6.4로 업그레이드한 후 업그레이드 스크립트에서
PamConfig
오브젝트 클래스의 스키마 파일을 업데이트하지 않았습니다. 결과적으로 여러 인스턴스 및 pamFilter 속성 구성과 같은 PAM(Pluggable Authentication Module)의 새로운 기능을 스키마 위반으로 인해 사용할 수 없었습니다. 이번 업데이트를 통해 업그레이드 스크립트는PamConfig
오브젝트 클래스의 스키마 파일을 예상대로 업데이트합니다. 결과적으로 새로운 기능이 이제 제대로 작동합니다. - BZ#906005
- 이전에는 valgrind 테스트 모음에서
modify_update_last_modified_attr()
함수에서 반복 메모리 누수를 보고했습니다. 이러한 누출의 크기는 수정 호출당 60-80바이트 사이를 평균하므로 수정 작업이 자주 발생하는 환경에서 문제가 발생할 수 있습니다. 이번 업데이트를 통해modify_update_last_modified_attr()
함수에서 메모리 누수가 더 이상 발생하지 않습니다. - BZ#906583
- 특정 상황에서 디렉터리
서버
(DS)는 문자 경우에만 이전 값과 다른 새 값에 대해 다중 값 속성을 교체할 수 없었습니다. 그 결과 코드 20 오류 메시지가 표시되었습니다.Type or value exists
이번 업데이트를 통해DS
가 수정 요청을 올바르게 처리하도록 수정되었으며 특성 값의 문자 사례는 이제 복잡하지 않고 변경될 수 있습니다. - BZ#907985
- 특정 상황에서 uidNumber 특성으로 항목을 생성하려고 할 때
DB_LOCK_DEADLOCK
오류 코드를 사용하여DNA
(Distributed Numeric Assignment) 플러그인 로그인 메시지입니다. 이 버그가 수정되었으며 이제DNA
가 이 케이스를 올바르게 처리하며 위의 시나리오에 오류가 더 이상 기록되지 않습니다. - BZ#908861
Posix Winsync
플러그인은 내부modify()
기능을 불필요하게 호출했습니다. 이 내부modify()
호출에 실패하고 다음 메시지가 기록되었습니다.slapi_modify_internal_set_pb: NULL parameter
이번 업데이트를 통해Posix Winsync
가 수정되었으며 더 이상modify()
을 호출하지 않습니다. 결과적으로 앞서 언급한 메시지가 더 이상 기록되지 않습니다.- BZ#910581
- 특정 상황에서
/etc/dirsrv/slapd-dstet-mkubik/dse.ldif
파일이 서버 종료 후 0바이트 또는 시스템 전원이 꺼진 경우 0바이트로 작성되었습니다. 결과적으로 시스템을 다시 시작한 후 DS 또는 IdM 시스템이 시작되지 않아 프로덕션 서버 중단이 발생했습니다.dse.ldif
가 작성된 서버 메커니즘이 수정되었으며 설명된 경우 서버 중단이 더 이상 발생하지 않습니다. - BZ#913215
- 이번 업데이트 이전에는 tombstone 항목을 제거하는 동안
ns-slapd
데몬이 세그먼트 오류로 예기치 않게 종료되었습니다. 이 버그는 수정되었으며 tombstone 항목을 제거해도 더 이상ns-slapd
가 충돌하지 않습니다. - BZ#921937
- 이전에는
schema-reload
플러그인이 스레드로부터 안전하지 않았습니다. 결과적으로 부하가 많은schema-reload.pl
스크립트를 실행하면ns-slapd
프로세스가 세그먼트 오류로 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 스레드로부터 안전한 스키마 로드가 수정되었으며schema-reload
.pl - BZ#923407
DNA
(Distributed Numeric Assignment) 플러그인의 잘못된 잠금 타이밍으로 인해 다른 플러그인과 함께DNA
작업을 실행할 때 교착 상태가 발생했습니다. 이 업데이트는 문제가 있는 잠금의 릴리스 타이밍을 이동하고,DNA
는 더 이상 앞서 언급한 시나리오의 교착 상태를 유발하지 않습니다.- BZ#923502
- 특정 상황에서 지역 변수가 부족하면
modrdn
작업이 세그먼트 오류로 인해 예기치 않게 종료되었습니다. 이번 업데이트에서는 로컬 변수 선언이 범위를 벗어나지 않도록 수정합니다. 결과적으로modrdn
작업이 더 이상 충돌하지 않습니다. - BZ#923503
- 이전에는
replica-force-cleaning
옵션이 활성화된cleanallruv
작업에서 모든 구성 속성을 제거하지 않았습니다. 결과적으로 서버가 다시 시작될 때마다 작업이 시작되었습니다. 이번 업데이트를 통해cleanallruv
검색 메커니즘이 수정되었으며 서버가 다시 시작되면cleanallruv
이 더 이상 재시작되지 않습니다. - BZ#923504
Acl
플러그인의 버그로 인해 존재하지 않는 항목에서getEffectiveRights
요청을 사용할 때 NULL 포인터 역참조가 발생할 수 있습니다. 결과적으로 서버는 세그먼트 장애로 예기치 않게 종료되었습니다. 이번 업데이트를 통해Acl
이 NULL 항목 포인터를 확인하도록 수정되었습니다. 결과적으로 서버가 더 이상 충돌하지 않으며 기존 항목이 아닌 항목에서getEffectiveRights
요청을 사용할 때 적절한 오류 메시지가 표시됩니다.- BZ#923909
- 기본
sasl_io
버퍼의 크기가 충분하지 않기 때문에 서버에서 SASL 연결을 거부할 수 있었습니다. 이번 업데이트를 통해 버퍼 크기가 65,536바이트로 증가했습니다. 또한 사용자는nsslapd-sasl-max-buffer-size
설정을 사용하여 이 값을 늘릴 수 있습니다. 결과적으로 SASL 연결은 이제 복잡하지 않고 허용됩니다. - BZ#947583
- 이전에는 389-ds-base 패키지의 복제 충돌 해결을 담당하는 코드가 충돌 DN 생성, 삭제된 상위 항목을 검색하고 삭제된 항목의 범위를 검사하는 여러 경우 제대로 작동하지 않았습니다. 결과적으로 양의 하위 개수가 있지만 자식이 없는 중간 노드 항목이 생성될 수 있었습니다. 그런 다음 서버는 이러한 항목 삭제를 거부했습니다. 이번 업데이트에서는 복제 충돌 해결 코드가 수정되어 잘못된 노드 입력이 발생하지 않습니다.
- BZ#951616
- 이전에는 Active Directory의 그룹에 동기화되지 않은 유형의 컨테이너에 있는 멤버가 포함된 경우 LDAP 서버와 그룹을 동기화하지 못했습니다. 결과적으로 유효한 멤버가 동기화되지 않았습니다. 이번 업데이트를 통해 이러한 컨테이너의 항목이 생략되고 설명된 경우 동기화가 성공적으로 수행됩니다.
- BZ#953052
- 이번 업데이트 이전에는 389-ds-base 패키지의 특정 스키마 정의가 LDAP RFC 2252 표준을 준수하지 않았습니다. 그 결과 LDAP 클라이언트의 문제가 발생했을 수 있었습니다. 이번 업데이트를 통해 이러한 스키마 정의가 LDAP RFC 2252를 준수하도록 수정되었습니다.
- BZ#957305
- 수백 개의 동시 연결 및 작업의 부하가 매우 높으면
Directory Server
에서 연결 처리 코드에서 경쟁 조건이 발생할 수 있었습니다. 결과적으로 서버는 세그먼트 장애로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 연결 개체를 업데이트하는 코드가 연결 뮤지컬 개체로이동되었습니다
. 결과적으로Directory Server
가 높은 로드에서 충돌하지 않습니다. - BZ#957864
- 이번 업데이트 이전에는 단순 페이지 결과 제어에서 비동기 검색을 지원하지 않았습니다. 결과적으로
Directory Server
에서 많은 수의 비동기 검색 요청을 수신하면 일부 요청이 오류 53으로 종료되었습니다.LDAP_UNWILLING_TO_PERFORM
이번 업데이트를 통해 비동기 검색 지원이 Simple Paged Results 로 구현되었습니다. 결과적으로 디렉터리 서버는 집약적인 비동기 검색 요청을 안전하게 처리합니다. - BZ#958522
- 이전에는 데이터베이스에서 항목을 로드할 때 더 적절한
str2entry_fast()
함수 대신str2entry_dupcheck()
함수가 호출되었습니다. 이 동작이 변경되었으며 이제 설명된 시나리오에서str2entry_fast()
가 호출됩니다. - BZ#962885
- Red Hat Enterprise Linux Identity Mangement 서버의 업그레이드로 인해 보안상의 이유로 nsslapd-port 변수의 값이 "0"으로 변경되었습니다. nsslapd-port는 복제에서 사용하는 RUV(Replica Update Vector)를 구성하는 데도 사용됩니다. 이전 버전에서는 복제 시작 코드가 0 nsslapd-port를 발견하면 RUV가 제거되었습니다. 그 결과 복제가 응답하지 않았습니다. 이번 업데이트를 통해 앞서 언급한 시나리오에서 RUV가 더 이상 제거되지 않으므로 복제가 중단됩니다.
- BZ#963234
- 이전에는 디렉터리 서버에서 빈 제어 목록을 올바르게 처리하지
않았습니다
. 그 결과 LDAP 프로토콜 오류가 반환되었습니다. 이번 업데이트를 통해Directory Server
가 0 길이의 시퀀스를 올바르게 처리하도록 수정되어 오류가 발생하지 않습니다. - BZ#966781
- 새 LDAPS 또는 LDAPI 연결 요청과 동시에 새 LDAP 연결 요청이 있는 경우 디렉터리
서버는
LDAP 요청만 처리했습니다. 이번 업데이트를 통해Directory Server
가 모든 리스너 요청을 동시에 처리하도록 수정되었습니다. - BZ#968383
- 이번 업데이트 이전에는 잘못된 외부 SASL 바인딩을 생성할 때 잘못된 오류 코드(err=0)가 반환되었습니다. 이번 업데이트를 통해 앞서 언급한 시나리오에서 적절한 오류 코드(err=48)가 반환됩니다.
- BZ#968503
- startTLS 요청을 처리하는 동안
Directory Server
(DS)에 오류가 발생하면 서버는 응답을 클라이언트에 다시 작성하려고 했습니다. 그 결과 DS가 응답하지 않았습니다. 이번 업데이트를 통해 네트워크 오류의 경우에도 startTLS 요청을 올바르게 처리하도록 DS가 수정되었습니다. 결과적으로 DS는 더 이상 앞서 언급한 시나리오에서 중단하지 않습니다. - BZ#969210
- 이전에는
listen()
함수의backlog
매개변수 크기가 "128"으로 설정되었습니다. 결과적으로 서버가 많은 양의 동시 연결 요청을 처리하면백로그
크기를 초과하여 서버가 연결 요청을 삭제할 수 있었습니다. 이번 업데이트를 통해백로그
크기를 변경할 수 있도록nsslapd-listen-backlog-size
속성이 추가되었습니다. - BZ#970995
- 이전에는
Directory Server
의 디스크 모니터링 기능이 제대로 작동하지 않았습니다. 로깅 기능이 "심각"으로 설정되어 로깅이 비활성화된 경우 순환된 로그가 삭제되었습니다.nsslapd-errorlog-level
속성이 0인 값으로 명시적으로 설정된 경우 디스크 모니터링 기능이 디렉터리서버
를 예상대로 중지하지 않았습니다. 이번 업데이트에서는 디스크 모니터링 기능의 설정을 수정하고 중요한 임계값에 도달하면 서버가 종료됩니다. - BZ#971033
- 이번 업데이트 이전에는 현재 연결된 클라이언트 수를 저장하는
connection
속성이disconnect_server_nomutex()
및connection_reset()
함수에서 두 번 잘못 증가했습니다. 그 결과 속성에 잘못된 값이 포함되었습니다. 이 버그가 수정되었으며 이제연결
에서 올바른 수의 연결된 클라이언트 수를 저장합니다. - BZ#972976
Directory Server
(DS)가 복제 및DNA
플러그인을 모두 사용하고 클라이언트는 동일한 항목에 대한 ADD 또는 DELETE 요청 시퀀스를 보낸 경우 DS에서 다음 메시지를 반환했습니다.modify_switch_entries failed
이 버그는 수정되었으며 앞서 언급한 메시지가 더 이상 반환되지 않습니다.- BZ#973583
- 내부
암호
속성은Directory Server
(DS)를 다시 시작한 후 보존되지 않습니다. 이전에는 DS를 다시 시작한 후암호를
삭제하려고 하면 DS가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 DS가암호
특성이 있는지 확인하고 없는 경우 삭제를 건너뛰도록 수정되었습니다. 결과적으로 DS가 더 이상 설명 된 경우에 충돌하지 않습니다. - BZ#974361
- 이번 업데이트 이전에는 createTimestamp 특성을 기반으로 개별 사용자에 대한 정책을 구성하기 위해
계정
정책 플러그인을 사용할 때 consequent 바인딩 후 createTimestamp를 덮어쓰었습니다. 결과적으로계정 정책이
사용자를 잠그지 못했습니다. 이번 업데이트를 통해 바인딩이 성공한 후 createTimestamp가 더 이상 수정되지 않으며계정 정책은
이제 사용자를 예상대로 잠급니다. - BZ#974719
- 특정 상황에서 tombstone 항목을 처리할 때 modrdn 작업의 일관성 없는 동작으로 인해
Directory Server
(DS)가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 DS가 modrdn을 사용하여 tombstones를 올바르게 처리하도록 수정되어 충돌을 방지합니다. - BZ#974875
- 이번 업데이트 이전에는 속성을 암호화하도록 구성하면 온라인 가져오기가 서버에서 이 특성을 암호화하지 못했습니다. 이번 업데이트를 통해 온라인 가져오기 중에 소비자 측의 암호화를 통해 이 버그를 수정할 수 있습니다.
- BZ#975243
- 이전에는 계정 정책에서 createTimestamp 속성을 제거한 후 디렉터리 서버(DS)에서 이 속성을 계속 적용했습니다. 이 버그는 수정되었으며 createTimestamp를 DS 계정 정책에서 효과적으로 제거할 수 있습니다.
- BZ#975250, BZ#979169
- 이전에는 동시 검색, 업데이트 및 복제 작업을 혼합하여 변경 로그 리더, 작성자 및 주요 데이터베이스 작성자 간에 교착 상태가 발생할 수 있었습니다. 결과적으로 업데이트 작업이 실패했습니다. 이번 업데이트를 통해 새로운
nsslapd-db-deadlock-policy
구성 매개변수가 도입되었습니다. 이 매개 변수의 기본값은9
로 설정되며 교착 상태의 경우 마지막 잠금기를 종료합니다. 이 값을6
으로 변경하면 가장 적은 쓰기 잠금이 있는 로커가 종료되며 빈번한 교착 상태가 발생하는 사용자에게 권장됩니다. - BZ#976546
- 이번 업데이트 이전에는 검색 중에 요청된 특정 속성을 건너뛰면 반환된 속성 이름과 값이 대문자로 변환되는 경우가 있었습니다. 이번 업데이트에서는 요청된 속성 세트에서 인증되지 않은 특성을 제거하여 반환된 속성 또는 값의 이름이 올바른 형식으로 보존됩니다.
- BZ#979435
- 이전에는 다중 마스터 복제 환경에서 단일 값 속성을 수정한 후 이 변경 사항이 다른 서버에 복제되지 않았습니다. 이번 업데이트를 통해 복제 업데이트를 처리하는 코드가 변경되었습니다. 결과적으로 단일 값 특성에 대한 수정 작업이 올바르게 복제됩니다.
- BZ#982325
- 이전 버전에서는 ldapmodify 유틸리티를 사용하여 "nsslapd-disk-monitoring-threshold" 속성을 예상대로 설정했지만 ldapsearch 유틸리티의 버그로 인해 treshold 값이 음수로 표시되었습니다. 이번 업데이트에서는 ldapsearch의 버그가 수정되고 올바른 treshold 값이 표시됩니다.
- BZ#983091
- 이전에는 Directory Server(DS)에서 이전 연결에서 사용하는 메모리를 제대로 해제하지 않았습니다. 결과적으로 장기간 분당 수백 개의 연결을 열고 닫을 때 메모리 누수가 발생했습니다. 이번 업데이트를 통해 DS가 예상대로 이전 연결에서 사용하는 메모리를 해제하도록 수정되었습니다. 결과적으로 앞서 언급한 시나리오에서는 메모리 누수가 더 이상 발생하지 않습니다.
- BZ#986131
- USN (Update Sequence Number) 구성으로 인해 rootdse 디렉터리의 lastusn 변수의 초기 값이 예상 "-1" 대신 "18446744073709551615"로 표시되었습니다. 이 업데이트는 초기 lastusn에 대한 특별한 처리를 추가합니다. 결과적으로 이 값은 예상대로 "-1"으로 설정됩니다. USN 인덱스 파일에 음수 값이 발견되면 초기 값으로 재설정됩니다.
- BZ#986424
- 이번 업데이트를 통해 가능한 메모리 누수 및 안정성 문제를 방지하기 위해 몇 가지 마이너 코딩 오류가 수정되었습니다.
- BZ#986857
- 로깅 기능이 "심각"으로 설정되지 않은 경우 디스크 공간 확인 중에 logs 디렉터리의 마운트 지점을 잘못 건너뛰었습니다. 구성 설정 처리가 수정되었으며 로그 디렉터리는 더 이상 건너뛰지 않습니다.
- BZ#987703
- 이전에는 복제 전송 또는 바인딩에 set_krb5_creds() 함수를 사용할 때 메모리 누수가 발생했습니다. 기본 소스 코드가 수정되어 메모리 누수가 더 이상 발생하지 않습니다.
- BZ#988562
- 여러 클라이언트가 Directory Server(DS)에 연결된 경우 각 클라이언트가 사용자를 추가하고 삭제하면 서버 교착 상태가 발생할 수 있었습니다. 이번 업데이트를 통해 교착 상태를 방지하기 위해 패치가 도입되었습니다.
- BZ#989692
- 서버 측 정렬 요청이 평가되면 "sort type" 매개변수가 요청의 첫 번째 속성에서만 등록되었으며 다른 "sort type" 값이 있는 경우에도 다음 속성이 무시되었습니다. 그 결과 정렬 작업이 잘못 수행되었습니다. 이번 업데이트를 통해 서버 측 정렬이 요청의 각 정렬 속성에 대해 "sort type"을 재설정하도록 디렉터리 서버가 수정되었습니다. 결과적으로 정렬이 올바르게 처리됩니다.
- BZ#1002260
- 스키마 오류로 인해 시스템 업그레이드 후 Directory Server(DS)를 시작하지 못했습니다. 이 버그가 수정되었으며 이제 DS가 설명된 경우 올바르게 작동합니다.
- BZ#1006846
- 하위 백엔드를 초기화하기 전에 복제를 구성한 경우 임시 하위 접미사가 실제 하위 접미사 항목으로 업데이트되지 않았습니다. 결과적으로 서버 검색에서 하위 접미사 아래에 항목을 반환하지 못했습니다. 이번 업데이트를 통해 실제 하위 접미사가 추가되면 항목 인덱스의 임시 항목 ID가 실제 항목 ID로 교체됩니다. 결과적으로 search는 하위 접미사 항목을 성공적으로 반환합니다.
- BZ#1007452
- nsDS5ReplicaName 변수의 특정 특정 값을 사용하면 복제가 손상되었을 수 있습니다. 이번 업데이트를 통해 모든 복제본 이름이 올바르게 처리됩니다.
- BZ#1008013
- 경우에 따라 TLS 또는 SSL 프로토콜을 사용하여 나가는 작업을 여러 개 처리할 때 Directory Server가 응답하지 않았습니다. 기본 소스 코드가 수정되었으며 이 시나리오에서는 서버가 더 이상 중단되지 않습니다.
- BZ#1013735
- 이전에는 Directory Server(DS)가 CLEANALLRUV 작업을 지원하지 않는 복제본에서 작동한 경우 이 작업을 실행하면 DS 응답하지 않게 되었습니다. 이번 업데이트를 통해 DS가 CLEANALLRUV를 지원하지 않는 복제본을 건너뛰도록 수정되어 이 버그를 수정합니다.
- BZ#1016038
- 이전에는 AD(Active Directory) 항목을 확인할 때 대상의 직접 자식만 확인되었습니다. 결과적으로 더 깊은 수준의 AD 항목이 Directory Server에 동기화되지 않았습니다. 이 버그가 수정되었으며 대상의 하위 디렉터리가 이제 모든 수준에서 동기화됩니다.
8.155. pki-core
8.155.1. RHBA-2013:1682 - pki-core 버그 수정 업데이트
버그 수정
- BZ#887305
- 이전에는 pki-ca 패키지를 설치한 후 /var/run/pki/ca/ 디렉터리에 잘못된 SElinux 컨텍스트가 할당되었습니다. 이번 업데이트를 통해 설치 후 프로세스 중에 restorecon 명령이 /var/run/pki/ca/에 적용됩니다. 결과적으로 이 디렉터리에 올바른 SElinux 컨텍스트로 레이블이 지정됩니다.
- BZ#895702, BZ#999055
- 이번 업데이트 이전에는 Red Hat Enterprise Linux 6.4 Identity Management 서버에서 pki-ca 데몬이 다시 시작되면 AVC 거부가 보고되었습니다. 이번 업데이트를 통해 pki-ca가 수정되었으며 앞서 언급한 시나리오에서는 AVC 거부가 더 이상 보고되지 않습니다.
- BZ#998715
- pki-selinux 패키지는 Red Hat Certificate System 인스턴스를 생성할 때 컨텍스트를 설정할 필요가 없도록 특정 기본 경로에 대한 파일 컨텍스트를 설정합니다. 이번 업데이트 이전에는 pki-selinux를 설치할 때 이러한 경로가 아직 존재하지 않은 경우 불필요한 경고 메시지가 표시되었습니다. 이제 이러한 메시지가 비활성화됩니다.
8.156. policycoreutils
버그 수정
- BZ#860506
- 이전에는 여러 semanage 명령줄 옵션이 예상대로 작동하지 않았습니다. 이번 업데이트를 통해 이러한 옵션이 수정되었으며 이제 효과적으로 작동합니다.
- BZ#868218
- 이번 업데이트를 통해 semanage 도움말 페이지가 semanage 도움말 페이지에 포함된 정보와 일치하도록 업데이트되었습니다.
- BZ#886059
- policycoreutils 패키지의 버그로 인해 ipa-server-selinux 패키지를 설치하지 못했습니다. 이 버그가 수정되어 ipa-server-selinux를 복잡한 문제 없이 설치할 수 있습니다.
- BZ#913175
- 이번 업데이트 이전에는 샌드박스 유틸리티에서 /etc/sysconfig/sandbox 파일에 지정된 심볼릭 링크를 허용하지 않았습니다. 그 결과 "sandbox -M" 명령을 실행하면 "No such file or directory" 메시지와 함께 실패했습니다. 기본 소스 코드가 수정되었으며 이제 문제가 발생하지 않고 /etc/sysconfig/sandbox에서 심볼릭 링크를 구성할 수 있습니다.
- BZ#916727
- 이전에는 수정 파일 스크립트에서 /sbin/ip6?tables-multi* 파일을 설명하는 정규식의 변경 사항을 인식하지 못했습니다. 그 결과 yum update 명령으로 시스템을 업데이트한 후 이러한 파일에 잘못 레이블이 지정되었습니다. 이번 업데이트를 통해 정규식 변경을 수락하도록 수정 파일이 수정되었습니다.
- BZ#918460
- 이번 업데이트 이전에는 "semanage boolean -m" 명령을 실행한 후 역추적이 반환되었습니다. 이 버그는 수정되었으며 앞서 언급한 시나리오에 더 이상 역추적이 표시되지 않습니다.
- BZ#928320, BZ#947504
- 이전에는 semanage 유틸리티에서 디렉터리 및 파일에 "none" 컨텍스트를 설정할 수 없었습니다. 결과적으로 이 작업을 시도할 때 다음 메시지가 표시되었습니다./usr/sbin/semanage: Type none is invalid, must be a file or device type이 버그는 수정되었으며 이제 복잡하지 않고 "없음" 컨텍스트를 설정할 수 있습니다.
- BZ#967728
- 이번 업데이트 이전에는 새 콘텐츠를 추가하는 대신 audit2allow 명령의 "-o" 옵션을 출력 파일의 내용을 덮어씁니다. 이 버그가 수정되었으며 "audit2allow -o"가 예상대로 작동합니다.
- BZ#984484
- 존재하지 않는 SELinux 부울을 활성화한 후 간단한 오류 메시지가 생성되었습니다. 이번 업데이트에서는 이 메시지를 보다 유용한 정보로 수정합니다.
- BZ#998974
- 존재하지 않는 부울을 영구적으로 변경하려고 하면 잘못된 오류 메시지가 생성되었습니다. 이 메시지는 문제의 원인에 대한 올바른 정보를 제공하도록 변경되었습니다.
기능 개선
- BZ#916734
- 이번 업데이트에서는 restorecon 유틸리티를 실행할 때 선택한 파일을 제외할 가능성이 추가되어 실행 시간을 크게 줄일 수 있습니다.
8.157. PowerTOP
버그 수정
- BZ#998021
- 프로세스별 오픈 파일 설명자의 기본 소프트 제한은 1024이며 프로세스별 파일 설명자의 기본 하드 제한은 4096입니다. 성능 카운터 하위 시스템을 사용하면 PowerTOP 툴이 복잡한 시스템의 제한을 초과할 수 있었습니다. 그 결과 perf에 대한 누락된 커널 지원에 대한 오류 메시지가 표시되었습니다. 이번 업데이트에서는 현재 프로세스의 소프트 및 하드 파일 설명자 제한을 커널 제한으로 일시적으로 늘리는 수정 사항이 추가되었습니다. 커널 제한이 여전히 충분하지 않으면 PowerTOP에 파일 설명자 제한을 수동으로 늘려야 함을 나타내는 오류 메시지가 표시됩니다.
8.158. pykickstart
버그 수정
- BZ#886010
- 하나의 Kickstart 파일에서 autopart 명령과 다른 kickstart 파티션 명령을 결합할 때 설치에 예기치 않게 오류가 발생했습니다. Kickstart 파일에 잘못된 파티션이 포함된 경우 구문 분석 오류로 인해 사용자에게 알림 및 설치가 중단되도록 기본 소스 코드가 수정되었습니다.
- BZ#924579
- Kickstart 파일에서 이름이 동일한 두 개의 논리 볼륨을 지정하면 이 부적절한 오류 메시지와 함께 설치에 실패했습니다.AttributeError: 'LogVolData' 오브젝트에 'device' 속성이 없습니다이번 업데이트를 통해 중복 이름이 올바르게 감지되고 적절한 오류 메시지가 표시됩니다.
- BZ#966183
- "-ipv6" 옵션이 지정된 "network" 명령이 포함된 Kickstart 파일을 실행하면 다음 메시지를 사용하여 설치가 예기치 않게 종료될 수 있었습니다.TypeError: 일부 인수가 문자열 형식 지정 중에 변환된 것은 아닙니다.이번 업데이트에서는 패치를 적용하여 이 버그를 수정하고 Kickstart 파일이 설명된 시나리오에서 예상대로 작동합니다.
기능 개선
- BZ#978252
- 이번 개선된 기능에는 kickstart 파일에서 "network" 명령에 대한 "--ipv6gateway" 옵션을 지정하는 기능이 추가되었습니다. 결과적으로 "network" 명령을 사용하여 네트워크 장치 구성에 IPv4 및 IPv6 기본 게이트웨이를 모두 지정할 수 있습니다.
8.159. pyparted
8.159.1. RHBA-2013:1616 - pyparted 버그 수정 업데이트
버그 수정
- BZ#896024
- 기본 소스 코드의 버그로 인해 parted.version() 함수를 실행하려고 하면 시스템 오류가 반환되었습니다. 이 버그가 수정되었으며 parted.version()을 예상대로 실행할 수 있습니다.
8.160. python
보안 수정
- CVE-2013-4238
- Python SSL 모듈에서 NULL 바이트가 포함된 X.509 인증서 필드를 처리하는 방식에서 취약점이 발견되었습니다. 공격자는 이 취약점을 악용하여 SSL 서버를 스푸핑하기 위해 중간자 공격을 수행할 수 있습니다. 이 문제를 악용하려면 공격자는 클라이언트가 신뢰하는 기관에서 서명한 신중하게 조작된 인증서를 받아야 합니다.
버그 수정
- BZ#521898
- 이전에는 python-tools 하위 패키지의 여러 Python 실행 파일이 #!/usr/bin/env python shebang으로 시작되었습니다. 이로 인해 대체 Python 버전을 설치하고 사용하기 어려웠습니다. 이번 업데이트를 통해 이러한 실행 파일의 첫 번째 줄이 Python의 시스템 버전을 명시적으로 참조하는 #!/usr/bin/python 으로 교체되었습니다. 결과적으로 사용자가 추측한 Python 버전을 이제 복잡도 없이 사용할 수 있습니다.
- BZ#841937
- 이번 업데이트 이전에는
sqlite3.Cursor.lastrowid
개체가 Turkish 로케일에 지정된 insert 문을 허용하지 않았습니다. 결과적으로 그래픽 설치 프로그램을 사용하여 Red Hat Enterprise Linux 6를 설치할 때 설치 언어로 "Turkish"를 선택하면 설치에 실패합니다. 이번 업데이트를 통해sqlite3.Cursor.lastrowid
가 수정되었으며 Turkish 로케일에서 더 이상 설치가 실패하지 않습니다. - BZ#845802
- 이전에는
SysLogHandler
클래스가 로그 메시지에 UTF-8 바이트 순서 마크(BOM)를 삽입했습니다. 결과적으로 이러한 메시지는 긴급 우선 순위 수준을 가진 것으로 평가되었으며 모든 사용자 콘솔에 기록되었습니다. 이번 업데이트를 통해SysLogHandler
는 더 이상 로그 메시지에 BOM을 추가하지 않으며 메시지에 올바른 우선 순위 수준이 할당됩니다. - BZ#893034
- 이전에는
/dev/u
모듈을 가져오지 못했습니다. 이로 인해 Yum 과 같은 후속 프로그램이 예기치 않게 종료되었습니다. 이 버그가 수정되었으며random
파일이 시스템에 없는 경우random.py
스크립트가 임의의random.py
는 이제/dev/urandom
없이 예상대로 작동합니다. - BZ#919163
WatchedFileHandler
클래스는 경쟁 조건에 민감하여 오류가 발생할 수 있었습니다. 결과적으로 새 로그 파일로 교체하지 못했습니다.WatchedFileHandler
가 수정되었으며 로그 교체가 이제 예상대로 작동합니다.- BZ#928390
- 이번 업데이트 이전에는 Python에서 특정 SSL(Secure Sockets Layer) 인증서의 대체 주체 이름을 읽지 않았습니다. 결과적으로 인증서 호스트 이름을 확인할 때 잘못된 인증 오류가 발생했습니다. 이번 업데이트에서는 대체 주체 이름 및 잘못된 인증 오류가 더 이상 처리되지 않습니다.
- BZ#948025
- 이전에는
SocketServer
모듈에서 시스템 호출 중단을 제대로 처리하지 않았습니다. 이로 인해 특정 HTTP 서버가 예기치 않게 종료되었습니다. 이번 업데이트를 통해SocketServer
가 중단을 처리하도록 수정되었으며 앞서 언급한 시나리오에서 서버가 더 이상 충돌하지 않습니다. - BZ#958868
timeout=None
인수를subprocess.Popen()
함수에 전달하면 업스트림 버전의Eventlet
라이브러리가 예기치 않게 종료되었습니다. 이 버그는 수정되었으며 설명 된 경우Eventlet
이 더 이상 실패하지 않습니다.- BZ#960168
SSLSocket
클래스가 활성화된 서버에 들어오는 연결이 자동do_handshake()
함수를 통과하지 못하면 연결이 열려 있습니다. 이 문제는 Python 2 버전에만 영향을 미쳤습니다. 기본 소스 코드가 수정되었으며 실패한 들어오는 연결이 올바르게 닫힙니다.- BZ#962779
- 여러
libexpat.so
라이브러리를 사용할 수 있는 경우 Python이 올바른 라이브러리를 선택하지 못했습니다. 이번 업데이트에서는_elementtree.so
에 명시적 RPATH가 추가되어 이 버그를 수정합니다. - BZ#978129
- 이전에는
urlparse
모듈에서 임의의 XML 스키마에 대해 URL의 쿼리 및 조각 부분을 올바르게 구문 분석하지 않았습니다. 이번 업데이트를 통해urlparse
가 수정되었으며 이 시나리오에서 올바른 구문 분석이 보장됩니다.
기능 개선
- BZ#929258
- 이번 업데이트에서는
collections.OrderedDict
데이터 구조를 collections 패키지에 추가합니다.collections.OrderedDict
은 애플리케이션 코드에서 json.dumps 루틴에서 문자열로 변환될 때 메모리 내 python 사전이 동일한 순서로 출력되도록 합니다.
8.161. python-beaker
버그 수정
- BZ#983292
- 이전에는 Beaker에서 MD5 알고리즘을 사용하여 고유한 16x 인코딩 세션 식별자를 생성했습니다. 그러나 이 알고리즘은 기본적으로 FIPS 모드에서 Python 런타임에서 지원되지 않습니다. 결과적으로 Beaker를 사용한 웹 애플리케이션은 특정 환경에서 새 세션을 생성하지 못했습니다. 이번 업데이트를 통해 MD5가 SHA1 알고리즘과 Base64 인코딩 스키마를 사용하여 후속 16x 인코딩으로 교체되었습니다. 결과적으로 Beaker는 FIPS 환경에서 올바르게 작동합니다.
8.162. python-ethtool
버그 수정
- BZ#855920
- 이전 버전에서는 firstboot.loader 모듈의 _haveNetwork() 루틴에서 IPv6 전용으로 설정할 때 "False"를 반환했습니다. 그 결과 네트워크 연결이 없었습니다. IPv6 전용 활성 장치를 감지하는 패치가 적용되고 _haveNetwork() 루틴은 이제 "True"를 예상대로 반환합니다.
- BZ#876211
- 이번 업데이트 이전에는 더 많은 IPv4 주소가 하나의 인터페이스에 바인딩된 경우 네트워크 인터페이스에 대한 정보를 표시하는 pifconfig 스크립트가 올바른 출력을 생성하지 못했습니다. 결과적으로 동일한 IPv4 주소를 가진 두 개의 인터페이스가 보고되었습니다. 패치가 적용되었으며 pifconfig 스크립트에서 여러 IPv4 주소를 올바르게 보고합니다.
8.163. python-urlgrabber
버그 수정
- BZ#807030
- 이전에는 utime() 시스템 호출에 오류가 있을 때 사용자가 reposync 명령을 사용하여 원격 YUM 리포지토리를 로컬 디렉터리에 동기화할 때 소스 코드의 결함으로 인해 역추적 오류가 발생했습니다. 이번 업데이트에서는 소스 코드의 오류를 수정하고 설명된 시나리오에서 역추적 오류가 발생하지 않습니다.
8.164. python-urwid
8.165. python-virtinst
버그 수정
- BZ#861972
- 호스트 장치에 연결된 USB 장치가 중복된 경우 vendorId 또는 productId 값을 "--host-device" 옵션에 전달하여 virt-install 유틸리티가 다음 메시지로 종료되었습니다.'vendor' 및 'product' 또는 'bus' 및 'device'가 필요합니다.이 메시지는 중복 장치에 대해 알려주지 않았으며, 이는 오류의 원인이었습니다. 메시지가 다음과 같이 수정되었습니다.ERROR 15e1:2007은 여러 노드 장치에 해당합니다.결과적으로 실패한 설치의 실제 원인에 대해 사용자에게 알립니다.
- BZ#916875
- 이전에는 "--disk" 매개변수에 해시("#") 문자가 포함된 경우 잘못된 오류 메시지가 표시되었습니다. 이 버그가 수정되었으며 이제 지원되지 않는 문자를 올바르게 알리는 오류 메시지가 표시됩니다.
- BZ#921480
- 이번 업데이트 이전에는 virt-install 유틸리티에서 기본적으로 스파스 논리 볼륨을 생성했습니다. 그러나 스파스 논리 볼륨에는 추가 구성이 필요하므로 고급 사용자 또는 관리 애플리케이션에서만 생성해야 합니다. 이번 업데이트를 통해 비스parse 모드는 기본값이며 사용 가능한 설정만 됩니다.
- BZ#946972
- 드문 경우지만 virt-clone 유틸리티에 복제 작업 중에 잘못된 속도 통계가 표시되었습니다. 이 버그가 수정되었으며 virt-clone이 작동할 때 올바른 속도 값이 표시됩니다.
- BZ#954262
- 특정 상황에서는 시스템에서 사용할 수 있는 ".treeinfo" 파일이 있는 경우 virt-install 유틸리티에서 이 파일에서 이미지 정보를 가져오려고 했습니다. ".treeinfo"에 이 정보가 포함되어 있지 않은 경우 virt-install이 예기치 않게 종료되었습니다. 이 버그가 수정되었으며 이제 virt-install 은 불완전한 ".treeinfo"인 경우 기본값을 사용합니다.
- BZ#980334
- 이전에는 비디오 장치의 모델 유형을 "qxl"에서 변경하려고 하면 virt-manager 유틸리티로 다음 오류 메시지가 반환되었습니다.VM 구성 변경 중 오류 발생: XML 오류: ram attribute는 qxl 유형에 대해서만 지원됨기본 소스 코드가 수정되었으며 비디오 장치의 모델 유형은 이제 복잡도 없이 변경될 수 있습니다.
기능 개선
- BZ#958496
- 이번 업데이트에서는 virt-manager 유틸리티에서 지원하는 수정된 설치 환경 목록이 제공됩니다.
8.166. python-weberror
버그 수정
- BZ#746118
- 이전에는 WebError 미들웨어에서 처리된 오류에 식별자를 할당할 때 MD5 알고리즘을 사용했습니다. 그러나 이 알고리즘은 기본적으로 FIPS 모드에서 Python 런타임에서 지원되지 않습니다. 결과적으로 웹 애플리케이션이 FIPS 모드에서 예외를 발생 시 WebError에서 예외를 처리하면 불완전한 오류 진단이 제공되었습니다. 이번 업데이트를 통해 MD5를 기반으로 하는 오류 식별이 자동으로 생성되지 않으므로 오류 식별자가 더 이상 처리되지 않을 때 문제가 발생하지 않습니다.
8.167. qemu-kvm
- CVE-2013-4344
- 단일 SCSI 대상에 대해 256개 이상의 LUN이 지정된 경우 QEMU에서 SCSI "REPORT LUNS" 명령을 처리하는 방식에서 버퍼 오버플로 결함이 발견되었습니다. 권한이 있는 게스트 사용자는 이 취약점을 사용하여 호스트의 QEMU 프로세스 메모리를 손상시킬 수 있으므로 QEMU 프로세스의 권한이 있는 호스트에서 임의의 코드가 실행될 수 있습니다.
버그 수정
- BZ#974617
- 이전에는 qcow2 파일 형식을 사용하여 디스크 이미지에 대한 할당 요청을 다시 시작할 때 카운터 변수가 올바르게 재설정되지 않았습니다. 결과적으로 클러스터 할당 코드의 이러한 디스크 이미지가 경우에 따라 손상되었습니다. 이번 업데이트에서는 qcow2 형식으로 사용 가능한 클러스터 수를 계산하고 설명된 시나리오에서 qcow2 디스크가 더 이상 손상되지 않는 방식을 변경합니다.
- BZ#927336
- 계산의 정수 오버플로로 인해 4GB 이상의 메모리가 있는
Virtio Cryostatoon 드라이버
를 사용할 때 QMP (QEMU 머신 프로토콜) 이벤트에서qemu-kvm
유틸리티에서 잘못된 메모리 크기를 보고했습니다. 이 버그를 해결하기 위해 패치가 제공되었으며qemu-kvm
은 현재 RAM의 올바른 양을 보고합니다. - BZ#917860
- 이전에는 Microsoft Windows XP 및 Microsoft Windows 7 게스트를 위한 스마트 카드 에뮬레이션이 스마트 카드 입력/출력 장치 오류로 인해 ATR(Answer To Reset) 파일 길이로 인해 실패했습니다. 이번 업데이트에서는 적절한 기록 바이트가 포함된 ATR 파일 길이를 생성하고 필요한 경우 USB 신호를 비활성화합니다. 이제 스마트 카드 에뮬레이션이 작동하고 앞서 언급한 시나리오에서 오류가 더 이상 발생하지 않습니다.
- BZ#916020
- 이전에는
qemu-kvm
유틸리티에서IOeventFD
기능을 활성화하지 않아virtio-blk
장치에 대한 IOeventFD 지원이 자동으로 비활성화되었습니다. 이번 업데이트에서는IOeventFD
기능을 활성화하고virtio-blk
장치에 대한IOeventFD
지원이 예상대로 작동합니다.
기능 개선
- BZ#670162
- qemu-img rebase 명령을 사용하여 백업 파일을 제거하는 새로운 기능이 구현되었습니다. 이제 qemu-img rebase 명령을 실행할 때 데이터 손실이 발생하지 않습니다.
- BZ#963420
- Red Hat Enterprise Linux 6.5는 Microsoft
Hyper-V
에서 만든 대로 VHDX (Hyper-V
가상 하드 디스크), 이미지 형식에 대한 읽기 전용 지원을 제공합니다. - BZ#960685
- Red Hat Enterprise Linux 6.5는 많은 VMware Virtualization 제품에서 만든 대로 하위 형식을 포함하여 VMDK (Virtual Machine Disk) 읽기 전용 지원에 대한 여러 가지 개선 사항을 제공합니다.
- BZ#848070
QEMU
에서GlusterFS
를 업데이트하면 로컬에 마운트된FUSE
파일 시스템을 사용하는libgfapi
라이브러리를 사용하여GlusterFS
볼륨에 대한 기본 액세스가 가능합니다. 이러한 기본 접근 방식은 상당한 성능 향상을 제공합니다.- BZ#884253
- Microsoft Windows 게스트 내에서 볼륨 제어 지원이 구현되었습니다. 사용자는 AC'97 codec를 사용하여 Microsoft Windows XP 게스트에서 볼륨 수준을 완전히 제어할 수 있습니다.
- BZ#914802
- 이 업데이트를 통해 가상 디스크의 메타데이터 덤프 지원이 구현되었습니다. 이제 호스트에서 실행 중인 타사 애플리케이션에서 QCOW2 이미지 형식의 세부 정보를 인식하지 않고도 게스트 이미지 콘텐츠를 읽을 수 있습니다. Linux 장치 매퍼와 함께 사용하여 QCOW2 이미지에 Linux 블록 장치로 액세스할 수 있습니다.
- BZ#911569
- Windows VSS(Visual SourceSafe) 버전과 유사하게 게스트에서 실행되는
QEMU
게스트 에이전트에 연결하는 스크립트를 사용하여 애플리케이션 일치 스냅샷을 생성할 수 있습니다. 이러한 스크립트는 정지 또는 thaw 작업 중에 데이터를 디스크에 플러시하는 애플리케이션에 알릴 수 있으므로 일관된 스냅샷을 만들 수 있습니다.
8.167.2. RHBA-2013:1750 - qemu-kvm 버그 수정 업데이트
버그 수정
- BZ#1025596
- 블록 계층의 최근 변경으로 인해 블록 길이를 계산하고 내부적으로 캐시하는 방식으로 인해 디스크 I/O 성능 저하가 발생했습니다. 이번 업데이트에서는 이러한 길이를 계산하고 성능을 예상 수준으로 복원하는 논리가 개선되었습니다.
- BZ#1029327
- 회귀 문제로 인해 "qemu-img info" 명령은 "cluster_size=512,preallocation=metadata" 옵션으로 응답하는 데 시간이 너무 오래 걸렸습니다. 이 버그는 수정되었으며 "qemu-img info"는 이제 1초 이내에 응답합니다.
- BZ#1029327
- 매우 작은 비표준 클러스터 크기(예: 512바이트)로 생성된 이미지에서 "qemu-img info" 명령은 이미지 생성 후 즉시 실행하는 데 시간이 오래 걸릴 수 있습니다. 이 버그는 수정되었으며 "qemu-img info"가 이제 예상대로 작동합니다.
- BZ#1029329
- "--copy-storage-all" 옵션을 사용하여 실시간 마이그레이션을 수행할 때 virsh 사용자 인터페이스가 다음 오류 메시지와 함께 실패했습니다."error: Unable to read from monitor: Connection reset by peer"이 버그는 회귀 문제로 인해 수정되었으며 실시간 마이그레이션이 성공적으로 완료되었습니다.
- BZ#1028252
- 이전에는 qemu(예: "qemu-img info" 명령)에서 VMWare ESX 이미지 파일을 열 수 없었습니다. 이 버그를 수정하는 패치가 제공되었으며 ESX 이미지가 올바르게 처리됩니다.
8.168. ql2400-firmware
8.169. ql2500-firmware
8.170. 할당량
버그 수정
- BZ#717948
- SELinux가 quotacheck 유틸리티에 대한 액세스를 거부했을 때 "quotacheck -c" 명령은 오류를 보고하지 않고 종료 코드 0으로 실패했습니다. 이번 업데이트를 통해 적절한 0이 아닌 종료 코드로 오류를 전파하고 이전 할당량 파일을 사용할 수 없는 경우 정확한 경고를 출력하도록 quotacheck 내부가 변경되었습니다. 결과적으로 quotacheck는 파일 시스템에서 할당량을 초기화하는 동안 오류를 올바르게 보고합니다.
기능 개선
8.171. rdesktop
버그 수정
- BZ#902912
- rdesktop 코드의 버그로 인해 rdesktop이 사용되는 동안 쉘에 오류 메시지가 지속적으로 표시되었습니다. 이 버그는 수정되었으며 rdesktop 세션 중에 메시지가 더 이상 생성되지 않습니다.
기능 개선
- BZ#701246
- 이번 업데이트를 통해 클러스터형 Windows Server 2008 R2 머신의 터미널 서비스 지원이 rdesktop 패키지에 추가되었습니다.
8.172. RDMA 스택
보안 수정
- CVE-2013-2561
- ibutils가 임시 파일을 처리하는 방식에서 취약점이 발견되었습니다. 로컬 공격자는 이 취약점을 악용하여 임의의 파일을 심볼릭 링크 공격을 통해 root 사용자로 덮어쓸 수 있습니다.
- CVE-2012-4516
- librdmacm은 ib_acm 서비스에 연결하기 위해 정적 포트를 사용했습니다. 해당 포트에서 특수하게 조작된 ib_acm 서비스를 실행할 수 있는 로컬 공격자는 이 취약점을 악용하여 librmdacm 애플리케이션에 잘못된 주소 해결 정보를 제공할 수 있습니다.
패키지 이름 | 업스트림 버전 |
---|---|
libibverbs | 1.1.7 |
libmlx4 | 1.0.5 |
librdmacm | 1.0.17 |
mstflint | 3.0 |
perftest | 2.0 |
qperf | 0.4.9 |
rdma | 3.10 |
- MPI(Message Passing Interface) 테스트 패키지의 여러 버그가 해결되어 더 많은 mpitest 애플리케이션이 기본 MPI 구현을 통과할 수 있습니다.
- libmlx4 패키지에는 이제 mlx4 포트 유형의 필요한 사용자 지정 구성이 initramfs dracut 빌드에 포함되어 있는지 확인하기 위해 dracut 모듈 파일이 포함되어 있습니다.
- perftest 및 qperf 패키지의 여러 테스트 프로그램은 이제 RoCE 인터페이스를 통해 또는 rdmacm 대기열 쌍 사용을 지정할 때 제대로 작동합니다.
- mstflint 패키지가 최신 업스트림 버전으로 업데이트되어 이제 새로 릴리스된 Mellanox Connect-IB 하드웨어에서 펌웨어를 굽을 수 있습니다.
- openmpi와 infinipath-psm 패키지 간의 호환성 문제는 이러한 패키지의 새 빌드로 해결되었습니다.
8.173. Readahead
버그 수정
- BZ#1017072
- readahead 패키지의 readahead-collect 툴은 시스템 부팅 시 auditd 데몬의 시작 프로세스를 지연했습니다. 이로 인해 감사, kdump 및 level level 전환에 대한 다양한 문제가 발생할 수 있었습니다. 부팅 프로세스 속도를 높이기 위해 이제 Readhead가 기본적으로 꺼져 있습니다. 필요한 경우 /etc/sysconfig/readahead 파일을 편집하여 읽기 헤드를 설정할 수 있습니다.
8.174. redhat-indexhtml
기능 개선
8.175. redhat-release
8.176. Red Hat Enterprise Linux 6.5 릴리스 노트
8.177. resource-agents
버그 수정
- BZ#784933
- 이전 버전에서는 exportfs 유틸리티를 사용하여 내보낸 공유를 재배치할 때
/var/llib/nfs/rmtab
파일의 크기가 두 배가 되었습니다. 이 버그는 수정되었으며 앞서 언급한 시나리오에서/var/lib/nfs/rmtab
파일 크기가 더 이상 두 배가되지 않습니다. - BZ#851188
- 이번 업데이트 이전에는
/proc/mounts
파일에서 장치를 검색할 때fs-lib.sh
에이전트가 후행 슬래시("/") 문자를 인식하지 못했습니다. 결과적으로 NFSv4 마운트가 모니터링되지 않았습니다. 이번 업데이트를 통해fs-lib.sh
가 슬래시 문자를 추적하도록 수정되었습니다. 결과적으로 NFSv4 마운트가 예상대로 관리 및 모니터링됩니다. - BZ#853220
oracledb.sh
스크립트의 버그로 인해 동일한 홈 디렉터리에서 실행되는 ORACLE 인스턴스가 여러 개 있을 때 스크립트에서 불필요한 지연이 발생했습니다. 버그가 수정되었으며 이제 home 디렉터리에 여러 ORACLE 인스턴스가 있는 경우oracledb.sh
가 지연 없이 작동합니다.- BZ#871659
- 완전히 종료하려면
postgres
에이전트가 SIGINT 신호를 수신해야 합니다. 이전에는 이 신호가 전송되지 않았으며postgres
는 정상 종료 대신 하드 종료를 수행했습니다. 이 동작이 수정되었으며 SIGINT가 이제 종료 시postgres
로 전송되어 정상 종료를 시도한 후 일정 시간이 지나면 에이전트가 여전히 활성화되어 있는 경우 SIGQUIT 신호가 전송됩니다. 결과적으로postgres
는 중지 작업 중에 정상 종료를 수행합니다. - BZ#884326
- 이전 버전에서는 HA-LVM 유틸리티에서 제어하는 중복되지 않은 장치(즉 미러 또는 RAID가 아님) 논리 볼륨(LV)에서 장치가 실패한 경우 볼륨 그룹에서 전체 LV를 자동으로 삭제할 수 있었습니다. 이 버그는 수정되었으며 이제 중복되지 않은 논리 볼륨에 장치 오류가 발생하면 볼륨 그룹에서 실패한 LV를 강제로 제거하는 대신 HA-LVM 이 서비스를 시작하지 못합니다.
- BZ#895075
- 이번 업데이트 이전에는
ip.sh
에이전트가 대문자가 포함된 IPv6 주소를 구성하지 않았습니다. 결과적으로 이러한 주소가 있는 리소스가 실패했습니다. 이번 업데이트를 통해ip.sh
가 IPv6 주소에 대해 대소문자를 구분하지 않도록 수정되었습니다. 결과적으로 대문자가 있는 IPv6 주소가 이제ip.sh
에 의해 올바르게 구성됩니다. - BZ#908457
- 이전에는
ip.sh
와 같은fs-lib.sh
스크립트를 기반으로 하는 에이전트가force_unmount
옵션이 활성화된 경우self_fence
옵션을 무시했습니다. 결과적으로 구성된self_fence
옵션이 활성화되지 않았습니다. 이 버그는 수정되었으며force_unmount
와 관계없이self_fence
가 허용됩니다. - BZ#948730
- 이번 업데이트를 통해 마운트 유틸리티에서 생성한 로그 메시지의 우선 순위가 이전
오류
에서 보다 적절한디버그
수준으로 변경되었습니다. - BZ#959520
/var/lib/nfs/statd/sm/
디렉터리의 잘못된 SELinux 컨텍스트로 인해rpc.statd
데몬을 시작할 수 없었습니다. 이 문제는 클러스터에 NFS 마운트가 포함된 경우에만 발생했습니다. 이번 업데이트에서는 SELinux 컨텍스트가 대상 디렉터리에서 상속되도록/var/lib/nfs/statd/sm/
디렉터리에 파일을 복사하는 방법을 수정합니다. 결과적으로rpc.statd
는 이제 복잡하지 않고 시작할 수 있습니다.- BZ#974941
- Cryostat 맵이 네트워크 스토리지에 사용되는 경우 netfs.sh,fs.sh 또는 clusterfs.sh 와 같은 클러스터 파일 시스템("fs")의 경우
use_findmnt
옵션이'false'
로 설정되어야 합니다.이전 버전에서는
use_findmnt
가 잘못 설정되고 192.0.2. 맵을 사용할 수 없어 "fs" 리소스가 있는 rgmanager 서비스가 결과적으로 네트워크가 복원될 때까지 응답하지 않았습니다.기본 소스 코드가 수정되었으며 앞서 언급한 시나리오에서 rgmanager 서비스가 더 이상 중단되지 않습니다.
- BZ#976443
- 이번 업데이트 이전에는
lvm.sh
에이전트가 클러스터 노드에서 나타내는 태그를 정확하게 감지할 수 없었습니다. 결과적으로 다른 노드가 클러스터에 다시 참여하면 클러스터 노드의 활성 논리 볼륨이 실패했습니다. 이번 업데이트를 통해lvm.sh
는 태그가 클러스터 노드를 나타내는지 여부를 올바르게 탐지합니다. 결과적으로 노드가 클러스터에 다시 참여하면 다른 노드에서 볼륨 그룹이 더 이상 실패하지 않습니다. - BZ#981717
tomcat-6
서비스의 여러 인스턴스가 클러스터 리소스로 사용된 경우 사용자 지정/conf/tomcat6.conf
구성 파일의TOMCAT_USER
설정이 무시되었습니다. 결과적으로 각 인스턴스는 항상TOMCAT_USER
를root
로 설정하여 시작되었습니다. 이 버그가 수정되었으며 이제TOMCAT_USER
가 설명된 경우에 올바르게 적용됩니다.- BZ#983273
- 특정 상황에서
tomcat-6
리소스의tomcat.conf
구성 파일이 사용할 수 없는 공유 스토리지 리소스에 저장된 경우tomcat-6
의 후속 중지 작업이 실패했습니다. 이 버그는 수정되었으며tomcat.conf
를 읽을 수 없을 때tomcat-6
를 성공적으로 중지할 수 있습니다. - BZ#998012
- 상태 모니터링 중에
/tmp
디렉토리를 사용해야 하는fs.sh
또는clusterfs.sh
와 같은 파일 시스템 기반 리소스입니다. 파일 시스템을 마운트한 후 이 디렉터리가 가득 차면 파일 시스템이 올바르게 마운트되어 있어도 모니터 작업이 실패합니다./tmp
디렉토리는 파일 시스템 모니터 중에 더 이상 사용되지 않으므로 이 버그를 수정합니다. - BZ#1009772
- 두 노드에서 rgmanager 를 동시에 시작한 경우 이러한 노드는 동시에 lvchange --deltag 명령을 실행하고 LVM 헤더를 손상시킬 수 있습니다. 이번 업데이트를 통해 두 노드에서 rgmanager 를 동시에 마운트하더라도 LVM 헤더가 손상되지 않습니다.
- BZ#1014298
- 이전에는 NFS 서버가 응답하지 않을 때 fuser 유틸리티에서 NFS 파일 시스템의 마운트 해제를 차단할 수 있었습니다. 이번 업데이트를 통해 fuser 가 NFS 마운트에 대한 열려 있는 파일 설명자로 프로세스를 검색하는 사용자 지정 논리로 교체되어 이 버그를 수정합니다.
기능 개선
- BZ#670022
- 이번 업데이트를 통해 Oracle Database 11g에 대한 지원이
oracledb
,orainstance
리소스에이전트에
추가되었습니다. - BZ#711586
- 이번 업데이트에서는
named.sa
에이전트에 새update-source
옵션이 추가되었습니다. 이 옵션을 활성화하면notify-source
,transfer-source
,query-source
를 서비스 클러스터 IP로 설정할 수 있습니다. - BZ#909954
- 이번 업데이트를 통해
/usr/share/cluster/orainstance.sh
스크립트의 잠금 파일이/tmp/
디렉토리에서/var/tmp/
로 이동되었습니다. - BZ#917807
- 이번 업데이트를 통해
TNS_ADMIN
변수가oracledb.sh
클러스터 스크립트에 추가되었습니다. 이 변수는 리스너 구성 파일에 특정 경로를 설정하는 표준 Oracle 기능입니다. - BZ#919231
- 이번 업데이트에서는 파일 시스템 리소스에 대한 시작, 중지 및 모니터링의 성능이 향상됩니다. 파일 시스템 리소스는 findmnt 유틸리티를 사용하여 파일 시스템 리소스가 많은 클러스터에서 마이그레이션을 가속화합니다.
- BZ#989284
- 이번 업데이트에서는 Pacemaker 클러스터 관리자와 함께 사용하는 데 필요한 ocf heartbeat 리소스 에이전트에 대한 공식 지원이 추가되었습니다. 이 초기 릴리스에서는 공식적으로 지원되는 에이전트만 있습니다. 즉, 이 업데이트에는 공식 지원이 부족한 하트비트 에이전트가 제공되지 않습니다.
버그 수정
- BZ#1027410
- 이번 업데이트 이전에는 self_fence 옵션이 활성화된 경우에도 stop 작업 중에 netfs 에이전트가 중단될 수 있었습니다. 이번 업데이트를 통해 프로세스에서 자체 차단 작업이 더 빨리 실행되므로 umount가 성공할 수 없는 경우 NFS 클라이언트가 서버 종료를 감지하고 자체 펜싱이 수행됩니다.
- BZ#1027412
- 이전에는 IPaddr2 에이전트가 링크 계층 주소 변경을 알리기 위해 요청하지 않은 인접 광고를 보내지 않았습니다. 결과적으로 이 기능이 필요한 부동 IPv6 주소가 제대로 작동하지 않았습니다. 이 버그를 해결하기 위해 IPaddr2 에이전트가 IPv6 주소를 구동하는 데 필요한 send_ua 내부 바이너리가 추가되었습니다. 결과적으로 유동 IPv6 주소가 올바르게 작동하고 IPv4 주소는 이 변경의 영향을 받지 않습니다.
8.178. rgmanager
버그 수정
- BZ#862075
- 이전 버전에서는 주요 rgmanager 프로세스가 세그먼트 오류로 인해 예기치 않은 종료 또는 수동으로 종료하여 발생한 경우 rgmanager 프로세스가 이전 버전에서 수행한 것처럼 펜싱을 기다리지 않고 다른 노드에서 즉시 복구되었습니다. 이는 확인된 태그가 여전히 클러스터의 멤버인 노드에 속하는 경우 시작 작업이 실패했기 때문에 태그를 사용하여 HA-LVM(고가용 가능한 논리 볼륨 관리자) 리소스가 포함된 서비스에 문제가 있었습니다. 이번 업데이트를 통해 노드가 구성에서 제거되고 fenced가 제거될 때까지 서비스 복구가 지연되어 LVM 리소스가 올바르게 복구됩니다.
- BZ#983296
- 이전에는 MRG Messaging(MRG-M) 브로커를 시작하려고 하면 rgmanager가 세그먼트 오류로 인해 예기치 않게 종료되었습니다. 이는 잠긴 상호 제외에서 pthread_mutex_unlock() 함수를 호출하여 도입된 미묘한 메모리 손상으로 인해 발생했습니다. 이번 업데이트에서는 pthread_mutex_unlock()을 호출할 때 메모리가 손상되고 설명된 상황에서 rgmanager가 더 이상 예기치 않게 종료되지 않는 시나리오를 해결합니다.
8.179. rhel-guest-image
버그 수정
- BZ#912475, BZ#952280
- 이번 업데이트 이전에는 EOL(End of Line) 반환으로 인해 /etc/ssh/sshd_config 파일이 제대로 생성되지 않았습니다. 결과적으로 sshd 데몬은 오류 메시지와 함께 실패했습니다. 순서 /etc/ssh/sshd_config가 수정되었으며 이 시나리오에서는 sshd 시작이 더 이상 실패하지 않습니다.
- BZ#912801
- 이전에는 VM(가상 머신)이 종료될 때 게스트 이미지에서 영구 udev 규칙이 제거되지 않았습니다. 결과적으로 VM이 다시 부팅되고 다른 네트워크 카드 미디어 액세스 제어(MAC) 주소가 할당되면 udev 규칙으로 인해 네트워크 인터페이스 컨트롤러(NIC)가 eth0 대신 eth1로 설정됩니다. 이 잘못된 구성으로 인해 네트워크 지원없이 인스턴스가 부팅되었습니다. 이번 업데이트에서는 /etc/udev/rules.d/75-persistent-net-generator.rules 파일을 추가하고 VM 구성이 설명된 시나리오에서 예상대로 작동합니다.
- BZ#969487
- Red Hat Enterprise Linux 게스트 이미지는 기본적으로 ttyS0 직렬 포트를 사용하지 않았으므로 직렬 콘솔 로그를 모니터링하는 툴에서 정보를 캡처하지 않았습니다. 이번 업데이트에서는 부트 로더에 콘솔 로그 기능이 추가되어 Red Hat Enterprise Linux 게스트 이미지는 이제 ttyS0 직렬 포트 및 표준 콘솔에서 부팅 메시지를 출력합니다.
- BZ#983611
- 메타데이터 액세스는 네트워크 노드에서 처리하며 cloud-init 서비스는 시작 시 메타데이터를 사용합니다. 이전에는 cloud-init 서비스에 "NOZEROCONF=yes" 스탠자가 구성되지 않았습니다. 그 결과 서브넷 169.254.0.0/16 범위에 대한 액세스가 네트워크 노드로 라우팅되지 않아 cloud-init 서비스가 작동하지 않았습니다. 이번 업데이트에서는 /etc/sysconfig/network 파일의 클라우드 이미지에 "NOZEROCONF=yes"가 추가되었습니다. 사용자는 이러한 이미지에서 zeroconf 경로를 켜지 않도록 해야 합니다. 시스템 부팅 시 zeroconf 경로를 비활성화하려면 /etc/sysconfig/network 파일을 root로 편집하고 파일 끝에 "NOZEROCONF=yes"를 새 행에 추가합니다.
- BZ#1006883
- 이전에는 /etc/fstab 파일에 불필요한 항목이 포함되어 있었습니다. 결과적으로 커널 및 grub 설치를 업데이트할 때 파일 시스템 마운트가 제대로 작동하지 않았습니다. 이번 업데이트를 통해 불필요한 항목이 제거되고 이 시나리오에서 파일 시스템 마운트가 예상대로 작동합니다.
- BZ#1011013
- 이전에는 ifcfg-eth0 구성 파일에 dhclient 구성 옵션이 누락되었습니다. 그 결과 DHCP(Dynamic Host Configuration Protocol)가 실패한 경우 네트워크 연결이 손실되었습니다. 이번 업데이트에서는 ifcfg-eth0 구성 파일에 "PERSISTENT_DHCLIENT=1" 구성 옵션을 추가합니다. 이제 NIC(Network Interface Controller)가 DHCP 주소를 협상할 수 없는 경우 재시도합니다.
기능 개선
- BZ#974554
- 이제 virtual-guest 이미지에 기본적으로 활성화된 "tuned" 데몬의 프로필이 포함됩니다. 이는 대부분의 경우 게스트의 성능을 개선하는 데 도움이 됩니다.
8.180. rhn-client-tools
버그 수정
- BZ#891746
- 이전에는 rhn-channel 매뉴얼 페이지를 "--user" 대신 "--username" 옵션을 잘못 참조했습니다. 이 오류가 수정되었으며 rhn-channel 도움말 페이지가 "--user" 옵션을 올바르게 나타냅니다.
- BZ#912984
- 이번 업데이트 이전에는 Red Hat Enterprise Linux 6.4의 일본어 설치에서 영어로 작성된 일부 메시지가 발생했습니다. 번역되지 않은 문자열이 번역되어 이제 메시지가 올바른 언어로 표시됩니다.
- BZ#983999
- 이전에는 Red Hat Enterprise Linux 6의 sosreport 유틸리티에서 호출하는 rhn-client-tools 코드가 역추적으로 예기치 않게 종료되었습니다. 버그가 수정되었으며 이제 sosreport에서 하드웨어에 대한 정보가 올바르게 수집됩니다.
- BZ#994531
- 이전에는 CPU가 많은 시스템에서 모든 프로세서에 대한 유휴 시간 값을 보고할 수 있었습니다. 결과적으로 유휴 시간 값이 XML-RPC의 정수 제한에 적합하지 않고 문제가 있는 시스템에서 rhn_check 명령을 실행하면 역추적 오류가 발생했습니다. 문제가 있는 시나리오에서 버그가 수정되었으며 rhn_check가 올바르게 작동합니다.
- BZ#997637
- 이전에는 이전 버전의 rhn-virtualization-host 패키지가 시스템에 설치된 경우 rhn-profile-sync 유틸리티가 역추적으로 예기치 않게 종료되었습니다. 최신 버전의 rhn-virtualization-host가 필요하므로 버그가 수정되었습니다.
버그 수정
- BZ#949648
- 충분히 느린 네트워크로 부모와 분리된 경우 RHN 프록시가 제대로 작동하지 않았습니다. 결과적으로 더 큰 repodata 파일 및 RPM을 다운로드하려고 시도한 사용자는 시간 초과가 발생했습니다. 이번 업데이트에서는 RHN Proxy 및 Red Hat Enterprise Linux RHN Client를 모두 변경하여 모든 통신이 설정된 시간 초과 값을 연결할 수 있도록 합니다.
기능 개선
- BZ#949640
- Satellite 5.3.0에는 이제 API 호출을 통해 CPU 수를 가져올 수 있지만 등록된 시스템에서 소켓 수를 얻는 기능은 없었습니다. 이번 업데이트에서는 API 호출을 통해 관리 시스템의 물리적 CPU 소켓 수를 Satellite에서 가져오는 기능이 추가되었습니다.
8.181. rhnlib
버그 수정
- BZ#949650
- 충분히 느린 네트워크로 부모와 분리된 경우 RHN 프록시가 제대로 작동하지 않았습니다. 결과적으로 더 큰 repodata 파일 및 RPM을 다운로드하려고 시도한 사용자는 시간 초과가 발생했습니다. 이번 업데이트에서는 RHN Proxy 및 Red Hat Enterprise Linux RHN Client를 모두 변경하여 모든 통신이 설정된 시간 초과 값을 연결할 수 있도록 합니다.
8.182. Ricci
버그 수정
- BZ#853890
- 이번 업데이트 이전에는 다른 노드에서 클러스터 구성을 복사하고 동기화하는 데 사용되는 ccs_sync 명령이 외부 구성 파일을 선택한 노드로 푸시할 때 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 ccs_syncd가 수정되었으며 앞서 언급한 시나리오에서 더 이상 충돌하지 않습니다.
- BZ#883585
- 이번 업데이트 이전에는 ricci, ccs, ccs_sync 도움말 페이지에 파일 권한이 실행 파일로 잘못 설정되었습니다. 이번 업데이트를 통해 이러한 도움말 페이지의 파일 권한이 수정되었습니다.
- BZ#893574
- 이번 업데이트 이전에는 ccs 관리자가 fence_scsi 에이전트를 올바르게 구성하지 않았습니다. 구성이 누락되어 복구 중에 클러스터 동작이 올바르지 않을 수 있습니다. 이 버그가 수정되었으며 fence_scsi가 예상대로 구성됩니다.
- BZ#918555
- 클러스터 구성의 잘못된 구문 분석으로 인해 ccs 관리자가 fence_daemon 옵션을 표시하지 않았습니다. 이번 업데이트를 통해 구문 분석이 수정되었으며 fence_daemon 옵션이 올바르게 표시됩니다.
기능 개선
8.183. rp-pppoe
8.183.1. RHBA-2013:0952 - rp-pppoe 버그 수정 업데이트
버그 수정
- BZ#841190
- 이전에는 pppoe-server 서비스가 각 시스템 부팅 시 기본적으로 시작되었으며, 이 서비스는 pppoe-server가 관리자가 활성화한 경우에만 실행되어야 합니다. 이번 업데이트를 통해 pppoe-server가 기본적으로 시작되지 않으므로 이 버그를 수정합니다.
8.184. rpm
8.184.1. RHBA-2013:1665 - rpm 버그 수정 업데이트
버그 수정
- BZ#868332
- 이전에는 brp-python-bytecompile 스크립트에서 "/usr/lib.*/python.+/" 문자열이 포함된 경로를 건너뛰었습니다. 결과적으로 경로에 Python 모듈이 포함된 RPM을 생성할 때(예: "/opt/myapp/usr/lib64/python2.6/site-packages/mypackage/"), 바이트 코드가 생성되지 않았습니다. 모든 경로에 대해 재현기 사양이 변경되었으며 이제 바이트 코드가 생성됩니다.
- BZ#904818
- 사양 파일의 "%caps" 태그와 함께 와일드카드 문자를 사용하면 rpmbuild 유틸리티가 예기치 않게 종료되었습니다. 제공된 패치는 적용되는 각 파일에 대한 caps 데이터의 사본을 만들어 문제를 해결하므로 설명된 시나리오에서 rpmbuild가 더 이상 충돌하지 않습니다.
- BZ#919435
- 이전 버전에서는 높은 (80k) 파일이 있는 패키지를 설치할 때 RPM 패키지 관리자는 세그먼트 오류로 인해 예기치 않게 종료되었습니다. 이 문제를 해결하려면 여러 파일이 있는 패키지를 설치하지 못하는 경우 세그먼트 오류가 오류 메시지로 교체되었습니다.
- BZ#920190
- 이전에는 rpm 프로그램이 사양 파일에서 발견된 "%include" 지시문을 무조건 처리하여 패키지 또는 오류 메시지의 원하지 않는 콘텐츠를 생성했습니다. 업데이트된 rpm 패키지는 "%include"에 대한 다양한 사양 조건을 올바르게 따릅니다.
- BZ#963724
- 이번 업데이트를 통해 Red Hat Enterprise Linux 5 이전 버전과의 호환성 옵션인 "%_strict_script_errors 매크로"가 추가되었습니다. Red Hat Enterprise Linux 6의 기본 동작은 이 업데이트에서는 변경되지 않으며 이 옵션을 특별히 요구하지 않는 사용자는 사용하지 않는 것이 좋습니다.
8.185. rpmlint
8.185.1. RHBA-2013:0948 - rpmlint 버그 수정 업데이트
버그 수정
- BZ#663082
- 이전에는 rpmlint의 잘못된 규칙으로 인해 모든 실행 수준에서 기본적으로 시작하지 않은 서비스에 대한 "missing-lsb-key word Default-Stop" 오류 메시지를 보고했습니다. 이번 업데이트에서는 rpmlint의 규칙을 수정하고 설명된 시나리오에서는 오류 메시지가 더 이상 발생하지 않습니다.
- BZ#958038
- 패키지에 설명에 UTF-8 인코딩 오류가 있거나 설명이 다른 문자 세트로 인코딩되면 rpmlint는 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 rmplint는 설명이 UTF-8 데이터(tag-not-utf8 오류)를 잘못 인코딩한 오류 메시지를 반환하고 설명된 시나리오에서 더 이상 충돌하지 않습니다.
8.186. rsyslog
8.186.1. RHBA-2013:1716 - rsyslog 버그 수정 업데이트
버그 수정
- BZ#862517
- 구성 파일 판독기가 /etc/rsyslog.conf 구성 파일에서 $InputGSSServerRun 지시문이 발생하면 즉시 imgsssapi 모듈이 초기화됩니다. 따라서 $InputGSSServerRun 뒤에 구성된 보조 옵션은 무시됩니다. 구성을 적용하려면 모든 imgsssapi 구성 옵션을 $InputGSSServerRun 앞에 배치해야합니다. 이전 버전에서는 이 순서가 반전되면 rsyslogd 데몬이 세그먼트 오류로 예기치 않게 종료되었습니다. 이 버그는 수정되었으며 설명된 시나리오에서 rsyslogd가 더 이상 충돌하지 않습니다.
- BZ#886117
- 파일 소유자 또는 그룹(FileOwner, FileGroup, DirGroup, DirGroup)을 제어하는 데 사용되는 rsyslog 지시문은 이름을 rsyslog의 초기화 중에만 숫자 ID로 변환합니다. 이전 버전에서는 rsyslogs 시작 시 사용자 데이터를 사용할 수 없는 경우 이러한 로그 파일에 할당되지 않은 ID입니다. 이번 업데이트를 통해 변환 프로세스에 의존하지 않는 새 지시문이 추가되었습니다(FileOwnerId, FileGroupId, DirOwnerId, DirGroupId). 따라서 rsyslog 시작 중에 사용자 정보를 사용할 수 없는 경우에도 로그 파일에 올바른 사용자 또는 그룹 ID가 할당됩니다.
- BZ#893197
- 소스 코드의 버그로 인해 $ repeatedMsgReduction 지시문이 활성화된 경우 호스트 이름이 빈 문자열로 교체되었습니다. 이 버그는 수정되었으며 $ repeatedMsgReduction이 있는 경우 호스트 이름이 올바르게 저장됩니다.
- BZ#924754
- 이번 업데이트 이전에는 $FileGroup 지시문이 특정 크기보다 큰 그룹을 처리하지 않았습니다. 결과적으로 이 크기에 도달하면 rsyslogd 데몬이 요청된 그룹을 설정하지 못하고 root 사용자가 파일의 소유자로 남아 있었습니다. 이 버그는 수정되었으며 $FileGroup은 이제 설명된 경우 그룹을 올바르게 생성합니다.
- BZ#927405
- 이전 릴리스에서 잘못된 패치로 구성 파일 구문 분석기의 구현을 변경했기 때문에 rsyslogd 데몬이 특정 구성에 대한 세그먼트 오류로 인해 예기치 않게 종료되었습니다. 이번 업데이트를 통해 패치가 제거되었으며 기본 구성으로 파일 충돌이 더 이상 발생하지 않습니다. 그러나 $IncludeConfig 지시문은 다른 지시문보다 먼저 /etc/rsyslog.conf 구성 파일의 시작 부분에 배치해야 합니다. 파일에서 $IncludeConfig를 추가로 사용해야 하는 경우 사용자는 "syslog.debug /dev/null"과 같은 더미 작업과 함께 앞에 추가하는 것이 좋습니다.
- BZ#951727
- 이번 업데이트 이전에는 PRI 속성의 숫자 값이 pri-text 변수에 추가되었습니다. 결과 pri-text 값은 예를 들면 "local0.info Cryostat164>"와 같습니다. 이번 업데이트를 통해 접미사가 제거되었습니다. 이제 변수에 텍스트 기능 및 심각도 값만 포함됩니다.
- BZ#963942
- 이전에는 spool 파일 크기 제한을 보유하는 변수에 잘못된 데이터 유형이 설정되었습니다. 결과적으로 의도된 크기 제한이 허용되지 않았으며 메시지 손실이 발생할 수 있었습니다. 이번 업데이트를 통해 앞서 언급한 변수의 데이터 유형이 수정되었습니다. 결과적으로 사용자 정의 크기 제한을 사용하여 spool 파일이 올바르게 설정됩니다.
8.187. RubyGems
버그 수정
- BZ#559707
- 이전에는 사양 파일에 잘못된 라이센스가 나열되었습니다. 사양 파일이 MIT인 라이센스를 수정하도록 업데이트되었습니다.
기능 개선
- BZ#788001
- rubygems 패키지의 새로운 릴리스는 RPM 매크로를 사용하여 rubygems-devel 하위 패키지를 도입하여 Fedora와 보다 쉽게 패키징하고 보다 나은 호환성을 제공합니다.
8.188. s390utils
버그 수정
- BZ#883456
- 이전에는
ziomon
유틸리티에서 심볼릭 링크를 따라/dev/mapper/
디렉터리에서 다중 경로 장치를 찾지 못했습니다. 결과적으로 다중 경로 장치를 찾을 수 없었습니다.ziomon
이 이제 심볼릭 링크를 따르도록 이 업데이트로 버그가 수정되었으며 다중 경로 장치를 예상대로 찾을 수 있습니다. - BZ#887336
dbginfo.sh
유틸리티는 디버깅을 위해 시스템에서 다양한 데이터를 수집합니다. 이전에는dbginfo.sh
출력에서 특정 런타임 데이터가 누락되어 기본 소스 코드가 일치하지 않았습니다. 결과적으로 불완전한 정보가 제공되었으며 유틸리티 성능이 저하되었습니다. 또한 어떤 경우에는dbginfo.sh
가debgfs
파일 시스템이 마운트되었는지 감지하지 못했습니다. 이 코드는 통합되었으며 데이터 수집을 개선하기 위해 추가 유틸리티 및 명령에 대한 호출이 추가되었습니다. 또한dbginfo.sh
는 이제 추가 구성 및 로그 파일에서 데이터를 수집합니다.- BZ#906836
ziorep_config
구성 보고서는 다중 경로 매퍼 보고서를 생성할 때 다중 경로 장치의 일부가 아닌 Small Computer System Interface(SCSI) 디스크를 무시해야 합니다. 이전에는ziorep_config
가 다중 경로 장치의 일부가 아닌 SCSI 디스크를 올바르게 무시하지 못했습니다. 이제 SCSI 디스크에 대한 다중 경로 장치를 찾을 수 없는 경우 이러한 디스크는 출력에서 건너뜁니다.- BZ#948343
- 이전에는
sysfs_getUnitsFromPort()
함수에서scsi_generic:sg*
레이아웃을 사용하는 장치의SCSI(Small Computer System Interface) 장치 디렉터리만 검색했습니다. 이 레이아웃은 더 이상 사용되지 않으며CONFIG_SYSFS_DEPRECATED[_V2]
옵션이 커널 구성에 설정된 경우에만 사용할 수 있습니다. 따라서 기능이 제대로 작동하지 않았습니다. 이번 업데이트를 통해 이제 예상대로 작동하도록scsi_generic/sg*
레이아웃도 사용하여 장치를 검색하도록 함수가 수정되었습니다. - BZ#951585
- WWN(World Wide Name) 및LUN(Logical Unit Numbers) 문자열과 fc_host 통계 sysfs 속성은 잘못된 정수 유형으로 변환되었으며, 이는 문자열 전체 범위를 유지하기에 너무 작았습니다. 이로 인해 정보가 손실될 수 있습니다. 기본 소스 코드가 수정되어 이 버그 및 WWNs,LUN 및 fc_host 통계 sysfs 속성이 올바른 정수 유형으로 변환됩니다.
- BZ#973235
- incoherent
dbginfo.sh
소스 코드로 인해 sysfs 트리의 컬렉션은 오랜 시간이 소요되었으며 로그는 직렬화되지 않았지만 혼합되었습니다. 또한 유틸리티가 필요한 모든 구성 파일에서 정보를 수집하지 않았기 때문에 생성된 파일에서 일부 정보가 누락되었습니다. 이번 업데이트를 통해 이러한 문제를 해결하기 위해 기본 소스 코드가 개선되었으며dbginfo.sh
가 예상대로 작동합니다. - BZ#974180
dbginfo.sh
유틸리티는 디버깅을 위해 시스템에서 다양한 데이터를 수집합니다. 이전에는 시스템에서 수집된 정보가 암호화 어댑터에 대한 충분한 데이터를 제공하지 않았습니다.dbginfo.sh
가 어댑터에 대한 추가 정보를 제공하는 정보를 수집하도록 수정되었습니다.- BZ#996180
sysfs
파일 시스템의 CPU 추적을 위한 추적 파이프는dbginfo.sh
유틸리티를 잠재적으로 차단할 수 있습니다. 결과적으로 이러한 경우 유틸리티가 응답하지 않았습니다. 이 버그는 추적 파이프가 더 이상dbginfo.sh
를 차단하지 않도록 수정되었습니다. 결과적으로 유틸리티가 더 이상 설명된 시나리오에서 중단되지 않습니다.- BZ#997359
zgetdump
유틸리티는 CPU ELF 노트에 충분한 메모리를 할당하지 않았습니다. 결과적으로 CPU가 많은 시스템에서 다음 오류가 반환되었습니다.zgetdump: Internal Error: hdr_size=28512 alloc_size=26624
이번 업데이트를 통해 ELF 노트에 충분한 메모리를 할당하도록 유틸리티가 수정되었으며 더 이상 오류가 반환되지 않습니다.- BZ#997360
- 이전에는 짝수 주소가 잘못 로드되었습니다. 결과적으로DASD(Direct Access Storage Device) 다중 볼륨 덤프에 대한
--force
옵션이 지정되고 나중에 덤프 파티션을 수정하면 덤프가 오류와 함께 실패했습니다. 이번 업데이트를 통해 올바른 짝 주소도 로드되고 옵션이 예상대로 작동합니다.
기능 개선
- BZ#929261
- 이번 개선된 기능을 통해 커널의 현재 메모리 상태를 추출할 수 있는 유틸리티인 Fuzzy 라이브 덤프 기능이 제공됩니다. 이를 위해 Fuzzy 라이브 덤프는 ELF 코어 덤프를 추출하여 makedumpfile 명령으로 필터링합니다. 이 기능을 사용하면 사용자가 시스템을 종료하지 않고 문제 분석을 제공할 수 있습니다.참고기록된 메모리는 기록 중에 변경될 수 있으므로 모든 경우에 결과가 일관되지 않을 수 있습니다.
- BZ#929263
- 이번 개선된 기능을 통해 오프라인으로 설정하기 전에 모든 미해결 데이터를DASD장치에 쓰는 새로운 Direct Access Storage Device(DASD) 인터페이스가 도입되었습니다. 이제 사용자는
안전한 오프라인 옵션을 사용하여 장치를 오프라인으로
설정하기 전에 모든 미해결 쓰기 요청이 완료되도록 할 수 있습니다. - BZ#967014
- 물리적 채널 ID(PCHID) 매핑에 대한 지원이 s390utils 패키지에 추가되어 사용자가CHPID(Logical channel-path identifier)와 연결된 PCHID 를 결정할 수 있습니다. CHPID 를 PCHID 에 매핑하는 기능은 유지 관리 목적과 오류 결정 프로세스에 중요합니다. 또한 PCHID 정보를 사용하는 고급 상태 점검을 활성화할 수 있습니다.
8.189. samba
보안 수정
- CVE-2013-0213
- Samba 웹 관리 도구(SWAT)가 웹 페이지 프레임에서 열리는 것을 방지하지 못했음을 발견했습니다. 원격 공격자는 이 취약점을 악용하여 SWAT 사용자 또는 SWAT 세션이 있는 사용자에 대해 클릭재킹 공격을 수행할 수 있습니다.
- CVE-2013-0214
- SWAT에서 구현된 CSRF(Cross-Site Request Forgery) 보호 메커니즘에서 취약점이 발견되었습니다. 사고자 암호를 알고 있는 공격자는 이 취약점을 악용하여 CSRF 보호를 우회하고 SWAT 사용자에게 CSRF 공격을 수행할 수 있습니다.
- CVE-2013-4124
- 클라이언트가 제공하는 확장 속성(EA) 목록을 처리하는 방식에서 정수 오버플로 결함이 발견되었습니다. 악의적인 클라이언트는 오버플로를 트리거하는 특수하게 조작된 EA 목록을 보내 서버가 과도한 양의 메모리를 사용하여 목록을 루프하고 다시 처리할 수 있습니다.참고이 문제는 Samba 서버의 기본 구성에 영향을 미치지 않았습니다.
버그 수정
- BZ#948071, BZ#953985
- TCP/IP를 통한 보안 연결을 설정하는 데 시스템 계정 자격 증명이 필요하기 때문에 TCP/IP 프로토콜을 기반으로 하는 연결을 사용하여 신뢰할 수 있는 도메인에서 그룹 정보를 검색하려고 했습니다. 결과적으로 이름이 지정된 파이프 연결에 대한 대체가 작동하지 않았으며 사용자가 신뢰할 수 있는 도메인에 로그인할 수 없었습니다. 이번 업데이트를 통해 이름이 지정된 파이프 연결에 대한 폴백이 수정되어 사용자가 예상대로 신뢰할 수 있는 도메인에 로그인할 수 있습니다.
- BZ#951175
- 이전 버전에서는
Winbind
서비스(winbindd
)가 대량의 AD(Active Directory) 사용자를 인증하기 위해 부하가 많은 경우 CPU의 100%를 사용하고 사용자 인증을 중지할 수 있었습니다. 이번 업데이트에서는 연결 처리를 크게 개선하는 패치를 제공하고winbindd
는 더 이상 설명된 시나리오에서 사용자 인증을 중지하지 않습니다. - BZ#952268
- Samba 서비스에는 실패한 매핑을 저장하는 사용자 이름 매핑 최적화가 포함되어 있으므로 매번 전체 매핑 파일을 이동할 필요가 없습니다. 최적화의 버그로 인해 사용자 이름 매핑은 한 번만 작동했으며 실패한 매핑으로 인해 나중에 덮어 쓰기했습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 제공하고 설명된 시나리오에서 성공적인 사용자 이름 매핑을 더 이상 덮어 쓰지 않습니다.
- BZ#953025
- 이전에는 "security = share" 모드의 게스트 사용자에게 쓰기 가능 게스트 공유에 대한 쓰기 작업을 허용하는 올바른 토큰이 없었습니다. 결과적으로 이러한 사용자는 공유 내의 모든 파일을 생성하거나 쓸 수 없었습니다. 이번 업데이트를 통해 이 버그를 해결하기 위해 패치가 제공되었으며 게스트 사용자는 쓰기 가능 공유에 예상대로 파일을 작성하거나 생성할 수 있습니다.참고"security = share" 모드는 더 이상 사용되지 않으며 사용자는 "security = user" 모드로 마이그레이션해야 합니다.
- BZ#955683
- net ads keytab에서는 항상 서비스 주체 이름(SPN)의 변환된 문자를 대문자로 추가합니다. 그 결과 여러 Kerberos 서비스가 티켓을 찾을 수 없었습니다. 이번 업데이트를 통해 Cryostat는 더 이상 대문자로 변환되지 않으며 Samba가 예상대로 작동합니다.
- BZ#961932
- NTLMv2 인증 챌린지를 기본 도메인 컨트롤러(PDC)로 전달하는 인증 코드의 버그로 인해 잘못된 도메인 이름이 클라이언트에서 전송될 수 있었습니다. 결과적으로 두 번째 NTLMv2 인증 챌린지에서 도메인 이름을 해시한 경우 서버가 해시의 유효성을 확인할 수 없어 액세스가 거부되었기 때문에 사용자가 로그인할 수 없었습니다. 이번 업데이트를 통해 클라이언트가 올바른 도메인 이름을 PDC로 설정하고 사용자가 예상대로 로그인할 수 있습니다.
- BZ#980382
- 이력서 처리에 대한 포인터 없이 wkssvc_NetWkstaEnumUsers RPC 명령을 실행하려고 하면
smbd
데몬이 세그먼트 오류로 종료되었습니다. 그 결과 클라이언트의 연결이 끊어졌습니다. 이번 업데이트를 통해 기본 소스 코드가 역참조를 시도하기 전에 포인터가 유효한지 확인하도록 조정되었습니다. 결과적으로smbd
는 더 이상 이 상황에서 충돌하지 않습니다. - BZ#997338
- root가 아닌 사용자가 smbstatus 명령을 실행하면 명령 출력에서 잠긴 파일이 누락되었습니다. 기본 소스 코드가 수정되어 이 버그를 수정하고 루트가 아닌 사용자는 잠긴 파일을 예상대로 표시할 수 있습니다.
- BZ#1003689
- Red Hat Enterprise Linux 6는 Microsoft Windows 8 클라이언트에서 사용하는 네트워크 프린터를 공유하는 인쇄 서버를 사용할 수 있습니다. 이전에는 Red Hat Enterprise Linux와 함께 제공되는 Samba 버전이 Windows 8과 호환되지 않았습니다. 결과적으로 Windows 8 클라이언트가 프린터 공유에 액세스하여 이 프린터의 드라이버를 설치하려고 하면 오류가 발생했습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하고 Windows 프린터 드라이버를 이제 설명된 시나리오에 성공적으로 설치할 수 있습니다.
- BZ#1008574
- 이전에는 하위 프로세스가 도메인 컨트롤러에 성공적으로 연결되었을 때 기본
winbind
데몬에 알리지 않았습니다. 그 결과 NDR(Network Data Representation) 캐시 항목이 만료되지 않았으므로 항목을 업데이트할 수 없었습니다. 이번 업데이트를 통해winbind
하위 프로세스에서 도메인 컨트롤러에 연결할 때 기본winbind
프로세스를 알립니다. 결과적으로 캐시가 예상대로 업데이트됩니다.
기능 개선
- BZ#915455
smbd
데몬에서는 Samba 3.5의 이전 인쇄 데이터베이스가 UTF-8 형식으로 되어 있을 것으로 예상했습니다. 그러나 데이터베이스는 예를 들어 Latin-1과 같은 다른 형식일 수도 있습니다. 결과적으로smbd
는 이 경우 데이터베이스를 마이그레이션할 수 없었습니다. 이번 업데이트에서는 Samba 및 원격 CIFS 서버의 관리에 사용되는net
유틸리티가 개선되어 데이터베이스를 올바르게 인코딩하고 UTF-8로 변환할 수 있습니다. 결과적으로smbd
는 이제 데이터베이스를 예상대로 마이그레이션할 수 있습니다.
8.190. samba4
보안 수정
- CVE-2013-4124
- 클라이언트가 제공하는 확장 속성(EA) 목록을 처리하는 방식에서 정수 오버플로 결함이 발견되었습니다. 악의적인 클라이언트는 오버플로를 트리거하는 특수하게 조작된 EA 목록을 보내 서버가 과도한 양의 메모리를 사용하여 목록을 루프하고 다시 처리할 수 있습니다.
버그 수정
- BZ#882338
- Samba가 빌드 루트 디렉터리에 설치되면 RPM 대상이 존재하지 않을 수 있습니다. 그 결과 find-debuginfo.sh 스크립트에서 대상과 연결된 libwbclient.so.debug 모듈에 대한 심볼릭 링크를 생성하지 않았습니다. 이번 업데이트를 통해 심볼릭 링크의 경로가 상대적이므로 심볼릭 링크가 올바르게 생성됩니다.
- BZ#911264
- 이전에는 samba4 패키지에 libreplace.so 모듈에 대한 종속성이 누락되어 설치에 실패할 수 있었습니다. 이번 업데이트를 통해 samba4 패키지의 종속성 목록에 누락된 종속성이 추가되어 설치가 예상대로 진행됩니다.
8.191. sanlock
버그 수정
- BZ#961032
- 이전에는 일부 워치독 모듈에서 두 개의 장치를 제공했을 때 wdmd 데몬이 기능 장치를 항상 선택하지 않았습니다. 결과적으로 wdmd가 일부 인스턴스에서 제대로 작동하지 않았습니다. 이 버그를 해결하기 위해 패치가 적용되었으며 wdmd는 이제 두 장치의 상태를 확인하고 제대로 작동하는 장치를 선택합니다.
기능 개선
8.192. sblim-cmpi-fsvol
버그 수정
- BZ#921482
- CIM_UnixLocalFileSystem 클래스 인스턴스를 열거하는 동안 특정 파일 시스템이 마운트되어 있어도 비활성화된 것으로 표시되었습니다. 이는 /etc/fstab/ 디렉터리의 항목이 심볼릭 링크 또는 UUID(Universally Unique Identifiers)를 사용하는 경우 발생했습니다. 이 버그를 해결하기 위해 패치가 제공되어 마운트된 파일 시스템이 올바르게 표시됩니다.
8.193. sblim-sfcc
버그 수정
- BZ#875011
- 이전 버전에서는 "EnumerateInstances" 속성이 KEYVALUE 쌍에 있을 때 sfcc 클라이언트가 XML 파일을 구문 분석하지 못하고 클라이언트는 코어 덤프가 생성되어 예기치 않게 종료되었습니다. 이 버그가 수정되었으며 sfcc 클라이언트는 앞서 언급한 특성으로 XML 파일을 성공적으로 구문 분석합니다.
8.194. sblim-wbemcli
버그 수정
- BZ#745264
- 이전에는 sblim-wbemcli 패키지의 사양 파일에 tog-pegasus CIM 서버에 대한 요구 사항이 포함되어 이로 인해 문제가 발생할 수 있었습니다. 이번 업데이트에서는 사양 파일을 수정하고 sblim-wbemcli를 설치할 때 top-pegasus가 더 이상 필요하지 않습니다.
- BZ#868905
- 코드에서 curl API를 잘못 사용했기 때문에 wbemcli 유틸리티가 HTTPS 스키마를 사용하여 호출되면 wbemcli는 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 curl API가 올바르게 사용되고 설명된 시나리오에서 wbemcli가 더 이상 충돌하지 않습니다.
8.195. sCL-utils
버그 수정
- BZ#949995
- 이전에는 사용할 수 있도록 지정된 컬렉션 검색이 코드의 잘못된 위치에서 수행되었습니다. 따라서 사용자가 단일 명령으로 여러 컬렉션을 활성화하려는 경우 나머지 컬렉션은 무시되는 동안 첫 번째 컬렉션만 활성화되었습니다. 이번 업데이트를 통해 패키지는 이제 첫 번째 항목만 가져온 원래 접근 방식과는 달리 모든 인수를 검색하고 지정된 모든 컬렉션이 활성화됩니다.
- BZ#955669
- 이미 활성화된 컬렉션을 검사할 때 잘못된 변수가 이 정보의 소스로 가져왔습니다. 사용자가 scl 사용 가능한 환경에서 쉘을 실행하고 이미 사용 가능한 컬렉션을 활성화하려고 하면 컬렉션이 두 번 활성화되었습니다. 이로 인해 새로 생성된 환경에서 오류가 발생하여 이 환경에서 실행되는 애플리케이션에 문제가 발생할 수 있었습니다. 이번 업데이트에서는 이미 사용 가능한 컬렉션에 대한 정보 소스로 올바른 변수를 허용하며 컬렉션은 더 이상 여러 번 활성화되지 않습니다.
- BZ#957185
- 이전에는 python27에 특정 바이트 컴파일러가 필요하므로 python27 컬렉션을 빌드하지 못했습니다. 잘못된 바이트 컴파일러를 사용했기 때문입니다. 이번 업데이트를 통해 python27은 새로운 기능을 사용하여 다양한 RPM 매크로를 덮어쓰므로 컴파일할 수 있습니다.
- BZ#957754
- PATH 변수가 예상대로 설정되지 않은 경우 "scl enable" 명령을 실행하면 "command not found" 오류가 발생했습니다. 이는 scl 유틸리티에서 절대 경로 없이 scl_enabled 명령을 호출하고 사용자가 설정한 PATH를 사용하므로 발생했습니다. 이번 업데이트에서는 scl_enabled 도우미 스크립트를 호출할 때 절대 경로를 사용하므로 더 이상 PATH에 의존하지 않으며 앞서 언급한 오류가 더 이상 발생하지 않습니다.
- BZ#964058
- 이전 버전에서는 컬렉션을 활성화할 때 컬렉션이 활성화되었는지 여부를 점검했습니다. 그러나 컬렉션 결과가 독립적으로 활성화되었습니다. 결과적으로 명령줄에서 단일 컬렉션이 여러 번 명시된 경우 여러 번 활성화되었습니다. 안전하지 않은 활성화 스크립트의 경우 이로 인해 예기치 않은 동작이 발생할 수 있습니다. 이번 업데이트에서는 컬렉션이 이전에 활성화되지 않은 경우에만 활성화 스크립트를 실행하고 한 환경에서 여러 번 컬렉션을 사용하려고 시도합니다.
8.196. scsi-target-utils
버그 수정
- BZ#910638
- 이전에는 tgtadm 유틸리티에서 비동기 I/O 유형의 백엔드 스토리지를 활성화하기 위해 libaio 라이브러리가 있는지 확인하지 않았습니다. 결과적으로 "tgtadm --bstype aio" 명령을 사용하여 새 iSCSI 대상 장치를 추가하려고 시도하면 "잘못된 요청" 오류 메시지와 함께 실패했습니다. 이번 업데이트에서는 libaio를 런타임 종속성으로 추가합니다. 이제 tgtadm 유틸리티와 함께 "--bstype aio" 옵션을 사용하면 더 이상 실패하지 않고 새 논리 단위 작업을 예상대로 추가하려고 합니다.
- BZ#813636
- 이번 업데이트 이전에는 네트워크에서 중단이 발생했을 때 TCP 프로토콜의 재연결이 제대로 작동하지 않았습니다. 그 결과 이러한 상황에서 tgtd 데몬에서 메모리 누수가 발생했습니다. 이 버그가 수정되었으며 이제 설명된 시나리오에서 TCP 재연결이 올바르게 작동합니다.
- BZ#865739
- 이전에는 iSNS(Internet Storage Name Service) 서버에 보고하도록 구성된 경우 tgtd 데몬에서 내보낸 대상을 올바르게 보고하지 않았습니다. 그 결과 "iscsiadm -m discoverydb -t isns" 명령을 실행할 수 없었습니다. 이 버그가 수정되었으며 tgtd가 내보낸 대상을 설명된 시나리오에서 올바르게 보고합니다.
- BZ#922270
- 이전에는 tgtd 데몬에 명령줄 매개 변수를 제공할 수 없었습니다. 이번 업데이트를 통해 매개변수를 포함하는 TGTD_OPTIONS 변수를 설정하고 /etc/sysconfig/tgtd 파일에서 사용할 수 있습니다.
8.197. seabios
버그 수정
- BZ#846519
- ACPI(Advanced Configuration and Power Interface) 설명 테이블의 버그로 인해 특정 Windows 게스트에서 중지 오류(Blue Screen of Death 또는 BSoD)가 발생할 수 있습니다. 이 문제는 S3 및 S4 전원 상태 전환 중에 virtio-win Small Computer System Interface(SCSI) 드라이버를 사용하는 게스트에서 관찰되었습니다(예: CryostatDiskMark 벤치마크를 실행할 때). 이 버그를 수정하는 데 패치가 적용되었으며 설명된 시나리오에서는 중지 오류가 더 이상 발생하지 않습니다.
- BZ#846912
- 이전에 여러 ACPI 설명 테이블(MADT)에 잘못된 정의가 포함되어 있었습니다. 결과적으로 S3 또는 S4 전원 상태로 전환한 후 SCSI 드라이버를 비활성화할 수 없었으며 항상 GSI(Global System Interrupt) 번호 9에 연결되었습니다. 잘못된 MADT 정의가 수정되었으며 이제 이 상황에서 SCSI 드라이버를 비활성화하여 활성화할 수 있습니다.
- BZ#888633
- 이전에 SeaBIOS 유틸리티를 사용하면 부팅 가능한 장치를 찾을 수 없는 경우에도 선택 해제된 장치에서도 부팅할 수 있었습니다. 이 문제는 HALT 명령어에 대한 지원을 추가하여 해결되어 SeaBIOS가 부팅 가능한 장치가 없는 경우 기본 부팅 시도가 발생하지 않도록 합니다.
기능 개선
- BZ#876250
- 이번 업데이트를 통해 이제 시스템 UUID와 동일한 번호(시스템 UUID와 동일한 번호)가 BIOS Power-on self-test(POST) 화면에 표시됩니다.
- BZ#963312
- 이번 업데이트에서는 virsh 관리 사용자 인터페이스를 수정하여 "virsh dump" 명령으로 자동 코어 덤프를 지원합니다. 적절한 kdump 메커니즘 설정을 사용하면 vmcore 파일이 자동으로 캡처되고 후속 작업이 자동으로 실행됩니다.
8.198. selinux-policy
버그 수정
- BZ#872542
- SELinux가 강제 모드에 있고
AWStats
유틸리티가httpd
로그 파일을 제거하도록 구성된 경우 이 설정에 대한 누락된 SELinux 정책 규칙으로 인해 AVC 메시지가 생성되었습니다. 이 버그를 해결하기 위해awstats_purge_apache_log_files
부울이 추가되었습니다. 부울을 활성화하면AWStats
가 로그 파일을 제거할 수 있습니다. 따라서 AVC 메시지는 더 이상 반환되지 않습니다. - BZ#878148
- SELinux 정책 규칙이 누락되어
httpd
데몬에는/var/lib/cobbler/webui_sessions/
디렉터리를 검색할 수 있는 권한이 없었습니다. 그 결과 사용자가 Cobbler 웹 사용자 인터페이스(UI)에 로그인할 수 없었습니다. 이번 업데이트를 통해 SELinux 정책이 업데이트되어 사용자가 예상대로 Cobbler 웹 UI를 사용할 수 있습니다. - BZ#890646, BZ#890647, BZ#892024
- SELinux가 강제 모드에 있을 때
postfix
서비스와 관련된 다음 문제가 발생했습니다.이번 업데이트를 통해 이러한 버그를 해결하기 위해 SELinux 정책에 새로운 SELinux 정책 규칙 세트가 추가되었습니다. 결과적으로postfix
서비스가 MySQL 데이터베이스에 연결할 수 없습니다.sysadm_u
SELinux 사용자는 postqueue -p 명령을 올바르게 실행할 수 없었습니다.postfix
데몬에서/tmp/
디렉터리의 콘텐츠를 나열할 수 없었습니다.- 게이트웨이에서 SPF(Sender Policy Framework) 확인이 활성화되면
posfix-master
바이너리에서postfix-policyd-spf-perl
Cryostat 서버를 실행할 수 없었습니다.
postfix
는 이제 설명된 시나리오에서 예상대로 작동합니다. - BZ#903371
- 이전에는
/usr/local/bin/x11vnc
파일에 대한 적절한 보안 컨텍스트가 누락되었습니다. 결과적으로 강제 모드의 SELinux는 GNOME Display Manager(GDM) 및 X Window System의 X.Org 구현이x11vnc
서버 유틸리티를 실행하지 못하도록 차단되었습니다. 파일의xserver_exec_t
보안 컨텍스트가 SELinux 정책에 추가되고 GDM 및 X.Org가 이제 설명된 시나리오에서 올바르게 작동합니다. - BZ#906346
- SELinux 정책 규칙이 누락되어 있는 경우
Cryostat
유틸리티는 sar 명령에 대한 데이터를 생성할 때 장치 레이블을 작성할 수 없었습니다. 이번 업데이트를 통해 Cryostat
가 올바르게 작동하도록 SELinux 정책이 업데이트되었습니다. - BZ#906773
- 이전에는
/bin/yum-builddep
파일에 대한 적절한 보안 컨텍스트가 누락되었습니다. 결과적으로 강제 모드에서 SELinux는 yum-builddep 명령을 사용하여 sendmail 패키지를 설치한 후 오류를 반환했습니다. 보안 컨텍스트가rpm_exec_t
로 업데이트되고 yum-builddep 을 사용하는 설치는 이제 예상대로 진행됩니다. - BZ#908095
- 잘못된 SELinux 정책 규칙으로 인해
Munin
유틸리티의df_inode
플러그인을 사용하려고 하면 AVC 메시지가 반환되었습니다. 정책 규칙이 업데이트되어 플러그인이 예상대로 작동합니다. - BZ#909857, BZ#983601, BZ#1003571, BZ#1021566
- SELinux가 강제 모드에 있을 때 충분하지 않은 SELinux 정책 규칙으로 인해
tgtd
데몬과 관련된 다음 문제가 발생했습니다.이러한 버그를 해결하기 위해 적절한 SELinux 정책 규칙이 추가되어tgtd
데몬은iSNSd
데몬과 함께 서버에서 실행되는 경우 TCP 포트 3205에 연결할 수 없었습니다. 그 결과tgtd
가 iSNS(Internet Storage Name Service) 대상을 검색하지 못했습니다.tgtd
데몬이 장치에 대한 SELinux 레이블링이 누락되어/dev/infiniband/uverbs0
장치에 액세스하지 못했습니다.SYS_RAWIO
,SYS_ADMIN
및IPC_LOCK
기능이 누락되었습니다.tgtd
데몬이/dev/sg0
장치에 액세스하지 못했습니다.
tgtd
가 설명된 시나리오에서 예상대로 작동합니다. - BZ#912295
- 이전 버전에서는 여러 장치가 시스템에 추가되면
udev
규칙이 새 장치마다ktune
서비스를 다시 시작했습니다. 이로 인해 많은 사용자가 짧은 시간 내에 다시 시작할 수 있습니다. 여러 재시작이 커널에서 경쟁 조건을 트리거할 수 있으며 현재 수정할 수 없습니다.tuned
데몬 코드가 10초당 여러 재시작을 트리거하지 않도록 수정되어 경쟁 조건이 발생하지 않습니다. - BZ#913673
cgrulesengd
데몬이 파일 시스템 변경 모니터링을 위해inotifyfs
스크립트를 사용하려고 하면 SELinux에서 충분하지 않은 SELinux 정책으로 인해 스크립트에 대한 액세스를 거부했습니다. 이번 업데이트에서는 이 버그를 수정하는 새로운 SELinux 정책 규칙이 추가되어cgrulesengd
에서inotifyfs
를 예상대로 사용할 수 있습니다.- BZ#915729, BZ#966203, BZ#984903
- SELinux가 강제 모드에 있을 때 충분하지 않은 SELinux 정책 규칙으로 인해
system-config-kdump
유틸리티와 관련된 다음 문제가 발생했습니다.이러한 버그를 해결하기 위해 적절한 SELinux 정책 규칙이 추가되어kdumpgui_t
SELinux 도메인에서 실행되는kexec
기능은kcore
파일에 액세스할 수 없었습니다.system-config-kdump
는/boot/efi/EFI/redhat/grub.cfg
파일에 쓸 수 없습니다.system-config-kdump
가zipl
정보를 작성하지 못했습니다.
system-config-kdump
가 예상대로 작동합니다. - BZ#917157, BZ#991024
- 이전에는 Cryostat Remote Plugin Executor(NRPE)가 누락된 SELinux 정책 규칙으로 인해
sudo
유틸리티를 실행할 수 없었습니다. 결과적으로 사용자가 모니터링 서버에 NRPE 및 자체 Cryostat 플러그인을 사용하면 제공된 서비스에 대한init.d
스크립트의상태
조치를 호출하여 서비스 상태를 확인하지 못했습니다. NRPE가 이제sudo
유틸리티를 예상대로 사용할 수 있도록 적절한 SELinux 정책 규칙이 업데이트되었습니다. - BZ#919192
/var/lock/subsys/dirsrv-admin
파일의 레이블이 올바르지 않기 때문에 콘솔을 사용하여 관리 서버를 다시 시작하려고 시도하거나 명령줄이 실패했습니다. 그 결과 AVC 거부 메시지가 반환되었습니다. 이번 업데이트에서는 파일 및 거부 메시지에 대한 적절한 기본 보안 컨텍스트가 더 이상 반환되지 않습니다.- BZ#919893
- 이전에는
/sbin/ip6tables
파일에 대한 적절한 보안 컨텍스트가 누락되었습니다. 결과적으로 강제 모드의 SELinux로 인해Shorewall
유틸리티의 오류가 발생했습니다. 이번 업데이트를 통해 보안 컨텍스트가iptables_exec_t
로 업데이트되었습니다. 그 결과Shorewall
이 예상대로 작동합니다. - BZ#921234
- SELinux 정책 규칙이 누락되어
abrt_t
SELinux 도메인이prelink_t
SELinux 도메인으로 전환할 수 없었습니다. 결과적으로 패키지가 예기치 않게 종료된 바이너리를 제공하는 패키지의 RPM 확인은 ABRT(Automatic Bug Reporting Tool) 처리 중에 실패했습니다. 이 버그를 수정하도록 SELinux 정책이 수정되어 설명된 시나리오에서 RPM 확인이 더 이상 실패하지 않습니다. - BZ#922028
- 이전에는 강제 모드의 SELinux로 인해
snmptthandler
유틸리티에서 디렉터리의 잘못된 보안 컨텍스트로 인해/var/spool/snmptt/
디렉터리에서 작업을 수행할 수 없었습니다. 이번 업데이트를 통해 이제 유틸리티가 예상대로 작동하도록 context가snmpd_var_lib_t
로 업데이트되었습니다. - BZ#922135
- 잘못된 SELinux 정책 규칙으로 인해 test 결과가
/var/spool/nagios/checkresults/
디렉터리에 있는 파일을 임시로 저장할 수 없었습니다. 이번 업데이트에서는 관련 SELinux 정책 규칙이 수정 되어 더 이상 이 디렉터리에 파일을 저장할 수 없습니다. - BZ#927003
- NIS 슬레이브로 실행되는 다른 시스템으로 NNIS(Network Information Service) 마스터를 구성할 수 있습니다. 이전 버전에서는 NIS 클라이언트가 NIS 암호를 변경하면 새 AVC 메시지가
/var/log/audit/audit.log
파일에 로그인되었습니다. SELinux는yppus
유틸리티가 TCP(Transmission Control Protocol) 111 포트에 연결할 수 없기 때문입니다. 이번 업데이트를 통해 적절한 SELinux 정책 규칙이 수정되었으며 AVC 메시지가 더 이상 설명된 시나리오에 기록되지 않습니다. - BZ#927973
- 잘못된 SELinux 정책으로 인해
postfix
에이전트와 함께 Apache HTTP 서버를 실행해도 제대로 작동하지 않았습니다. 그 결과httpd_t
SELinux 레이블로 레이블이 지정된postdrop
유틸리티에서/var/spool/ Cryostat/maildrop/
디렉터리에 액세스할 수 없었습니다. 이번 업데이트를 통해postdrop
이 디렉터리에 액세스할 수 있도록httpd_can_sendmail
부울이 업데이트되었습니다. - BZ#947772
- SELinux가 강제 모드에 있을 때
sanlock-helper
유틸리티는sanlock
데몬에 등록된 모든 프로세스에 SIGKILL 신호를 보낼 수 없었습니다. 이 업데이트로 관련 SELinux 정책 규칙이 수정되었으며sanlock-helper
는 SIGKILL 신호를 등록된 프로세스로 보낼 수 있습니다. - BZ#950103
- SELinux 정책 규칙이 충분하지 않기 때문에
pegasus_t
와mount_t
SELinux 도메인 간 전환이 제대로 작동하지 않았습니다. 그 결과 OpenPegasus Web-Based Enterprise Management (WBEM) 서비스가wbemcli
유틸리티를 사용하여 파일 시스템에 대한 정보를 검색하려고 하면 SELinux에서 마운트에 대한 액세스가 거부되었습니다. 이번 업데이트를 통해 SELinux 정책이 수정되어 OpenPegasus 가 설명된 시나리오에서 마운트에 액세스할 수 있습니다. - BZ#952621
- SELinux가 강제 모드일 때 누락된 SELinux 정책 규칙으로 인해
샌드박스
SELinux 도메인을 상속된 사용자 터미널을 사용할 수 없었습니다. 이번 업데이트를 통해샌드박스
도메인이 이러한 터미널을 사용하도록 각 규칙이 업데이트되었습니다. - BZ#953180
- SELinux 정책 규칙이 충분하지 않기 때문에 혼합 Red Hat Network Satellite 및 Red Hat Network Satellite Proxy 환경에서
s2s
서비스를 사용할 때 다음 AVC 메시지가audit.log
파일에 반환되었습니다.type=AVC msg=audit(1364300742.715:101611): avc: denied { name_connect } for pid=2278 comm="s2s" dest=5269 scontext=system_u:system_r:jabberd_t:s0 tcontext=system_u:object_r:jabber_interserver_port_t:s0 tclass=tcp_socket
이 버그를 해결하기 위해 적절한 SELinux 규칙이 추가되어 이러한 경우 AVC 메시지가 더 이상 반환되지 않습니다. - BZ#956720
- 이전에는
opasswd
및opasswd.old
파일이etc_t
SELinux 컨텍스트로 레이블이 지정되었습니다. 그러나 이러한 파일에는 민감한 정보가 포함되어 있으며shadow_t
컨텍스트로 레이블이 지정되어 있어야 했습니다. 이번 업데이트를 통해 SELinux 정책이 수정되었으며 파일에 이제 예상대로shadow_t
로 레이블이 올바르게 지정됩니다. - BZ#957012
- 이전 버전에서는 클럭 장치(
/dev/ptp*
)가clock
_device_t
대신 device_t SELinux 레이블로 잘못 레이블이 지정되었습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 제공하고 클럭 장치에 올바르게 레이블이 지정됩니다. - BZ#957023
- 이전에는 강제 모드의 SELinux로 인해
svnserve
데몬이 TCP 포트 3690을 사용하지 못했습니다. 적절한 SELinux 정책 규칙이 업데이트되어svnserve
에서 포트를 예상대로 사용할 수 있습니다. - BZ#957265
- SELinux 규칙이 누락되어
aide_t
와prelink_t
SELinux 도메인 간 전환을 수행할 수 없었습니다. 그 결과 SELinux가 강제 모드에서 실행되면cron
작업 내에서 aide --check 명령이 제대로 작동하지 않았습니다. 이 버그를 수정하도록 해당 SELinux 규칙이 업데이트되어 이제 명령이 예상대로 작동합니다. - BZ#958682, BZ#975921, BZ#1009449
- 이전에는
mysqld_safe
스크립트에서shell_exec_t
SELinux 보안 컨텍스트를 사용하여 쉘(/bin/sh
)을 실행할 수 없었습니다. 그 결과 mysql55 및 mariadb55 소프트웨어 컬렉션 패키지가 제대로 작동하지 않았습니다. 이번 업데이트를 통해 SELinux 정책 규칙이 업데이트되어 이러한 패키지가 예상대로 작동합니다. 또한SYS_NICE
기능을 허용하도록mysqld_safe
SELinux 정책이 수정되었습니다. - BZ#966106
netns
와 함께 특정 버전의 서비스를 사용할 때 SELinux는 다양한 작업을 거부했기 때문에um이 예 기치 않게 종료되었습니다. 또한 작업에 대한 “dontaudit” 규칙으로 인해 SELinux가 허용 모드에서 실행되지 않는 한 AVC 메시지가 반환되지 않았습니다. SELinux가 더 이상 작업을 거부하지 않도록 적절한 SELinux 정책이 수정되었으며 설명된 시나리오에서 더 이상 작업을 수행하지 않습니다.- BZ#966515
- 이전에는
ftp_homdedir
부울을 활성화하면 부울에서 허용하지 않는 특정 규칙이 허용되었습니다. 관련 SELinux 정책이 수정되었으며 부울에서 이제 예상되는 규칙만 허용합니다. - BZ#966635
- 이전에는
Munin
Common Gateway Interface(CGI) 스크립트에 잘못 레이블이 지정되어 잘못된 SELinux 도메인에서 실행되었습니다. 스크립트의 파일 컨텍스트가httpd_munin_script_exec_t
로 업데이트되었으며 스크립트가 이제 올바른 SELinux 도메인에서 실행됩니다. - BZ#966640
- 이전에는
/var/log/syslog-ng
파일에syslog_var_run_t
SELinux 보안 컨텍스트로 레이블이 잘못 지정되었습니다. 결과적으로 SELinux가 강제 모드에서 실행되면logwatch
유틸리티에서 파일에 액세스할 수 없었습니다. 이번 업데이트를 통해syslog-ng
파일의 보안 컨텍스트가var_log_t
로 수정되었으며logwatch
가 이제 예상대로 파일에 액세스할 수 있습니다. - BZ#971594
- 이전에는 잘못된 SELinux 정책 및 AVC 거부 메시지로 인해 LVM(Logical Volume Management) 볼륨을 Red Hat OpenStack 3 인스턴스에 연결하려고 실패했습니다.
hald_t
SELinux 도메인에 대한 MCS(Multi-Category Security) 속성을 추가하도록 관련 SELinux 정책 규칙이 수정되었습니다. 결과적으로 AVC 거부 메시지는 이제 설명된 시나리오에서 더 이상 반환되지 않습니다. - BZ#973156
- 이전에는
/etc/yaboot.conf
파일에etc_t
SELinux 보안 컨텍스트로 레이블이 잘못 지정되었습니다. 이번 업데이트를 통해 보안 컨텍스트가bootloader_etc_t
로 변경되었습니다. - BZ#974932
- SELinux 정책에서는
SETUID
및SETGID
기능이 누락되었습니다. 결과적으로 SELinux가 강제 모드에 있을 때rsyslog
유틸리티는$PrivDropToUser
및$PrivDropToGroup
옵션으로 권한을 삭제할 수 없었습니다. 이번 업데이트를 통해 누락된 기능이 SELinux 정책에 추가되어rsyslog
가 예상대로 권한을 삭제할 수 있습니다. - BZ#978993
- SELinux가 잘못된 SELinux 정책 규칙으로 인해
chronyd
데몬이SYS_NICE
기능을 사용하지 못했습니다. 기능은sched_setscheduler()
기능에 필요합니다. 이번 업데이트를 통해 데몬이SYS_NICE
를 사용할 수 있도록 SELinux 정책 규칙이 수정되었습니다. - BZ#983217
- 이전에는
dovecot_t
SELinux 도메인에서oddjob_mkhomedir_t
SELinux 도메인으로 전환할 수 없었습니다. 그 결과 Dovecot 서버와 함께 사용자 홈 디렉터리를 만들고pam_oddjob_mkhomedir
모듈이 활성화되고 AVC 메시지가 반환되었습니다. 이제 전환이 허용되도록 SELinux 정책이 수정되었습니다. - BZ#995434
- 강제 모드에서 실행되는 SELinux로 인해
lldpad
서비스가fcoemon
서비스와 통신할 수 없습니다. 결과적으로 사용자는virt-manager
(Virtual Machine Manager)에서 가상 머신을 생성할 수 없어 다음 AVC 메시지가 반환되었습니다.type=AVC msg=audit(1376046443.294:69876): avc: denied { sendto } for pid=2755 comm="lldpad" path=003030303232 scontext=system_u:system_r:lldpad_t:s0 tcontext=system_u:system_r:fcoemon_t:s0 tclass=unix_dgram_socket
적절한 SELinux 정책이 수정되어 사용자가 예상대로 가상 머신을 생성할 수 있습니다. - BZ#998663
- 이전에는 SELinux 정책에서
/var/run/vdsm/storage/
VDSM의 데몬 디렉터리에 있는 볼륨을 기반으로 가상 머신을 실행하지 못했습니다. 결과적으로 이러한 가상 머신을 실행하려고 하면 오류가 발생하여 예기치 않게 종료되었습니다. 이번 업데이트를 통해/var/run/
디렉터리의 심볼릭 링크를 읽도록svirt_t
SELinux 도메인이 업데이트되었습니다. 결과적으로 설명된 시나리오에서 가상 머신이 더 이상 실패하지 않습니다. - BZ#1005196, BZ#1005250
- 잘못된 SELinux 정책 규칙으로 인해 특정 SELinux 도메인이
/sys/devices/system/cpu/
디렉터리에 액세스할 수 없었습니다. 결과적으로 이러한 도메인은 디렉터리에서 정보를 가져올 수 없었습니다. 이번 업데이트를 통해 도메인이/sys/devices/system/cpu/
디렉터리에 액세스할 수 있도록 관련 SELinux 정책 규칙이 업데이트되었습니다. - BZ#1005806
- Multi-Level Security (MLS) SELinux 정책을 활성화하면
xinetd
데몬이 쉘 스크립트를 실행하지 못하고 다음 오류 메시지가 반환되었습니다.xinetd[2771]: execv( /usr/local/eal4_testing/audit-test/utils/network-server/pidfile_kill.sh ) failed: Permission denied (errno = 13)
xinetd
가 쉘 스크립트를 실행할 수 있도록 적절한 SELinux 규칙이 업데이트되었습니다. - BZ#1006952
- SELinux 정책 규칙이 충분하지 않기 때문에
libvirt
라이브러리를 사용하여 QEMU 프로세스를 시작하려고 하면 오류와 함께 실패했습니다. 이번 업데이트를 통해 SELinux 정책이 수정되었으며 QEMU 프로세스가 예상대로 시작됩니다. - BZ#1009661
- SELinux 정책 규칙이 충분하지 않기 때문에 자동 무선 테스트 중에
beaker
작업이 실패하고 AVC 거부 메시지가 반환되었습니다. 결과적으로 사용자는 무선 연결을 사용할 수 없었습니다. 이 버그를 수정하도록 적절한 SELinux 정책 규칙이 업데이트되어 사용자가 설명된 시나리오에서 무선 연결을 사용할 수 있습니다. - BZ#1009838
- 누락된 SELinux 정책 규칙으로 인해 서버에서
yppasswdd
데몬을 사용하도록 시스템이 설정된 경우rpc.yppasswdd
바이너리가/var/run/utmp
파일을 읽고/boot/
디렉터리의 콘텐츠를 나열할 수 있었습니다. 관련 SELinux 정책이 업데이트되어 데몬이 예상대로utmp
파일과/boot/
디렉토리에 액세스할 수 있습니다. - BZ#1009859
- 시스템이 클라이언트 인증을 위해 PAM(Pluggable Authentication Module)을 사용하는 CVSS(동시 버전 시스템) 서버에 설정된 경우 CVS 바이너리는
/var/run/utmp
파일을 읽을 수 없었습니다. 이번 업데이트에서는 CVS가 예상대로 파일을 읽을 수 있도록 관련 SELinux 정책을 수정합니다.
기능 개선
- BZ#926022
- 이번 개선된 기능을 통해 새 부울
ftpd_use_fusefs
가 SELinux 정책에 추가되었습니다. 활성화하면 이 부울을 사용하면 FTP(파일 전송 프로토콜) 데이터 디렉터리에 GlusterFS 마운트를 사용할 수 있습니다. - BZ#854963, BZ#876334, BZ#881834, Bz#891779, BZ#1000521
pand
,haproxy
,watchdog
,lldpad
및openhpid
데몬은initrc_t
SELinux 도메인에서 실행되었습니다. 이번 개선된 기능을 통해 데몬에 SELinux 지원이 추가되어 이제 별도의 SELinux 도메인을 사용합니다.- BZ#871437
- 이번 개선된 기능을 통해 smstools 패키지에 대한 새로운 SELinux 정책이 제공됩니다.
- BZ#880728, BZ#986198
- 이전에는 도움말 페이지에 업데이트된 모든 SELinux 정책 규칙이 포함되지 않았습니다. 이번 업데이트를 통해 실제 SELinux 정책이 selinux-policy 패키지에 포함됩니다. 결과적으로 이러한 도움말 페이지를 최신 상태로 유지합니다.
- BZ#889120, BZ#915151, BZ#923246, BZ#924843, BZ#1011963,
- 이전에는
pacemaker
리소스 관리자에 자체 SELinux 정책을 정의되어initrc_t
도메인을 사용했습니다. 이번 업데이트를 통해pacemaker
를 포함한 모든 클러스터 관리 서비스가cluster_t
SELinux 도메인에 병합되었습니다. 이 병합 외에도 다른 모든 Red Hat Cluster 서비스가cluster_t
도메인을 사용하도록 업데이트되었습니다. - BZ#859651, BZ#1004380, BZ#1010324
git_shell_t
SELinux 유형이 SELinux 정책에서 제거되었습니다. 이번 개선된 기능을 통해 Git 제어 시스템에 대해 업데이트된 SELinux 정책이 제공됩니다.- BZ#890554
- 이번 개선된 기능을 통해 Zabbix 모니터링 시스템에 대한 SELinux 정책이 업데이트되었습니다.
- BZ#915314
- 이번 개선된 기능을 통해 사용자가 Gluster 파일 시스템을 마운트할 수 있는 새로운 규칙 세트가 SELinux 정책에 추가되었습니다.
- BZ#922732, BZ#966387
/var/lib/openvpn/
디렉터리에 대해 새로운 SELinux 파일 유형 및 레이블이 추가되었습니다. 또한 OpenVPN이 자체 로그 파일을 관리할 수 있도록 SELinux 정책이 업데이트되었습니다.- BZ#928020, BZ#955189, BZ#979421, BZ#999471, BZ#1002593
- 이번 개선된 기능을 통해
amavis_t
,clamd_t
,clamscan_t
,freshclam_t
SELinux 도메인이antivirus_t
SELinux 도메인에 병합되었습니다. - BZ#952827
- 이번 업데이트를 통해 28017, 28017, Cryostat18, 28018, Cryostat19 및 28019 포트에 대한 SELinux 지원이 추가되었습니다. 이제 포트에서 별도의
mongod_port_t
SELinux 포트 유형을 사용합니다. - BZ#953652, BZ#963465, BZ#968344, BZ#969485
- 이번 업데이트를 통해 OpenShift 애플리케이션 플랫폼의 SELinux 정책이 최신 업스트림 정책을 반영하도록 업데이트되었습니다.
- BZ#953754
usr/lib(64)?/nagios/plugins/
디렉터리에 있는 모든 Cryostat 플러그인의 파일 컨텍스트가nagios_unconfined_plugin_exec_t
컨텍스트로 업데이트되었습니다.- BZ#955774
- 이번 개선된 기능을 통해 SELinux 정책에 두 개의 새 부울이 추가되었습니다.
tftp_use_nfs
부울을 사용하면TFTP( Trivial File Transfer Protocol)가 공용 파일 전송 서비스를 위한 NFS 볼륨에서 읽을 수 있습니다.tftp_use_cifs
부울을 사용하면 TFTP가 CIFS 볼륨에서 읽을 수 있습니다. - BZ#959554
- 새로운 공유 시스템 인증서 기능은 시스템에 신뢰할 수 있는 인증 및 블랙리스트 정보를 읽을 수 있는 새로운 위치를 추가했습니다. 이번 개선된 기능을 통해 SELinux 파일 컨텍스트가 적절하게 업데이트되었습니다.
- BZ#964345
- QEMU 게스트 에이전트(
qemu-ga
)와 관련된 SELinux 정책이 새로운qemu-ga
기능 및 기능에 따라 업데이트되었습니다. - BZ#968403
- 이번 업데이트를 통해 최신 업스트림 정책을 반영하도록 Oracle ASM(Automatic Storage Management)에 대한 SELinux 정책이 업데이트되었습니다.
- BZ#977047
- Zettabyte 파일 시스템(ZFS)이 지원되는 파일 시스템의
xattr
목록에 추가되었습니다. 이번 개선된 기능을 통해 SELinux 정책이 적절하게 업데이트되었습니다. - BZ#979432
- 새로운
openvpn_run_unconfined
부울이 SELinux 정책에 추가되었습니다. 부울을 활성화하면 OpenVPN이 제한되지 않은 스크립트를 실행할 수 있습니다. - BZ#986883
- 이번 업데이트를 통해 최신 업스트림 정책을 반영하도록 IPsec(Internet Protocol Security)에 대한 SELinux 정책이 업데이트되었습니다.
- BZ#1006370
- 이번 업데이트를 통해
openstack-selinux
정책의 접두사가 난수에서 “neutron” “으로” 변경되었습니다. - BZ#1011973
- 이번 개선된 기능을 통해 TCP 포트 9000에
httpd_port_t
SELinux 레이블이 지정됩니다.
8.199. setuptool
버그 수정
- BZ#883581
- /usr/share/man/man1/setup.1.gz 파일에는 더 이상 실행 가능한 플래그가 설정되지 않았습니다.
8.200. sg3_utils
버그 수정
- BZ#920687
- show_devices() 함수에 사용되는 논리('sginfo" 명령으로 사용) /dev 디렉터리를 스캔하여 이러한 장치를 여는 사용 가능한 스토리지 장치를 식별합니다. 그 결과 /dev/snapshot 파일이 열려 있어 시스템이 일시 중지/최대를 준비할 수 있게 되었고, 그 중 하나로 핫 추가된 CPU가 활성화되지 않도록 차단했습니다. 이 버그를 해결하기 위해 show_devices() 함수에서 어떤 장치를 열지 결정하는 데 사용되는 논리가 조정되었습니다. 결과적으로 "sginfo -l" 명령을 실행하면 핫 추가 CPU의 활성화를 차단하는 의도하지 않은 부작용이 더 이상 발생하지 않습니다.
8.201. slapi-nis
버그 수정
- BZ#923336
- NIS 서버 플러그인의 버그로 인해 여러 클라이언트가 스트림 소켓을 통해 서버에 연결된 경우 이러한 클라이언트 중 일부는 예상보다 일찍 연결 해제되었습니다. 이 버그는 수정되었으며 설명된 경우 클라이언트가 더 이상 조기에 연결되지 않습니다.
- BZ#967468
- 이번 업데이트 이전에는 NIS 서버 플러그인에서 디코딩된 클라이언트 요청을 보유하는 데 사용된 메모리를 해제하지 않았습니다. 결과적으로 디렉터리 서버는 NIS 클라이언트에서 더 많은 요청을 처리할 때 과도한 양의 메모리를 사용했습니다. 버그가 수정되었으며 디렉터리 서버는 이제 예상되는 양의 메모리를 사용합니다.
8.202. sos
8.202.1. RHBA-2013:1688 - 버그 수정 및 개선 사항 업데이트
버그 수정
- BZ#876309
- SELinux 플러그인은 최신 Linux 배포에서 사용되지 않는 일부 명령을 사용했기 때문에 sosreport 유틸리티는 SELinux 도구 및 진단에서 일부 정보를 수집할 수 없었습니다. SELinux 툴 및 진단의 변경 사항을 반영하도록 플러그인이 업데이트되어 sosreport가 이러한 구성 요소에서 더 많은 정보를 수집할 수 있습니다.
- BZ#883811
- 이전 버전의 sos는 libvirt의 XML 구성 파일에서 암호를 마스킹하지 않았으며 corosync-obctl 명령의 출력으로 암호가 sosreport 데이터 수신자에게 공개되었을 수 있습니다. 이번 업데이트에서는 해당 libvirt 및 corosync 플러그인을 수정하여 이제 앞서 언급한 소스에서 데이터를 수집할 때 암호를 남겨 둡니다.
- BZ#888488
- 이전 버전에서는 외부 명령을 실행할 때 sos는 sos 데이터 수집에 사용된 플러그인에서 환경을 명시적으로 지정하지 않는 한 항상 사용자의 환경 설정을 사용했습니다. 결과적으로 수집된 출력은 sosreport 명령을 실행하는 사용자의 로케일 및 사용자 지정 설정의 대상이었으며, 이는 데이터를 추가로 처리하는 데 바람직하지 않을 수 있었습니다. 이번 업데이트를 통해 일관된 LC_ALL 설정으로 모든 외부 명령을 실행하고 C 로케일을 사용하여 명령 출력을 수집합니다.
- BZ#888589
- sosreport 유틸리티는 이전에 설치된 모든 패키지를 기본적으로 확인했으며, 이는 CPU 및 메모리 사용량에 큰 문제가 있었습니다. 이러한 상황을 방지하기 위해 rpm 플러그인에 커널 패키지와 같은 코어 시스템 패키지를 포함하여 확인할 고정된 패키지 목록이 포함되어 있습니다.
- BZ#888724
- 이전 버전의 sos는 수집된 파일의 권한을 보존하지 않았습니다. sosreport 아카이브의 파일 권한이 호스트 시스템의 파일 권한과 일치하지 않아 사용자에게 잘못된 것일 수 있습니다. 이번 업데이트를 통해 수집된 파일의 소유권 및 권한이 유지됩니다.
- BZ#913201
- 이전에는 sosreport 유틸리티에서 proc 파일 시스템(/proc/net/rpc/*/channel)에서 RPC 채널 파일을 복사하려고 시도하여 로컬 시스템에서 예기치 않은 RPC 오류가 발생할 수 있었습니다. 이러한 파일은 컬렉션에서 블랙리스트에 추가되었으며 sosreport 명령은 더 이상 활성 RPC 통신을 방해할 수 없습니다.
- BZ#924925
- openswan 플러그인은 VPN 관련 진단 정보를 얻기 위해 이전에 "ipesec barf" 명령의 출력을 수집했습니다. 이로 인해 UID가 큰 계정이 포함된 시스템에서 실행되고 버그 771612의 영향을 받는 openswan 버전을 설치한 경우 sosreport가 응답하지 않을 수 있습니다. 이번 업데이트를 통해 ipsec barf 명령이 더 이상 기본적으로 실행되지 않으며 명령줄에서 barf 기능이 명시적으로 활성화되지 않는 한 이 시나리오에서는 문제가 더 이상 발생하지 않을 수 있습니다.
- BZ#947424
- devicemapper 플러그인은 udev 하위 시스템에서 정보를 가져오는 데 더 이상 사용되지 않는 구문을 사용했습니다. 플러그인이 실제 명령인 "udevadm info" 대신 "udevinfo" 명령이라고 합니다. 이 업데이트는 이 업데이트로 수정되었으며 관련 블록 장치 유형에 대해 올바른 속성 데이터를 수집할 수 있습니다.
- BZ#966602
- sosreport 명령은 tar 프로그램이 기본적으로 표준 출력에 항상 데이터를 쓰는 것으로 잘못 가정했습니다. 결과적으로 CryostatE 환경 변수가 설정된 경우 데이터가 DVD 장치에 예기치 않게 작성되었거나 이 변수에 의해 확장될 수 있었습니다. sosreport가 "-f" 옵션을 사용하여 tar 명령을 항상 호출하여 데이터를 표준 출력에 강제로 작성하도록 수정되었습니다. 환경에서 CryostatE 변수를 설정하는 사용자는 기존의 포맷 장치의 데이터를 덮어쓰지 않고도 sosreport를 실행할 수 있습니다.
- BZ#986301
- 이전 버전의 sos는 luci 구성 파일의 암호를 클러스터 모듈에서 수집할 수 있었기 때문에 암호가 sosreport 데이터 수신자에게 공개되었을 수 있습니다. 이번 업데이트에서는 luci 암호가 수집된 데이터에서 제외되도록 클러스터 모듈이 수정되었습니다.
- BZ#986973
- 시스템의 Winbind 구성에 표시되는 도메인에서 사용자 정보를 수집하기 위해 "wbinfo -u" 명령이라는 이전 버전의 sos 패키지입니다. 그러나 wbinfo 명령은 신뢰할 수 있는 많은 도메인이 있는 대규모 Active Directory 설치에서 매우 많은 양의 메모리 및 CPU 시간을 사용할 수 있습니다. 결과적으로 sosreport는 응답하지 않는 것으로 보이며 다른 프로세스에 대한 메모리 부족 상태가 트리거되었을 수 있었습니다. sosreport 명령이 wbinfo 명령과 함께 "--domain='.'" 스위치를 사용하도록 수정되어 데이터 수집을 로컬 도메인으로 제한합니다. 설명된 시나리오에서는 문제가 더 이상 발생하지 않습니다.
- BZ#987103
- 이전 버전의 sos는 kerberos 인증이 구성된 시스템에서 /etc/krb5.keytab 파일을 수집했습니다. 이 파일에는 암호화된 키가 포함되어 있으며 제한된 진단 값입니다. 이제 파일의 항목 요약을 대신 klist 명령을 사용하여 가져옵니다.
기능 개선
- BZ#868711
- "gluster volume geo-replication-status" 명령의 출력은 Gluster 지역 복제와 관련된 문제를 디버깅하는 데 중요할 수 있습니다. 따라서 gluster 플러그인은 기본적으로 이 진단 출력을 수집합니다.
- BZ#907861
- ID 매핑 데몬(idmapd)은 NFS 서비스에서 사용하는 ID 매핑을 제어하며 진단 및 문제 해결에 중요할 수 있습니다. 따라서 idmad.conf 구성 파일은 이제 NFS 클라이언트 및 서버 호스트에서 수집되며 sosreport 유틸리티에서 분석할 수 있습니다.
- BZ#924338
- sosreport 유틸리티를 사용하면 OpenHPI(Open Hardware Platform Interface) 구성 요소의 구성 파일을 수집할 수 있습니다.
- BZ#924839
- 이제 sosreport 유틸리티는 시스템에 있는 vmcore 덤프 파일에서 커널 로그 데이터(dmesg 로그)를 수집합니다.
- BZ#989292
- 이제 sos 패키지에서 crm_report 툴을 사용하여 통합 클러스터 진단 데이터 수집을 지원합니다.
8.203. spice-gtk
SPICE
(독립 컴퓨팅 환경용 Simple Protocol for Independent Computing Environments) 클라이언트에 대한GTK+
(GTK+) 위젯을 제공합니다.
Virtual Machine Manager와 Virtual Machine Viewer 모두 이 위젯을 사용하여 SPICE
프로토콜을 사용하여 가상 머신에 액세스할 수 있습니다.
버그 수정
- BZ#980400
polkit
유틸리티는 최신GTK+
및GLib
버전을 기반으로 빌드되므로 이러한 버전에 대한 런타임 종속성이 있습니다. 이전 버전에서는GTK+
및GLib
를 업그레이드하지 않고spice-gtk
를 업그레이드하면polkit
을 사용하는 애플리케이션이 시작 시 예기치 않게 종료되었습니다. 이번 업데이트를 통해spice-gtk
RPMs에 충분한 새로운 버전의GTK+
및GLib
가 필요하도록 RPM 종속성이 조정됩니다. 따라서 필요한GTK+
및GLib
버전도 설치되지 않는 한spice-gtk
를 설치할 수 없습니다.- BZ#879352
- 이번 업데이트 이전에는
spice-gtk
가 기본적으로 서버 일반 포트에 연결되었으며 서버가 포트를 제공한 경우에만 성공했습니다. 그러나 이로 인해spice-gtk
가 기본적으로 보안 포트에 연결되지 않았습니다. 이번 업데이트를 통해spice-gtk
는 항상 일반 포트를 먼저 시도하지 않고 보안 포트에 연결할 수 있습니다. - BZ#906558
- 이전 버전에서는 MicrosoftOut의 메시지 창에서 Shift+CTRL+V 키의 조합을 누르면
spice-gtk
클라이언트가 예기치 않게 종료되었습니다. 이 버그를 해결하기 위해 렌더링되지 않은 비트맵의 캐시 팔레트가 적용되었으며 앞서 언급한 시나리오에서 클라이언트가 더 이상 충돌하지 않습니다. - BZ#998529
- Microsoft Windows 게스트를 사용하여 PuTTY 세션에 마우스 포인터를 배치하면 마우스 포인터가 검정색으로 표시됩니다. 이제 커서 대비가 개선되어 PuTTY 세션을 가리킬 때 커서가 명확하게 표시됩니다.
- BZ#885101
spice-gtk
가 연결할 수 없는 호스트에 연결되면 연결 시간 초과 오류가 발생하는 데 약 2분이 걸렸습니다. 이번 업데이트를 통해spice-gtk
는 연결할 수 없는 호스트 오류를 보고하기 전에만 10초 동안 기다립니다.- BZ#815639
- 이전에는
spice-gtk
가 소프트웨어스마트 카드
지원이 이미 초기화되었다는 표시를 올바르게 처리하지 않았습니다. 결과적으로 소프트웨어스마트 카드
지원은 마이그레이션 후 또는 게스트를 다시 시작한 후 작동을 중지했습니다. 이 문제를 해결하려면libcacard
에서 소프트웨어스마트
카드 지원이 이미 초기화되었다고 보고하는 경우spice-gtk
연결 시간에 소프트웨어스마트
카드 지원을 비활성화하지 마십시오. 이 해결 방법을 통해 소프트웨어스마트 카드
지원은 게스트 재부팅 또는 마이그레이션 시 계속 작동합니다.
기능 개선
- BZ#948618
- 이제
SPICE
클라이언트에서 HTTP 프록시 서버 지원을 사용할 수 있습니다. 이제SPICE
클라이언트에서 환경 SPICE_PROXY=host:port 변수 또는 컨트롤러에서 지정한 프록시 서버에 의해 원격 서버에 대한 연결을 설정합니다. - BZ#752350
- Red Hat Enterprise Linux 및 Microsoft Windows 운영 체제는 서로 다른 줄 끝을 사용합니다. 이번 업데이트를 통해
SPICE
게스트 에이전트가 이 기능을 지원하는 경우 새 기능이 구현되어 있어 복사 및 붙여넣기 중에 줄 시퀀스의 끝을 대상 운영 체제로 변환합니다. - BZ#978405
- 높은 대기 시간과 제한된 대역폭으로 인해 동영상이 매우 저하될 수 있습니다. 이번 업데이트를 통해 대역폭 및 대기 시간이 조정된 Adaptive 비디오 스트리밍이 구현되어 낮은 속도 네트워크를 통해 비디오 환경을 개선할 수 있습니다.
8.204. spice-protocol
기능 개선
- BZ#978410
- 제한된 대역폭에 대한 비디오 재생의 연속성이 향상되었습니다. 이제 씬 삭제 및 일시 중지가 줄어들어 사용자 환경이 개선됩니다. 이 업데이트 후에는 클라이언트의 주기적인 보고서를 사용하여 비디오 비트 비율 및 재생 대기 시간이 동적으로 조정됩니다. 이전 비디오 재생의 대역폭 및 대기 시간 추정은 향후 비디오 재생의 초기 매개 변수 설정을 개선하는 데 사용됩니다.
8.205. spice-server
버그 수정
- BZ#823472
- 대부분의 SPICE 채널을 사용하는 기본 스레드에서 액세스한 데이터는 디스플레이 및 커서 채널과 같은 다른 채널의 스레드에서 액세스할 수 있습니다. 데이터를 보호하기 위해 SPICE 코드에 어설션 검사가 추가되었습니다. 그러나 사운드 채널 인터페이스에 대한 특정 호출은 가상 CPU(vCPU) 스레드를 사용합니다. 이전에는 SPICE 서버와 KVM(커널 기반 가상 시스템) 하이퍼바이저가 중단되는 어설션 검사에서 이러한 호출이 거부되었습니다. KVM은 vCPU 및 I/O 스레드에 전역 상호 제외(mutex)를 사용하므로 이러한 호출은 무해합니다. 이번 업데이트를 통해 SPICE 및 KVM을 중단하는 대신 경고가 반환됩니다.
- BZ#859027
cert-host-subject
옵션을 사용하여client_migrate_info()
기능을 호출한 다음 옵션 없이 호출되면 세 번째 호출 시 옵션을 두 번 해제했습니다. 두 번째 호출 중에 포인터가 처음 해제된 후 포인터가 NULL로 설정되지 않았기 때문입니다. 이 동작으로 인해 SPICE 서버가 세그먼트 오류로 인해 예기치 않게 종료되었습니다.cert-host-subject
옵션이 지정되지 않은 경우 기본 소스 코드가 수정되고 포인터가 NULL로 설정됩니다. 결과적으로 포인터는 한 번만 해제되고 설명된 시나리오에서는 SPICE가 더 이상 충돌하지 않습니다.- BZ#918169
- 두 항목이 클라이언트에 전송되고 클라이언트 연결이 끊어지면 첫 번째 항목이 성공적으로 삭제되었지만 두 번째 항목은 삭제되지 않았습니다. 결과적으로 어설션 확인 실패로 SPICE 서버가 예기치 않게 종료되었습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하여 두 번째 항목도 올바르게 지워집니다. 결과적으로 설명된 시나리오에서 SPICE 서버가 더 이상 충돌하지 않습니다.
- BZ#918472
- SPICE 소스 코드의 버그로 인해
getaddrinfo()
함수를 실행하려고 하면 세그먼트 오류로 실패했습니다. 그 결과 빠른 에뮬레이터(QEMU)가 예기치 않게 종료되었습니다. 기본 소스 코드가 수정되었으며getaddrinfo()
를 실행할 때 QEMU가 더 이상 충돌하지 않습니다. - BZ#950029
- 마이그레이션 프로세스 중에 SPICE 소스 서버가 비디오 데이터를 스트리밍하면
MSG_MIGRATE
메시지를 보낸 후 SPICE 클라이언트에 스트림 관련 메시지를 보낼 수 있었습니다. 이는 허용되지 않으며 클라이언트는MSG_MIGRATE_DATA
메시지 대신 잘못된 메시지를 대상 호스트에 전달했습니다. 그런 다음 대상 호스트가 마이그레이션을 중단했습니다. 이번 업데이트에서는MSG_MIGRATE_DATA
메시지를 보낸 후MSG_MIGRATE
및 마이그레이션 프로세스만 성공적으로 완료되도록 SPICE 서버 코드를 수정합니다. - BZ#952666
- 이전에는 경로가 테스트되지 않았으며 QXL 드라이버에서 요청하지 않았기 때문에 SPICE 서버에서 “stride >= 0” 경로를 사용하여 표면을 생성할 수 없었습니다. 결과적으로 QXL 드라이버가 이러한 표면을 만들려고 하면 특정 시스템에서 오류와 함께 SPICE가 예기치 않게 종료되었습니다. “stride >= 0” 경로를 사용하여 표면을 생성할 수 있도록 기본 소스 코드가 수정되었습니다. 결과적으로 설명된 시나리오에서 SPICE 서버가 더 이상 충돌하지 않습니다.
- BZ#956345
- 특정 상황에서 VM(가상 머신) 마이그레이션 시 SPICE 서버가 중단될 수 있었습니다. 이는 VM이 동일한 SPICE 클라이언트 세션 내의 현재 호스트로 마이그레이션된 후 새 호스트로 마이그레이션되는 경우 발생할 수 있습니다. 그런 다음 원래 호스트와 클라이언트 간의 연결이 낮은 대역폭 연결인 경우 새 호스트는 잘못된 연결 대역폭 값을 SPICE 클라이언트에 전달하여 SPICE 서버가 중단되었습니다. 이번 업데이트에서는 이 문제를 해결하는 패치를 제공하고 SPICE 서버는 이제 이 시나리오에서 올바른 연결 대역폭 값을 보냅니다.
- BZ#958276
- 이전에는 대상 호스트에서 마이그레이션 중에 다중 미디어 시간을 클라이언트에 전송하지 않아 클라이언트가 소스 서버의 다중 미디어 시간을 보관했습니다. 결과적으로 소스 및 대상 호스트에 다른 멀티 미디어 시간이 있고 오디오 재생이 없는 경우 클라이언트가 마이그레이션을 삭제한 후 생성된 비디오 프레임입니다. 이번 업데이트에서는 이 버그를 수정하기 위해 패치를 적용하고 설명된 시나리오에서는 비디오 프레임이 더 이상 삭제되지 않습니다.
- BZ#977998
- 이전 버전에서는 비트맵을 보낼 때 설정된 잘못된 플래그로 인해 클라이언트 표시 채널에서 끝없는 루프가 발생했습니다. 이 동작은 특히 제한된 대역폭 조건에서 발생했습니다. 결과적으로 SPICE 서버가 응답하지 않을 수 있었습니다. 이 버그를 수정하도록 기본 소스 코드가 수정되었으며 SPICE가 더 이상 이러한 상황에서 중단되지 않습니다.
- BZ#977998
- 이전에는 클라이언트 응답의 대기 시간 초과 기간이 150초로 설정되었습니다. 이 기간이 너무 길고 특정 상황에서 서버 오류가 반환되었습니다. 이번 업데이트를 통해 서버 오류가 발생하지 않도록 대기 시간 초과 기간이 30초로 설정되었습니다.
기능 개선
- BZ#961848
- 이번 개선된 기능을 통해 새로운 QEMU
disable-agent-file-transfer
옵션에 대한 지원이 제공됩니다. 결과적으로 사용자는 이제 파일 전송 메시지를 필터링할 수 있습니다. - BZ#978403
- 이번 업데이트에서는 더 나은 비디오 품질을 제공하는 Adaptive 비디오 스트리밍이 도입되었습니다. 이 기능을 사용하면 네트워크 대역폭 및 대기 시간이 추정되고 비디오 비트 비율 및 재생 대기 시간이 동적으로 조정됩니다. 또한 이전 비디오 재생의 대역폭 및 대기 시간 추정은 향후 비디오 재생의 초기 매개 변수 설정을 개선하는 데 사용됩니다.
8.206. spice-vdagent
버그 수정
- BZ#881020
- 게스트의 모니터 구성을 조정하는 동안 SPICE 게스트 에이전트가 전체 화면 모드로 전환될 때 해상도를 설정하지 못하여 게스트의 모니터 구성이 일관성 없는 상태로 유지될 수 있었습니다. 이 문제는 에이전트에서 게스트의 비디오 메모리가 소진되었을 때 상황을 처리하지 않았기 때문에 발생했습니다. 이번 업데이트에서는 에이전트가 게스트 모니터 구성을 조정하지 못할 때 게스트의 모니터 구성을 이전 상태로 되돌리면 문제가 해결되었습니다.
- BZ#894036
- 이전에 SPICE 게스트 에이전트에서는 게스트의 모니터 구성이 항상 연속될 것으로 예상했으며, 디스플레이 창을 오름차순으로 연결(즉 1, 2, 3, ...)으로 설정 및 유지하려고 했습니다. 따라서 사용자가 순서대로 표시를 열고 표시 창을 닫을 때 어떤 디스플레이가 닫히는지를 선택할 수 없었습니다. 이 문제는 스파스 모니터 구성을 에이전트에 전송하여 해결되어 열려 있거나 닫힐 디스플레이를 지정할 수 있습니다. 비활성화할 모니터는 스파스 모니터 구성에서 0x0 크기의 모니터로 구성됩니다.
- BZ#894365
- 창 크기 조정, 데이터 복사 및 붙여넣기, 전체 화면 모드로 변경과 같은 특정 작업을 수행한 후 spice-vdagentd 데몬이 다시 시작되면 사용자 세션 spice-vdagent 프로세스가 예기치 않게 종료될 수 있었습니다. 이는 SPICE 게스트 에이전트가 spice-vdguestd 재시작 시 이미 없는 메모리를 해제하려고 시도했기 때문에 발생했습니다. 이제 에이전트가 메모리를 올바르게 해제하고 사용자 세션 spice-vdagent 프로세스가 더 이상 이 시나리오에서 충돌하지 않습니다.
- BZ#895004
- spice-vdagent가 이러한 구성을 지원하므로 단일 qxl 장치당 여러 모니터를 사용할 때 Linux용 SPICE 게스트 에이전트가 경고 메시지를 기록했습니다. spice-vdagentd 데몬이 수정되어 로그에 경고 메시지가 더 이상 발생하지 않습니다.
- BZ#999804
- virtio 채널 없이 시스템에서 SPICE 게스트 에이전트를 실행하는 경우 에이전트가 누락된 virtio 장치에 대한 의도하지 않은 오류 메시지를 발송합니다. 이번 업데이트에서는 코드에서 해당 syslog() 호출을 제거하여 이 문제를 해결했으며 이 상황에서 시스템 로그에서 오류 메시지가 더 이상 발생하지 않습니다.
- BZ#1003977
- 사용자가 클라이언트에서 게스트로 대량의 데이터를 복사하는 동안 이를 닫은 후 remote-viewer 창에 다시 연결되면 copy-paste 함수가 작동을 중지했습니다. 또한 사용자는 왼쪽 마우스 버튼을 클릭하여 컨텍스트 메뉴를 호출할 수 없었습니다. 이 문제는 SPICE 게스트 에이전트가 이 상황에서 클립보드를 해제하지 않았기 때문에 발생했습니다. 에이전트가 클립보드를 올바르게 해제하도록 수정되었으며 문제가 더 이상 발생하지 않습니다.
기능 개선
- BZ#799482
- 이제 SPICE 게스트 에이전트는 클라이언트가 게스트의 운영 체제와 다른 운영 체제에서 실행되는 경우(예: Windows 클라이언트 및 Linux 게스트를 실행하는 경우) 올바르게 변환되도록 지원합니다.
- BZ#904082
- 이번 업데이트에서는 여러 X11 화면이 있는 설정에 대한 지원이 추가되었습니다. 이러한 설정은 각 장치가 별도의 화면에 매핑되는 여러 qxl 장치를 사용하여 수행할 수 있습니다. 이 설정은 다음과 같은 제한 사항이 있습니다. X11 화면당 하나의 모니터만 사용할 수 있으며(qxl 장치) 모든 모니터는 동일한 해상도를 유지해야 하며 SPICE 클라이언트가 없기 때문에 게스트 시스템에서 확인 동기화를 수행해야 합니다.
- BZ#904084
- spice-vdagent에 새로운 "-X" 명령줄 옵션이 추가되어 이러한 서비스가 사용되지 않는 설정을 위해 ConsoleKit 프레임워크 및 런타임 시 systemd-logind 서비스 통합을 비활성화할 수 있습니다.
8.207. spice-xpi
버그 수정
- BZ#882339
- 이번 업데이트 이전에는 spice-xpi 브라우저 플러그인에서 /tmp/spicec-XXXXXX/spice-foreign 소켓과 /tmp/spicec-XXXXXX/ 디렉토리를 제거하지 않았으므로 클라이언트가 종료된 후에도 여전히 존재했습니다. 이 버그가 수정되었으며 이제 브라우저 플러그인은 클라이언트가 종료된 후 위에서 언급한 파일과 디렉터리를 제거합니다.
기능 개선
- BZ#994613
- SPICE 연결에 대한 프록시 지원이 spice-xpi 브라우저 플러그인에 추가되었습니다. 이번 업데이트를 통해 spice-xpi는 이제 Red Hat Enterprise Virtualization Manager 포털에서 콘솔을 열 때 생성된 SPICE 클라이언트에 프록시 설정을 전달할 수 있습니다.
8.208. sssd
버그 수정
- BZ#872827
- 그룹 멤버가 구성된 모든 검색 기반 외부에 있는 경우 호출자가 콜백을 등록할 수 있기 전에 get-group-members 요청이 완료된 대로 표시될 수 있습니다. 결과적으로 검색 기반 외부에 있는 멤버가 있는 그룹을 확인하는 작업이 중단된 것처럼 표시될 수 있었습니다. get-group-members 요청은 호출자가 콜백을 등록할 때까지 결과를 반환하는 특수 tevent_req_post() 함수를 호출하도록 수정되었습니다. 멤버가 구성된 검색 기반 외부에 있는 경우에도 요청이 올바르게 작동합니다.
- BZ#906398
- 존재하지 않는 속성이 요청되었을 때 이전 특성 배열을 다시 배치하는 대신 빈 속성을 할당할 수 있는 그룹 처리 코드 베이스에 사용되는 get_attribute 호출이 있었습니다. reallocation은 이전에 배열을 가리키는 기존 포인터를 무효화할 수 있었습니다. 그룹에 멤버가 전혀 포함되지 않은 경우 배열을 다시 할당하고 기존 포인터가 무효화되어 SSSD 데몬이 예기치 않게 종료될 수 있습니다. 이 버그를 해결하기 위해 빈 속성을 생성하는 대신 ENOENT 오류를 반환하는 다른 get_attribute가 사용됩니다. 결과적으로 SSSD가 더 이상 설명된 시나리오에서 충돌하지 않습니다.
- BZ#911329
- pam_pwd_expiration 경고가 Kerberos 공급자의 “0” 값으로 잘못 설정되었으므로 서버가 전송되었을 때 항상 암호 만료 경고가 표시되었습니다. 결과적으로 AD(Active Directory) 또는 IPA와 같은 특정 환경에서는 각 로그인 시 경고가 표시되었습니다. 이번 업데이트에서는 이 동작을 수정하는 패치를 적용하고 경고는 기본적으로 7일 후에 한 번만 표시되도록 설정됩니다.
- BZ#914433
- IPA 공급자의 로그인 파일을 생성한 코드는 오류 조건을 올바르게 처리하지 못했으며 SELinux 레이블을 작성하지 못한 후 복구할 수 없었습니다. 시스템에 selinux-policy-targeted 디렉터리가 없는 경우 SSSD 데몬이 작성된 대상 디렉터리입니다. 결과적으로 로그인 파일을 쓸 수 없었습니다. 이번 업데이트를 통해 SSSD가 쓰기 실패를 예상대로 올바르게 처리하도록 기본 소스 코드가 수정되었습니다.
- BZ#916997
- 이를 건너뛰지 않고 매우 큰 AD(Active Directory) 그룹을 검색할 수 있는 기능이 이전 Red Hat Enterprise Linux 버전에 추가되었습니다. 그러나 추가 해결에는 시간이 오래 걸리기 때문에 이 동작으로 인해 성능 문제가 발생할 수 있습니다. 이 버그를 해결하기 위해 SSSD 데몬이 매우 큰 AD 그룹을 건너뛸 수 있도록 새 옵션 “ldap_disable_range_retrieval” 이 추가되었습니다.
- BZ#918394
- sss_cache 유틸리티를 사용하여 메모리 캐시를 재설정하면 SSSD 데몬이 파일 설명자를 종료하지 않아 파일 설명자 누출이 발생했습니다. 기본 소스 코드가 수정되어 파일 설명자가 이제 설명된 시나리오에서 올바르게 닫힙니다.
- BZ#948830
- netgroups는 다른 소스의 중첩된 netgroups를 포함할 수 있으므로 SSSD 데몬이 한 번에 하나의 중첩 수준만 확인하고 glibc 라이브러리에서 다른 소스를 쿼리할 수 있습니다. 그러나 이전에는 중첩 수준당 전체 쿼리가 있었기 때문에 중첩된 netgroup 처리 속도가 매우 느렸습니다. 이번 업데이트를 통해 새로운 옵션 “refresh_expired_interval” 이 도입되었습니다. 옵션은 사용자 로그인을 기다리는 대신 백그라운드에서 만료된 레코드를 업데이트하는 작업을 제어합니다. 결과적으로 중첩된 netgroup 처리가 더 빨라집니다.
- BZ#950874
- 이전에는 단순 액세스 제어에서 사용자 이름이 대문자로 작성된 사용자의 대소문자를 구분하지 않는 도메인에 대한 액세스를 거부했습니다. 이번 업데이트에서는 모든 사용자가 예상대로 로그인할 수 있도록 이 버그를 수정하는 패치를 적용합니다.
- BZ#951086
- LDAP 요청 처리가 클라이언트 시간 초과(기본적으로 60초)보다 오래 걸리는 경우 PAM 클라이언트는 클라이언트 시간 초과에 도달하여 이전에 해제된 메모리에 액세스할 수 있었습니다. 그 결과 sssd_pam 프로세스가 세그먼트 오류로 예기치 않게 종료되었습니다. 이번 업데이트를 통해 이 요청의 시간 초과에 도달했음을 감지하면 SSSD 데몬이 LDAP 요청 결과를 무시합니다. 결과적으로 앞서 언급한 시나리오에서 sssd_pam 프로세스가 더 이상 충돌하지 않습니다.
- BZ#953165
- 사용자 계정을 저장할 때마다 SSSD 데몬은 인덱싱되지 않은 특성을 사용하여 불필요한 검색을 수행했습니다. 결과적으로 SSSD가 인덱싱되지 않은 특성을 검색했기 때문에 많은 수의 사용자 계정을 열거하는 동안 CPU의 거의 100%를 소비하는 경우가 있었습니다. 이번 업데이트를 통해 검색이 비활성화되었으며 SSSD에서 열거 결과를 저장할 때 더 이상 CPU 양을 사용하지 않습니다.
- BZ#954275
- DNS(Domain Name System) SRV(Domain Name System) SerRVice 레코드를 사용하여 서버를 검색하려고 하면 SSSD 데몬이 쿼리 내부 시간 초과가 경과한 경우에도 SRV 쿼리를 재시도하지 않았습니다. 결과적으로 서버 검색 프로세스가 특히 부팅 중에 처음으로 실패한 경우 SSSD가 다시 시작되거나 클라이언트의 네트워킹 상태가 SSSD 네트워킹 상태를 재설정할 때까지 쿼리를 재시도하지 않았습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 적용하여 시간 초과가 경과한 후 SRV 쿼리가 항상 재시도되도록 합니다. 결과적으로 SSSD는 이제 설명된 시나리오에서 SRV 쿼리를 올바르게 다시 시도합니다.
- BZ#954323
- 유예 경고 코드는 강제로 암호를 변경하기 전에 남아 있는 로그인 수를 표시합니다. 이전에는 해당 코드에 “off-by-one” 비교 버그가 있었습니다. 그 결과 389 Directory Server를 서버로 사용하면 마지막 유예 경고가 표시되지 않았습니다. 이번 업데이트를 통해 비교가 수정되었으며 유예 기간 동안 모든 로그인이 예상대로 경고가 생성됩니다.참고현재 유예 경고는 389 Directory Server 또는 Red Hat Directory Server가 LDAP(Lightweight Directory Access Protocol) 서버인 경우에만 작동합니다. 유예 경고는 OpenLDAP 서버에서 작동하지 않습니다. 이는 알려진 문제입니다.
- BZ#963235
- 구성된 검색 기반 외부에 있는 멤버가 모두 검색되면 검색 요청이 잘못 종료되었습니다. 이로 인해 use-after-free 메모리 액세스가 발생하여 sssd_be 프로세스가 예기치 않게 종료될 수 있었습니다. 모든 그룹 멤버가 구성된 검색 기반 외부에 있어도 이제 검색 요청이 올바르게 종료되도록 수정되었습니다. 결과적으로 sssd_be가 더 이상 설명된 시나리오에서 충돌하지 않습니다.
- BZ#966757
- 기본 DNS(Domain Name System) 시간 초과 값이 너무 높게 설정되어 SSSD 데몬이 모든 구성된 DNS 서버로 장애 조치되지 않았습니다. /etc/resolv.conf 파일에 결함이 있는 DNS 서버가 구성되면 파일에 구성된 모든 DNS 서버를 통해 장애 조치를 수행하기 전에 DNS 요청이 종료될 수 있었습니다. 기본 DNS 시간 초과가 감소하여 구성된 모든 DNS를 통해 SSSD가 예상대로 작동하지 않도록 합니다.
- BZ#967636
- 특정 상황에서 map이 너무 큰 경우와 같이 SSSD 데몬에서 Cryostat 데몬으로 반환된 map의 수가 올바르지 않았습니다. 그 결과, 맵은 Cryostat에 안정적으로 반환되지 않았습니다. 이 버그는 이 업데이트로 수정되었으며 모든 경우에 맵 수가 올바르게 표시됩니다.
- BZ#973345
- 캐시에 예기치 않은 조건인 동일한 이름의 두 항목이 포함된 경우 검색 요청이 올바르게 종료되지 않았습니다. 실제로 요청이 두 번 종료되었으므로 요청이 종료될 때 임의의 메모리에 액세스할 수 있었습니다. 캐시 검색 중 오류 처리가 수정되어 요청이 한 번만 종료되었습니다. 결과적으로 캐시가 손상된 경우 SSSD 데몬에서 상황을 처리할 수 있습니다.
- BZ#978966
- 이전에는 sudo 새로 고침 처리기에서 잘못된 콜백을 사용했습니다. 결과적으로 특정 사례에서 잘못된 메모리에 액세스할 수 있었기 때문에 sssd_sudo 프로세스가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 처리기는 올바른 콜백을 사용하므로 설명된 시나리오에서 프로세스가 더 이상 충돌하지 않습니다.
- BZ#978994
- 이전 버전에서는 sssd.conf(5) 매뉴얼 페이지의 “min_id” 옵션에 대한 설명이 오작동했습니다. 이 옵션은 올바르지 않은 “0” 값으로 설정할 수 있다고 했습니다. 이번 업데이트를 통해 도움말 페이지가 이제 옵션의 최소값이 “1” 임을 올바르게 설명하도록 설명이 변경되었습니다.
- BZ#979046
- 이전에는 IPA 공급자가 HBAC(Host-Based Access Control) 평가 중에 멤버 속성의 원래 값을 캐시에 저장하려고 했습니다. 이 값은 플러그인에 의해 처리되었으며, 호스트 그룹이 매우 큰 경우 처리 시간이 많이 필요했습니다. 결과적으로 sssd_be 프로세스에서는 99 %의 CPU를 사용했기 때문에 로그인 프로세스가 크게 느려졌습니다. 이번 업데이트를 통해 member 속성이 더 이상 저장되지 않으며 HBAC 평가가 더 빨리 진행됩니다.
- BZ#983028
- 사용자가 passwd 유틸리티를 사용하여 암호를 변경하려고 시도하여 현재 암호를 잘못 작성하면 다음 passwd 오류가 반환되었습니다.
Authentication token manipulation error
이 메시지는 사용자를 혼동할 수 있는 시스템 오류인 것처럼 보입니다. 이번 업데이트를 통해 SSSD에서 문제를 지정하는 오류 메시지와 추가 오류 메시지를 보냅니다.Old password not accepted
- BZ#984814
- 특정 상황에서는 빠른 메모리 내 캐시에 저장된 레코드가 손상될 수 있습니다. 이러한 경우 sssd_nss 프로세스가 예기치 않게 종료되었습니다. 요청에 액세스하기 전에 빠른 캐시를 확인하기 위해 추가 테스트가 추가되었습니다. 이제 레코드가 유효하지 않은 경우 SSSD 데몬에서 레코드를 건너뛰고 요청하므로 sssd_nss 충돌을 방지합니다.
- BZ#986379
- 이전에는 “sss_cache -N” 명령에서 netgroups의 SSSD 메모리 내 캐시를 무효화하지 않았습니다. 그 결과 최근에 쿼리된 netgroups가 명령이 실행된 경우에도 만료 시간 이전에 새로 고쳐지지 않았습니다. 이번 업데이트에서는 이 버그를 수정하기 위해 패치를 적용하여 이제 명령으로 netgroups in-memory 캐시를 올바르게 무효화합니다.
- BZ#987479
- libss_sudo 패키지에는 SSSD 데몬에서 작동해야 하는 특정 버전의 sudo 유틸리티가 필요하지 않았습니다. 결과적으로 SSSD와 호환되지 않는 sudo 버전으로 패키지를 설치할 수 있었습니다. 이번 업데이트를 통해 이제 패키지에 예상대로 적절한 sudo 버전이 필요합니다.
- BZ#988525
- SSSD 데몬이 sudo 규칙을 캐시에 저장할 수 없는 경우 오류를 반환하고 나머지 sudo 규칙 처리를 중지했습니다. 따라서 한 규칙이 있는 오류가 전체 트랜잭션을 취소했기 때문에 관련 공급자의 규칙이 저장되지 않았습니다. 이번 업데이트를 통해 sudo 규칙을 캐시에 저장할 수 없는 경우 메시지가 로그에 추가되고 규칙이 건너뛰고 나머지 규칙의 처리가 계속되고 예상대로 작동합니다. 결과적으로 잘못된 sudo 규칙이 캐시에 저장됩니다.
- BZ#997406
- 기본 소스 코드의 버그로 인해 특정 상황에서 항목에 대한 포인터를 덮어쓸 수 있었습니다. 그 결과 sssd_nss 프로세스가 세그먼트 오류로 예기치 않게 종료되었습니다. 이 버그를 수정하도록 코드가 수정되었으며 sssd_nss가 더 이상 충돌하지 않습니다.
- BZ#1002161
- sss_packet_grow() 함수가 응답 패킷의 총 길이를 계산한 방식으로 인해 265KB를 초과하는 결합된 크기가 있는 sudo 규칙이 시스템에 구성된 경우 SSSD 데몬은 다음 오류 메시지로 실패했습니다.
Unable to create response: Invalid argument
이번 업데이트를 통해 sss_package_grow() 함수 코드가 응답 패킷 길이를 올바르게 계산하도록 수정되었으며 앞서 언급한 시나리오에서 SSSD가 더 이상 실패하지 않습니다. - BZ#1002929
- DNS(Dynamic Domain Name System) 업데이트 작업이 시간 초과되면 작업과 관련된 특정 데이터가 해제되었습니다. 그런 다음 하위 처리기에서 해당 데이터에 액세스하려고 시도하여 sssd_be 프로세스에서 세그먼트 오류가 발생했습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하고 작업이 시간 초과될 때 처리기가 중단됩니다. 결과적으로 설명된 시나리오에서는 세그먼트 오류가 더 이상 발생하지 않습니다.
- BZ#1019979
- 이 연결의 검색 작업이 아직 진행 중일 때 LDAP(Lightweight Directory Access Protocol) 연결이 종료된 경우 검색 콜백에서 더 이상 존재하지 않는 연결의 속성에 액세스할 수 있습니다. 결과적으로 sssd_be 프로세스가 예기치 않게 종료되었습니다. 이 버그를 해결하기 위해 검색 콜백에 추가 테스트가 추가되었습니다. 이 테스트에서는 속성에 액세스하기 전에 연결의 유효성을 확인합니다. 결과적으로 설명된 시나리오에서 SSSD 데몬이 더 이상 충돌하지 않습니다.
기능 개선
- BZ#921454
- 이번 업데이트에서는 새로운 SSSD 구성 옵션을 제공합니다. 옵션을 활성화하면 LDAP 그룹이 /etc/passwd 파일에 저장된 로컬 사용자를 포함할 수 있습니다. 옵션은 기본적으로 비활성화되어 있으므로 “ldap_rfc2307_fallback_to_local_users = True”.
- BZ#970519
- 그룹 멤버를 다운로드하는 것을 방지하는 데 사용되는 새로운 옵션이 도입되었습니다. 대부분의 경우 관리자는 모든 그룹 멤버를 다운로드하지 않고 사용자의 그룹 멤버십만 검색해야 합니다. 또한 그룹 멤버가 캐시에 다운로드되지 않고 캐시에 저장되면 SSSD 성능이 크게 향상됩니다. 이번 개선된 기능을 통해 관리자는 이제 그룹 멤버 다운로드를 비활성화할 수 있습니다.
8.209. subscription-manager
버그 수정
- BZ#1000145
- 이전에는 python-rhsm 유틸리티에서 더 이상 사용되지 않는 API를 사용했습니다. 결과적으로 사용 중단 경고 메시지가 사용자에게 표시되었습니다. 이번 업데이트를 통해 사용 중단 경고 메시지가 더 이상 표시되지 않습니다.
- BZ#914113
- 이번 업데이트 이전에는 더 이상 사용되지 않는 "hasNow()" 함수라는 rhsmd 데몬을 사용합니다. 그 결과 "DeprecationWarning: Call to deprecated function: hasNow"라는 경고가 사용자에게 표시되었습니다. 이번 업데이트를 통해 "hasNow()" 함수가 제거되고 사용 중단 경고 메시지가 더 이상 표시되지 않습니다.
- BZ#1012566
- 이번 업데이트 이전에는 /etc/cron.daily/rhsmd cron 작업에 대한 스크립트가 잘못된 권한이 있었습니다. 그 결과 루트가 아닌 사용자에게도 실행 권한이 있었습니다. 이번 업데이트에서는 올바른 "0700" 값으로 권한을 변경하고 이제 root 사용자만 실행 권한을 갖습니다.
- BZ#872697
- 이전에는 "Pro_xy 구성" 메시지의 일본어 변환에 과도한 밑줄 문자가 포함되어 있었습니다. 그 결과 ja_JP 로케일 사용자에게 잘못된 텍스트가 표시되었습니다. 이번 업데이트에서는 올바른 메시지가 추가되었습니다.
- BZ#985090
- 이번 업데이트 이전에는 "TAB" 키를 두 번 눌러 "rhsmcertd" 명령을 자동으로 완료하지 않았습니다. 결과적으로 잘못된 옵션이 표시되었습니다. 올바른 옵션을 표시하도록 탭 완료 스크립트가 수정되었습니다. 자동 완성 기능에 bash-completion 보조 패키지가 필요합니다.
- BZ#988085
- 이전 버전에서는 "subscription-manager config --remove <server.hostname>" 명령을 실행한 후 "hostname =" 행이 "rhsm.conf" 구성 파일에서 완전히 제거되었습니다. 결과적으로 CLI(명령줄 인터페이스)에서 "subscription.rhn.redhat.com"의 기본값에 액세스할 수 없게 되었습니다. 이번 업데이트를 통해 "hostname =" 행은 설명된 시나리오에서 예상되는 기본값으로 되돌립니다.
- BZ#996993, BZ#1008557
- 이번 업데이트에서는 "subscription-manager list --available" 명령의 출력에 두 개의 새 필드가 추가되었습니다. " delivers" 필드는 시스템이 자격이 있는 제품의 이름을 표시합니다. "Suggested" 필드가 추가되어 규정 준수를 촉진하고 그래픽 사용자 인터페이스(GUI)와 패리티를 제공합니다.
- BZ#869046
- 이전 버전에서는 subscription-manager 유틸리티에 프록시 연결에 실패한 경우 일반적인 오류 메시지만 포함되었습니다. 그 결과 잘못된 프록시 서버에 액세스하려고 하거나 잘못된 프록시 포트를 통해 연결하려고 시도하거나, 올바른 암호를 입력하지 못했습니다. 이번 업데이트에서는 설명된 사례에 더 많은 정보 오류 메시지가 추가되었습니다.
- BZ#1001820
- 이번 업데이트 이전에는 "TAB" 키를 두 번 눌러 "subscription-manager attach" 하위 명령이 제대로 완료되지 않았습니다. 결과적으로 잘못된 옵션이 표시되었습니다. 올바른 옵션을 표시하도록 탭 완료 스크립트가 수정되었습니다. 자동 완성 기능에 bash-completion 보조 패키지가 필요합니다.
- BZ#1004385
- 이전에는 "TAB" 키를 두 번 눌러 "rhsm-icon" 명령의 자동 완료가 제대로 작동하지 않았습니다. 결과적으로 끝에 쉼표와 함께 옵션이 표시되었습니다. 올바른 옵션을 표시하도록 탭 완료 스크립트가 수정되었습니다. 자동 완성 기능에 bash-completion 보조 패키지가 필요합니다.
- BZ#1004893
- 특정 상황에서 "subscription-manager list -- installed" 명령에서 잘못된 상태를 반환했습니다. 결과적으로 새 제품 인증서에 새 제품이 포함된 경우 새로 사용 가능한 제품의 상태가 "서브스크립션되지 않음"이었습니다. 이 버그는 수정되었으며 새로 사용 가능한 제품에 대한 상태가 이제 설명된 시나리오에서 "서브스크립션"됩니다.
- BZ#1011234
- 특정 상황에서 "subscription-manager list --available" 명령에서 잘못된 값을 반환했습니다. 결과적으로 서비스 수준이 설정되지 않은 서브스크립션 풀의 경우 잘못된 "없음"이 표시되었습니다. 이 버그가 수정되었으며 이 시나리오에 빈 문자열이 표시됩니다.
- BZ#1006985
- 이번 업데이트 이전에는 동일한 제품 ID로 다른 제품 인증서를 마이그레이션할 때 subscription-manager-migration 스크립트가 제대로 작동하지 않았습니다. 그 결과 인증서가 동일한 이름으로 설치되었으며 사용할 수 없었습니다. 이 버그는 수정되었으며 동일한 ID가 있는 다른 제품 인증서가 감지되면 마이그레이션이 중단됩니다.
- BZ#1008603
- 이전에는 subscription-manager 유틸리티에서 제품을 나열하려면 "subscription.rhn.stage.redhat.com" 사이트에 대한 연결이 필요했습니다. 그 결과 연결에 실패하면 제품 목록이 표시되지 않았습니다. 이 버그가 수정되어 사용자가 로컬 캐시의 제품을 나열할 수 있습니다.
기능 개선
- BZ#909778
- 이번 업데이트에서는 "--proxy" 옵션을 "subscription-manager repos --list" 하위 명령에 추가합니다. 사용자는 이제 melpin 서버에 연결할 때 프록시를 설정할 수 있습니다.
- BZ#983670
- "subscription-manager auto-attach" 하위 명령과 함께 "--help" 옵션을 사용할 때 표시되는 설명이 보다 정확한 것으로 개선되었습니다.
- BZ#986971
- 서브스크립션 테이블의 "Available Subscription" 헤더는 공간을 절약하고 사용자에게 더 명확한 "Available"으로 단순화되었습니다.
- BZ#1011961
- 이번 업데이트를 통해 인타이틀먼트 인증서에 표시된 수량이 혼동되는 "-1"에서 올바른 "제한되지 않음"으로 변경되었습니다.
- BZ#994620
- 이번 업데이트에서는 rhsm-icon 유틸리티에 대한 보다 정확한 툴팁 메시징을 제공합니다. 이제 완전 호환 시스템에 부분 서브스크립션이 있는 경우 이전 "Partially entitled products" 대신 "Partially entitled subscriptions"라는 메시지가 표시됩니다.
- BZ#1004341
- 이번 업데이트에서는 "TAB" 키를 두 번 눌러 "subscription-manager-gui" 명령 옵션 자동 완료에 대한 지원이 추가되었습니다. 자동 완성 기능에 bash-completion 보조 패키지가 필요합니다.
- BZ#1008016
- 이번 업데이트를 통해 subscription-manager 유틸리티는 성공적으로 서브스크립션된 후 즉시 /etc/yum.repos.d/redhat.repo 리포지토리를 생성하여 추가 단계가 필요하지 않습니다.
- BZ#1009600
- "subscription-manager list --consumed" 명령이 실행되면 출력에 "System Type: Physical/Virtual"이 표시됩니다. 이를 통해 사용자는 부여된 인타이틀먼트가 가상인지 여부를 확인할 수 있습니다.
8.210. sudo
보안 수정
- CVE-2013-1775
- sudo가 타임 스탬프 파일을 처리하는 방식에서 취약점이 발견되었습니다. 공격자는 로컬 사용자로 코드를 실행할 수 있으며 시스템 시계를 제어할 수 있는 기능을 사용하면 공격자가 공격자의 암호를 모르는 상태에서 sudo를 통해 실행할 수 있는 명령을 실행하여 추가 권한을 얻을 수 있습니다.
- CVE-2013-2776, CVE-2013-2777
- /etc/sudoers 파일에서 tty_tickets 옵션이 활성화된 경우 sudo가 제어 터미널 장치의 유효성을 제대로 확인하지 않은 것으로 확인되었습니다. 로컬 사용자로 코드를 실행할 수 있는 공격자는 기여자의 암호를 모르는 상태에서 sudo를 통해 실행할 수 있는 명령을 실행하여 추가 권한을 얻을 수 있습니다.
버그 수정
- BZ#880150
- 이전에는 sudo에서 SSSD(System Security Services Daemon)의 소스에 대한 netgroup 필터링을 지원하지 않았습니다. 그 결과 지정된 netgroup에 속하지 않은 경우에도 SSSD 규칙이 모든 사용자에게 적용되었습니다. 이번 업데이트를 통해 SSSD 소스에 대한 netgroup 필터링이 구현되었습니다. 결과적으로 netgroup 사양이 있는 규칙은 netgroup의 일부인 사용자에게만 적용됩니다.
- BZ#947276
- sudo 유틸리티에서 명령을 실행한 환경을 설정하면 RLIMIT_NPROC 리소스 제한 값을 RLIMIT_NPROC의 소프트(current) 및 hard(최대) 값이 제한되지 않은 경우 RLIMIT_NPROC 리소스 제한 값으로 재설정합니다. 이 버그를 해결하기 위해 업스트림 패치가 제공되었으며 RLIMIT_NPROC를 "제한되지 않음"으로 설정할 수 있습니다.
- BZ#973228
- 업스트림에서 sudo 코드를 리팩토링하여 sudo 명령을 실행하는 사용자의 이름을 저장하는 SUDO_USER 변수가 이전처럼 /var/log/secure 파일에 기록되지 않았습니다. 결과적으로 사용자 이름 "root"는 실제 사용자 이름 대신 항상 기록되었습니다. 이번 업데이트를 통해 sudo의 이전 동작이 복원되었습니다. 결과적으로 이제 예상되는 사용자 이름이 /var/log/secure에 기록됩니다.
- BZ#994626
- sudo의 규칙 목록 코드에서 루프 조건의 오류로 인해 특정 경우에 버퍼 오버플로가 발생할 수 있었습니다. 이 조건이 수정되었으며 버퍼 오버플로가 더 이상 발생하지 않습니다.
기능 개선
8.211. suitesparse
버그 수정
- BZ#902854
- suitesparse 기본 패키지에는 General Public License (GPL)의 사본이 누락되어 있습니다. 라이센스는 suitesparse-doc 하위 패키지에 포함되어 있었지만 suitesparse-doc 하위 패키지 없이 suitesparse를 설치할 수 있었습니다. 이번 업데이트를 통해 이제 라이센스 사본이 기본 패키지에 포함되어 있습니다.
8.212. Cryostat
버그 수정
- BZ#804534
- 이전에는 Cryostat 패키지에서 동적으로 특성화된 주요 장치 번호를 지원하지 않았습니다. 결과적으로 이러한 번호가 있는 장치는 실제 이름 아래에 sar 보고서에 나열되지 않았습니다. 이번 업데이트를 통해 동적으로 특성화된 주요 장치 번호에 대한 지원이 Cryostat에 추가되었습니다. 결과적으로 모든 장치가 이제 sar 보고서에 올바른 이름으로 표시됩니다.
- BZ#967386
- 이전 Cryostat 업데이트는 이전 버전과 호환되지 않는 방식으로 변경되었지만 이러한 바이너리 데이터 파일의 버전 번호는 동일하게 유지됩니다. 결과적으로 이전 버전의 Cryostat에서 생성한 바이너리 데이터 파일을 읽기 위해 이후 버전을 사용하면 잘못된 결과가 발생할 수 있었습니다. binary 데이터 파일의 버전 번호가 업데이트되어 이 버그를 수정합니다. 결과적으로 현재 Cryostat 버전은 이전 버전에서 만든 바이너리 데이터 파일을 읽지 않습니다. 자세한 내용은 sar(1) 매뉴얼 페이지의 "-legacy" 옵션에 대한 설명을 참조하십시오.
- BZ#996134
- 이번 업데이트 이전에는 sa1 스크립트에서 Cryostat 명령이 너무 늦었습니다. 특정 상황에서 새로 생성된 파일의 파일 권한이 잘못되었을 수 있었습니다. 이번 업데이트에서는 sa1 스크립트의 적절한 위치로 이동되었습니다. 결과적으로 새로 생성된 파일에 올바른 권한이 있습니다.
기능 개선
- BZ#826399
- sda 또는 sdb와 같은 커널 장치 이름은 부팅마다 다른 장치를 가리킬 수 있습니다. 가능한 혼동을 방지하기 위해 영구 장치 이름에 대한 지원이 iostat 및 sar 프로그램에 추가되었습니다. iostat 및 sar에 대해 새로운 "-j" 명령줄 옵션을 사용하여 영구 이름을 활성화할 수 있습니다.
- BZ#838914
- 수집된 통계를 더 오래 저장하도록 Cryostat 패키지가 수정되었습니다. 원래 7일의 기간은 28일로 연장되어 더 복잡한 성능 문제를 분석할 수 있습니다.
- BZ#850810
- 이번 업데이트를 통해 새로운 "-y" 옵션이 iostat 프로그램에 추가되었습니다. 이 옵션을 사용하면 보고서에서 첫 번째 "since boot" 통계를 건너뛸 수 있으므로 더 이상 이 문제의 iostat 출력을 post-process할 필요가 없습니다.
8.213. system-config-date
버그 수정
- BZ#760977
- 시스템 설치 중에 지원되지 않는 로케일 설정을 사용하는 경우 이전에 firstboot 유틸리티가 설치 초기 단계 후 스택 추적으로 실패했습니다. 결과적으로 사용자는 주변 장치, 사용자, kdump 및 기타 설정을 구성할 수 없었습니다. 이번 업데이트를 통해 기본 코드가 잘못된 로케일 값으로 인한 예외를 catch하도록 수정되었으며 firstboot는 이제 사용자에게 실패 대신 로케일을 변경하도록 경고합니다.
8.214. system-config-keyboard
버그 수정
- BZ#952125
- system-config-keyboard 패키지에는 firstboot용 플러그인이 포함되어 있습니다. 이전 버전의 system-config-keyboard는 firstboot에 따라 달라졌으므로 firstboot에서 가져오지 않고 패키지를 설치할 수 없었습니다. 이 잘못된 종속성이 제거되었으며 system-config-keyboard 패키지를 firstboot에서 가져오지 않고 설치할 수 있습니다.
8.215. system-config-lvm
버그 수정
- BZ#923643
- system-config-lvm 유틸리티의 버그로 인해 시스템에서 제거된 미러링된 장치가 발견되면 유틸리티가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 사용자가 지원되는 장치와 완전히 상호 작용할 수 있도록 기본 소스 코드가 수정되었습니다. 그러나 볼륨 그룹 정보가 제거된 미러링된 장치에 대해 항상 제대로 렌더링되지 않을 수 있습니다.
8.216. system-config-users-docs
버그 수정
- BZ#635248
- 이전에는 스크린샷의 텍스트가 번역되지 않았으며 번역되지 않은 스크린샷이 실행 중인 프로그램과 일치하지 않았습니다. 이번 업데이트에서는 스크린샷이 최신 상태로 제공되며 해당 번역이 포함됩니다.
8.217. SystemTap
버그 수정
- BZ#920444
- 이전에는 SystemTap "nfs.proc.commit_done" 프로브 별칭이 기본 인수를 잘못 해석했습니다. 결과적으로 잘못된 정보가 반환되었습니다. SystemTap "nfs_proc.commit_done" 프로브 별칭이 기본 인수를 올바르게 해석하도록 수정되었으며 이제 올바른 정보를 반환합니다.
- BZ#743591
- 이번 업데이트 이전에는 I/O 블록 보류 중인 요청이 다른 요청과 병합되었을 때 ioblktime.stp 예제 스크립트가 제대로 추적되지 않았습니다. 그 결과 연관 배열이 오버플로될 수 있었고 오류가 발생했습니다. 병합된 I/O 블록 요청을 삭제하도록 스크립트가 수정되었습니다. 결과적으로 배열 오버플로 오류 후 스크립트가 더 이상 실패하지 않습니다.
- BZ#874205
- stap-serverd 데몬에서 avahi-client API를 제대로 사용하지 않았습니다. 그 결과 avahi 데몬이 중지되거나 재시작되면 stap-serverd가 예기치 않게 종료되었습니다. 기본 소스 코드가 avahi-client API를 올바르게 사용하도록 수정되었으며 stap-serverd는 이제 충돌하지 않고 설명된 시나리오를 처리합니다.
- BZ#876848
- 애플리케이션의 기본 스레드가 시스템 호출과 같이 하나 이상의 quiesce를 통과하지 않으면 SystemTap 유틸리티에서 애플리케이션에 연결할 수 없었습니다. 그 결과 SystemTap에서 애플리케이션의 이벤트를 감지할 수 없었습니다. SystemTap이 기본 애플리케이션 스레드를 중단하여 해당 스레드에 연결할 수 있습니다. 결과적으로 Systemtap은 더 이상 이벤트를 누락하지 않습니다.
- BZ#846789
- 이전에는 SystemTap 유틸리티에서 /lib/modules/ 디렉터리에서 커널 모듈을 검색하고 기본 모듈을 먼저 식별할 때 임의의 순서를 사용했습니다. 그 결과 SystemTap은 업데이트로 재정의된 일부 모듈을 검색할 수 없었습니다. SystemTap은 이제 module.dep 파일을 사용하여 modprobe 프로그램의 순서와 일치하도록 모듈 검색을 정렬합니다. 결과적으로 재정의된 모듈을 성공적으로 검색할 수 있습니다.
- BZ#819967
- 이전에는 SystemTap 번역에 caller() 함수를 사용할 수 있는 올바른 코드가 항상 포함되어 있지 않아 컴파일 오류가 발생할 수 있었습니다. 이번 업데이트를 통해 SystemTap 번역가가 caller() 함수를 사용할 때 적절한 런타임 코드를 포함할 수 있습니다. 결과적으로 caller()를 사용하면 더 이상 컴파일 오류가 발생하지 않습니다.
- BZ#906061
- 이번 업데이트 이전에는 SystemTap에서 IPv6 주소의 범위 지정자와 ID가 올바르게 처리되지 않았습니다. 결과적으로 사용자는 IPv6를 사용하여 stap-server에 연결할 수 없었습니다. 이번 업데이트에서는 IPv6 주소의 범위 지정자 또는 ID 처리를 수정하고 사용자는 이제 IPv6를 사용하여 예상대로 stap-server에 연결할 수 있습니다.
- BZ#902739
- 이전에는 SystemTap의 "추적" 유틸리티에서 낮은 수준의 C 코드를 생성했습니다. 결과적으로 생성된 코드가 컴파일되면 gcc 컴파일러에 오류 메시지가 표시됩니다. 이번 업데이트에서는 생성된 코드의 품질이 향상되고 이제 예상대로 경고가 표시되지 않습니다.
8.218. SysVinit
8.218.1. RHBA-2013:1003 - sysvinit 버그 수정 업데이트
버그 수정
- BZ#814132
- pidof 유틸리티가 /proc/*/stat 파일을 처리했을 때 파일의 내용을 fgets() 함수에 의해 읽혔습니다. 이 함수는 새 줄 문자인 "\n"이 프로세스 이름에 있고 fopen과 fgets 함수 간에 읽기 파일이 사라졌을 때 올바르게 작동하지 않았습니다. 결과적으로 이러한 경우 "pidof: could not get program name from" 메시지가 출력되었습니다. 이 문제를 해결하기 위해 프로그램은 전체 파일을 읽고 빈 콘텐츠가 있는 모든 파일을 자동으로 건너뜁니다. 결과적으로 "\n"이 있는 새 줄 문자를 포함하는 바이너리 파일이 올바르게 인식되고 누락된 파일이 경고 메시지를 내보내지 않습니다.
8.219. 대화
8.219.1. RHBA-2013:1148 - 버그 수정 업데이트
버그 수정
- BZ#691355
- talk 유틸리티를 사용하면 사용자가 "username.hostname" 형식으로 대상 사용자를 지정할 수 있습니다. 이로 인해 이전 버전의 유틸리티는 기간이 포함된 사용자 이름을 지원하지 않았습니다. 이번 업데이트를 통해 사용자 이름에 마침표를 포함할 수 있도록 "username@hostname" 양식을 사용하도록 새로운 명령줄 옵션(즉, "-x")이 추가되었습니다. 또한 지원되는 명령줄 인수의 전체 목록을 제공하도록 해당 도움말 페이지가 확장되었습니다.
8.220. tboot
8.221. tomcat6
8.221.1. RHBA-2013:1721 - tomcat6 버그 수정 업데이트
버그 수정
- BZ#845786
- 이전에는 Red Hat Enterprise Linux가 IBM System z 또는 64비트 IBM POWER 시리즈 컴퓨터에서 실행 중일 때 tomcat6-docs-webapp 패키지를 빌드하려고 했습니다. 이번 업데이트를 통해 빌드 대상에 아키텍처가 설정되어 있지 않으며 패키지를 예상대로 빌드할 수 있습니다.
- BZ#915447
- /etc/sysconfig/tomcat6 파일에 이름이 지정되지 않은 사용자가 기존 그룹 이름에 지정되지 않은 경우 Tomcat 웹 서버를 시작하지 못했습니다. 이번 업데이트에서는 이 버그를 수정하는 패치를 적용하고 설명된 시나리오에서는 Tomcat이 더 이상 실패하지 않습니다.
- BZ#950647
- checkpidfile() 함수의 버그로 인해 "service tomcat6 status" 명령 실행 시도가 실패하고 오류 메시지가 반환되었습니다. 이 버그를 수정하도록 기본 소스 코드가 수정되었으며 이제 명령이 제대로 작동합니다.
- BZ#960255
- checkpidfile() 함수의 버그로 인해 상태 스크립트에서 올바른 PID를 반환하지 않았습니다. 이 버그가 수정되었으며 이제 상태 스크립트에서 올바른 PID를 예상대로 반환합니다.
- BZ#977685
- Tomcat 웹 서버에는 log4j 프레임워크 대신 java.util.logging 패키지의 클래스를 사용하도록 하드 코딩된 tomcat-juli.jar 파일 버전이 포함되어 있었습니다. 결과적으로 tomcat-juli.jar 및 tomcat-juli-adapters.jar 파일의 전체 버전이 다운로드되지 않은 한 log4j를 사용하도록 Tomcat을 구성할 수 없었습니다. 이번 업데이트를 통해 log4j를 구성하기 위해 tomcat6 패키지에 올바른 버전의 파일이 포함됩니다.
- BZ#989527
- /etc/sysconfig/tomcat6 구성 파일에 설명된 대로 여러 tomcat 인스턴스를 구성하고 인스턴스 이름이 tomcat 디렉터리의 이름과 다른 경우 "service status" 명령이 실패했습니다. 이번 업데이트를 통해 이 버그를 수정하도록 기본 소스 코드가 수정되었으며 설명된 시나리오에서 명령이 더 이상 실패하지 않습니다.
8.222. tuned
버그 수정
- BZ#904062
- 이전 버전에서는 여러 장치가 시스템에 추가되면 udev 규칙이 새 장치마다 ktune 서비스를 다시 시작했습니다. 이로 인해 많은 사용자가 짧은 시간 내에 다시 시작할 수 있습니다. 여러 재시작이 커널에서 경쟁 조건을 트리거할 수 있으며 현재 수정할 수 없습니다. tuned 데몬 코드가 10초당 여러 재시작을 트리거하지 않도록 수정되어 경쟁 조건이 발생하지 않습니다.
- BZ#969491
- 이전에 kernel.sched_migration_cost 튜닝 가능 항목이 0.5 ms의 기본값으로 유지되었습니다. 결과적으로 대규모 가상화 호스트에는 실행 대기열 잠금에서 높은 경합이 발생할 수 있었습니다. 이번 업데이트를 통해 virtual-host 프로필에서 kernel.sched_migration_cost 튜닝 가능 항목이 10회 증가하여 경합이 제거됩니다.
- BZ#905077
- 이전에는 ktune 서비스에서 readahead 값을 저장하지 않았습니다. 시작 시 현재 값을 상수로 곱하고 값을 중지 시 동일한 상수로 나눕니다. 이로 인해 ktune이 시작된 후 추가된 장치에 잘못된 값이 설정될 수 있습니다. 이제 모든 장치에 대해 이전 readahead 값이 저장되고 ktune stop에서 올바른 값이 복원됩니다.
- BZ#912788
- 이전에는 tuned 유틸리티에서 THP(Transparent Huge Pages)의 업스트림 /sys/kernel/mm/transparent_hugepage 위치를 지원하지 않았습니다. 코드가 수정되었으며 업스트림에서 사용하는 SYSFS 경로에 대한 지원이 추가되었습니다. 이제 tuned에서 앞서 언급한 업스트림 경로와 Red Hat Enterprise Linux 특정 경로를 지원합니다.
- BZ#982756
- USB 자동 중지 코드와 Bluetooth를 처리하는 기능이 없는 오래된 코드도 오타가 있었습니다. 그 결과 사용자가 spindown-disk 프로필을 활성화할 때 다양한 오류가 발생했습니다. 오타가 수정되었으며 Bluetooth 코드가 업데이트되었습니다. 결과적으로 스파다운 디스크 프로파일이 활성화되면 오류가 더 이상 발생하지 않습니다.
- BZ#838512
- 이전에는 mount 명령을 사용하여 "no_barriers" 옵션을 사용하여 파일 시스템을 다시 마운트하지만 모든 파일 시스템을 다시 마운트할 수 없었습니다. 결과적으로 remount는 사용자에게 혼란을 줄 수 있는 오류 메시지를 표시하지 못하는 경우가 있었습니다. 이번 업데이트를 통해 mount 명령의 오류 메시지가 음소거되었습니다. 이제 no_barriers로 파일 시스템을 다시 마운트할 수 없는 경우 자동으로 건너뛰고 오류가 표시되지 않습니다.
- BZ#987547
- 이전에는 sysctl 유틸리티가 로드되었으며, 에레이터가 변경되기 전에 쉘 스크립트가 실행되었습니다. 그 결과, 사용자는 컨버터 매개변수를 변경하거나 조정할 수 없었습니다. 이 코드는 sysctl을 로드하고, 에레이터가 변경된 후 쉘 스크립트를 실행하도록 다시 정렬되었습니다. 그 결과, 사용자는 이제 엘로베이터 매개변수를 조정할 수 있습니다.
- BZ#885080
- diskdevstat 및 netdevstat 코드는 기본 제공 도움말에서 매개변수 이름 지정에 일치하지 않았습니다. "total-duration" 및 "total-interval"이라는 용어는 동일한 것을 나타내는 데 사용되었습니다. 이번 업데이트를 통해 텍스트가 일관되게 업데이트되어 "total-duration" 문자열만 사용됩니다.
- BZ#959732
- 이전에는 ktune에서 /etc/sysctl.d/ 디렉터리를 처리하지 않았으며 sysctl 설정이 있는 여러 파일을 지원하지 않았습니다. 결과적으로 /etc/sysctl.d 디렉터리에 설치된 libvirt와 같은 여러 패키지가 무시되었습니다. 이번 업데이트에서는 ktune 코드 및 프로필이 수정되었습니다. 이제 /etc/sysctl.d/ 디렉터리의 모든 sysctl 설정이 로드되고 /etc/sysctl.conf 파일이 로드됩니다. 이제 사용자가 tuned 프로필에 로드할 와일드카드를 포함하여 여러 sysctl 파일을 지정할 수 있습니다.
- BZ#964187
- 이전에는 Tuned virtual-guest 및 virtual-host 프로필에 대한 문서가 없었습니다. 이러한 프로필에 대한 설명이 tuned-adm 도움말 페이지에 추가되었습니다.
- BZ#963821
- 이전에는 tuned-adm 명령의 기본 도움말에 오타가 있었습니다. tuned-adm 설명에서 "tuning" 대신 "tunning"이라는 텍스트를 언급했습니다. 이번 업데이트에서는 기본 제공 도움말 오타가 수정되었습니다.
- BZ#961792
- 이전에 tuned는 latency-performance 프로필의 C0 상태에 CPU를 잠겼습니다. 이번 업데이트를 통해 기본적으로 C1 상태를 사용하도록 latency-performance 프로필이 수정되어 프로필의 성능이 향상됩니다.
기능 개선
- BZ#964193
- 이번 업데이트에서는 Tuned 유틸리티에 "sapconf" 패키지가 추가되었습니다. tuned-adm "sap" 프로필은 관련 SAP 지침에 따라 SAP 소프트웨어를 실행하는 시스템을 최적화합니다.
8.223. udev
버그 수정
- BZ#833172, BZ#885978, BZ#918511
- 이전에는 비교적 큰 RAM 크기와 디스크가 많은 머신의 경우 여러 udevd 작업자가 병렬로 실행되어 CPU 및 I/O를 극대화했습니다. 이로 인해 hardware bottlenecks로 인해 udev 이벤트가 시간 초과될 수 있습니다. 이번 업데이트를 통해 udevd 작업자의 수는 CPU 수에 의해 제한되고 RAM 크기가 큰 시스템에서 크게 줄어듭니다. 이제 동시에 실행되는 udev 작업자 수가 줄어들면 병목 현상이 발생하지 않으며 시간 초과가 적거나 발생하지 않습니다.
- BZ#888647
- 이전에는 udev 유틸리티에서 /dev/disk/by-path/ 디렉터리에 SCM(Storage Class Memory) 장치에 대한 심볼릭 링크를 제공하지 않아 해당 경로에서 SCM 장치를 참조할 수 없었습니다. 이번 업데이트를 통해 path_id 기본 제공 명령은 SCM 장치를 지원하고 심볼릭 링크를 제공합니다. 이제 해당 경로에서 SCM 장치를 참조할 수 있습니다.
- BZ#909792
- 이번 업데이트 이전에는 libudev.h 헤더 파일에 extern "C" 선언이 없으므로 C++ 프로그램 또는 애플리케이션에서 그대로 사용할 수 없었습니다. extern "C" 선언이 헤더 파일에 추가되어 버그를 수정합니다.
- BZ#918511
- 이전에는 "udevadm settle [options]" 명령이라는 start_udev 명령을 사용하고 기본값인 180초 후에 시간 초과되었습니다. 그러나 일부 장치는 완전히 조립되지 않았으며 부팅 프로세스에서 다양한 오류가 발생했습니다. 이번 업데이트를 통해 udev가 설정될 때까지 start_udev가 기다립니다. 결과적으로 모든 장치가 어셈블되고 부팅 프로세스가 오류 없이 계속됩니다.
- BZ#920961
- udev scsi_id helper 유틸리티가 호출된 시점에 SCSI 장치가 사용 중인 경우 scsi_id는 장치의 속성을 반환하지 않았습니다. 결과적으로 SCSI 장치의 속성을 udev 규칙에서 처리할 수 없었습니다. 이번 업데이트를 통해 scsi_id는 일정 기간 동안 장치를 열려고 포기합니다. 결과적으로 SCSI 장치의 속성은 장치가 짧은 시간 동안 사용 중인 경우에도 udev 규칙에서 처리할 수 있습니다.
- BZ#982902
- InterfaceClass=0x08 및 InterfaceSubClass=0x05가 있는 USB 장치의 경우 udev는 ID 유형을 "floppy"로 설정합니다. 결과적으로 일부 도구는 USB 장치를 플로피 디스크로 해석할 수 있었습니다. 이제 ID 유형이 이러한 USB 장치의 "일반"으로 설정되고 도구가 USB 장치를 올바르게 해석합니다.
- BZ#998237
- 이전에는 libudev 유틸리티에서 이전 주소로 dev_enumerate_get_list_entry() 함수로 다시 할당된 메모리를 참조했습니다. 그러나 이 함수를 호출하면 세그먼트 오류가 발생할 수 있습니다. 이번 업데이트를 통해 libudev는 udev_enumerate_get_list_entry()의 오프셋을 사용하여 재할당된 메모리를 참조하여 버그를 수정합니다.
기능 개선
- BZ#947067
- 이전에는 /dev/ 임시 파일에 저장된 경우 디버그 출력을 제어할 수 없고 종종 사용 가능한 메모리를 초과했습니다. 이번 업데이트를 통해 udevlog와 함께 start_udev 명령에서 udevd 데몬을 "-s" 옵션으로 호출하여 udevd 출력을 /dev/.udev/udev.log 파일로 리디렉션하지만 디버그 모드에서 udevd를 설정하지 않습니다. 또한 udevd는 이제 규칙 파일에 설정된 로그 우선순위(OPTIONS+="log_priority=<level>")를 이해하므로 사용자는 숫자 syslog 우선순위 또는 텍스트 표현을 설정할 수 있습니다. /lib/udev/rules.d/01-log-block.rules에 대한 새로운 예제 규칙 파일도 있습니다. 블록 장치에 대해 "info" 로깅을 활성화하려면 커널 명령줄에 "rd.log.block=info"를 추가합니다.
8.224. util-linux-ng
버그 수정
- BZ#885313
- 이전 버전에서는 hexdump 유틸리티가 빈 형식 문자열을 반복할 때 세그먼트 오류로 종료되었습니다. 이 버그는 이제 수정되었으며 이 시나리오에서 hexdump가 더 이상 충돌하지 않습니다.
- BZ#911756
- 이전에는 libblkid 라이브러리에서 특정 디스크를 Silicon Image Medley RAID 장치로 잘못 감지했습니다. 이로 인해 매주 재부팅된 후 특정 시스템에서 문제가 발생했습니다. 이번 업데이트에서는 수퍼 블록 레코드에서 체크섬 수와 dmraid 툴의 새로운 수퍼 블록 정의를 추가하여 Silicon Image Medley RAID 장치의 서명 인식을 보다 강력하게 만듭니다.
- BZ#864585
- 이전 버전에서는 /sbin/mount.nfs 파일과 같은 도우미를 사용하여 파일 시스템을 마운트하는 "mount -av" 명령은 도우미가 파일 시스템을 마운트한 경우에도 "nothing was mounted" 메시지를 출력했습니다. 이 버그는 수정되었으며 이 시나리오에서는 잘못된 메시지가 더 이상 출력되지 않습니다.
- BZ#872291
- 이전에는 hwclock(8) 매뉴얼 페이지에 존재하지 않는 adjtimex 유틸리티에 대한 참조가 포함되어 있었습니다. 이번 업데이트에서는 hwclock(8) 매뉴얼 페이지가 수정되었습니다.
- BZ#915844
- 이전에는 mount(8) 도움말 페이지에 "relatime" 마운트 옵션이 잘못 설명되었습니다. 이번 업데이트를 통해 커널이 atime을 업데이트할 때 "relatime" 마운트 옵션에 대한 설명이 개선되었습니다.
- BZ#917678
- 코드의 회귀 문제로 인해 /etc/fstab 구성 파일의 마운트 지점에 심볼릭 링크가 사용된 경우 해당 마운트 지점에 대한 마운트 시도가 실패했습니다. 이번 업데이트를 통해 /etc/fstab의 모든 경로가 정식으로 설정되고 이제 이러한 마운트 지점을 예상대로 마운트할 수 있습니다.
- BZ#966735
- 이번 업데이트 이전에는 lscpu 명령에서 순차적으로 할당된 논리 CPU 번호만 허용했습니다. 결과적으로 lscpu가 CPU eject 작업 후 CPU를 올바르게 나열하지 않았습니다. 이번 업데이트 후 lascpu 명령은 순차적으로 할당된 CPU 번호를 예상하지 않으며 핫플러그 CPU가 있는 시스템에서 제대로 작동합니다.
기능 개선
- BZ#816342
- 이전에는 커널에서 올바른 CLOCAL 플래그를 결정할 수 없었으며 일부 시스템에는 수동 설정이 필요했습니다. 이번 업데이트를 통해 CLOCAL 터미널 플래그를 완전히 제어할 수 있도록 새로운 -L[={always,auto,never}] 옵션이 agetty 유틸리티에 추가되었습니다.
- BZ#846790
- 이전에는 kill(1) 도움말 페이지에 kill 유틸리티와 스레드 간의 상호 작용에 대한 정보가 포함되지 않았습니다. 이번 업데이트를 통해 종료 시스템 호출과 스레드 간의 상호 작용을 명시적으로 설명하도록 kill(1) 도움말 페이지가 개선되었습니다.
- BZ#870854
- 기본 종료 문자 "@"은 IPA 시스템에서 "user@domain" 규칙을 사용하여 로그인 사용자 이름과 충돌했습니다. 이번 업데이트를 통해 특수 종료 및 삭제 기능을 제어하기 위해 "--kill-chars" 및 "--erase-chars" 옵션을 수락하도록 agetty 유틸리티가 개선되었습니다.
- BZ#947062
- 이번 업데이트를 통해 장치 섹터를 삭제하기 위해 "blkdiscard" 명령이 Red Hat Enterprise Linux 6에 도입되었습니다. 예를 들어, 여유 공간을 회수하여 디스크 효율성을 개선하여 스토리지가 다른 영역에 사용 가능한 공간을 다시 사용할 수 있도록 "해드 카드" 지원이 중요합니다.
8.225. vhostmd
8.225.1. RHBA-2013:1579 - vhostmd 버그 수정 업데이트
버그 수정
- BZ#820500
- libmetrics 코드의 버그로 인해 vhostmd에서 게스트 메트릭을 가져오려고 할 때 사용자 프로그램이 세그먼트 오류로 종료될 수 있었습니다. libmetrics 코드는 Cryostat 쿼리를 수행하고 오류를 사용자에게 올바르게 전파하여 이제 사용자의 프로그램이 예상대로 게스트 메트릭을 가져올 수 있도록 수정되었습니다.
8.226. virt-manager
버그 수정
- BZ#820303
- 이전 버전에서는 libvirt 유틸리티를 호출할 때 동일한 USB 장치(예: "vendorid:productid")가 연결된 경우 virt-manager가 주소를 생략했습니다(예: "bus:device"). 이번 업데이트를 통해 사용자는 "bus:device" 및 "vendorid:productid"에 대한 정보를 지정하여 올바른 장치를 선택합니다. 이제 XML 또는 virt-manager GUI에서 선택한 장치에 지정된 장치가 게스트에 올바르게 연결됩니다.
- BZ#869206
- 이전에는 장치 유형 또는 모델을 변경하면 장치에 연결할 수 있는 게스트 주소가 재설정되지 않았습니다. 결과적으로 워치독을 i6300esb에서 ib700으로 변경한 후 게스트를 시작할 수 없었습니다. 이 버그가 수정되었으며 이제 게스트를 예상대로 시작할 수 있습니다.
- BZ#869474
- libvirt 유틸리티에서 생성한 브리지 네트워크를 선택할 때 virt-manager는 libvirt에서 생성한 네트워크의 세부 정보와 구성을 표시할 수 없습니다. 또한 다음 오류가 반환되었습니다.네트워크를 선택하는 동안 오류 발생: '없음 유형' 오브젝트에 'split' 속성이 없습니다이번 업데이트를 통해 libvirt에서 생성한 네트워크의 구성입니다.
- BZ#873142
- 이전에는 "새 가상 머신 생성" virt-manager 대화 상자에 "Storage" 단위에 "GB" 대신 "Gb"가 표시되었습니다. 오타가 수정되었습니다.
- BZ#907399
- 항상 "no"로 설정되는 잘못된 속성으로 인해 SElinux를 정적 옵션에서 virt-manager의 dynamic로 변경한 후 오류가 발생했습니다. 이 버그를 해결하기 위해 패치가 제공되었습니다. 이번 업데이트를 통해 오류 메시지가 반환되지 않고 SElinux가 정적에서 동적 옵션으로 성공적으로 변경됩니다.
- BZ#981628
- virt-manager의 VM 구성에서 "Toolbar" 확인란을 선택 취소하면 새 VM이 설치를 시작하지 못하고 '베인 설치' 버튼이 사라졌습니다. 이 버그를 해결하기 위해 패치가 적용되었으며 '설치 시작' 버튼이 더 이상 GUI에서 사라지지 않습니다.
- BZ#985184
- 이전에는 ram 속성이 qxl 게스트 드라이버 유형만 지원했습니다. 그 결과 qxl에서 다른 모델로 비디오 변경 시 오류가 표시되었습니다. 이번 업데이트를 통해 게스트가 제대로 작동하고 모델이 변경될 때 "ram" 요소가 자동으로 삭제됩니다.
- BZ#990507
- 이번 업데이트 이전에는 virt-manager를 사용하여 물리적 CD-ROM 또는 ISO CD-ROM 이미지를 연결하는 데 때때로 사용하던 문제가 있었습니다. 또한 "Media 선택" 대화 상자에서 이미지 또는 물리적 장치가 표시되지 않았습니다. 이 버그를 해결하기 위해 패치가 제공되었으며 "연결" 버튼을 누를 때 " Media를 선택하십시오" 대화 상자가 표시됩니다.
8.227. virt-p2v
8.228. virt-v2v
버그 수정
- BZ#809273
- virt-v2v 유틸리티를 사용하여 Red Hat Enterprise Linux 5 Cryostat에서 Red Hat Enterprise Linux 6 KVM으로 Windows 2003 R2 32비트 게스트를 마이그레이션한 후 게스트가 부팅되지 않았습니다. 이번 업데이트를 통해 변환 중에 Windows Cryostat 드라이버가 비활성화되고 게스트가 올바르게 부팅됩니다.
- BZ#820928
- 이전에는 virt-v2v에서 Microsoft Windows 운영 체제를 /windows 디렉터리에만 설치할 수 있다고 가정했습니다. 결과적으로 설치 중에 존재하지 않는 경로가 복사되면 virt-v2v가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 시스템 경로가 더 이상 하드 코딩되지 않으며 설명된 시나리오에서 virt-v2v가 더 이상 충돌하지 않습니다.
- BZ#829859
- 이전에는 virt-v2v에서 항상 기본 커널(예: default=1) 대신 첫 번째 커널(0th 커널)을 사용했습니다. 이번 업데이트를 통해 virt-v2v는 기본 커널을 사용하여 새 마이그레이션된 가상 머신을 생성합니다.
- BZ#887884
- 이번 업데이트 이전에는 커널 부팅 명령줄에 여러 콘솔 항목이 있는 Linux 게스트를 변환하는 동안 virt-v2v가 예기치 않게 종료되었습니다. 이번 업데이트를 통해 여러 콘솔이 있는 게스트를 성공적으로 변환할 수 있습니다.
- BZ#953994
- vmware-tools 및 virt-v2v 코드의 비호환성으로 인해 virt-v2v 유틸리티는 vmware-tools-foundation 종속성에서 ESX Red Hat Enterprise Linux VM을 KVM VM(커널 기반 VM)으로 변환하지 못했습니다. 손상된 종속성을 수정하는 업스트림 패치가 적용되었으며 변환에 성공합니다.
8.228.2. RHBA-2013:1749 - virt-v2v 버그 수정 업데이트
버그 수정
- BZ#1028983
- virt-v2v 업데이트에는 VMware 서버에서 내보낸 OVA 이미지 가져오기에 대한 업스트림 지원이 포함되어 있었습니다. 안타깝게도 테스트 결과에 따르면 최신 버전의 VMware ESX에서 생성된 VMDK 이미지를 안정적으로 지원할 수 없으므로 이 기능이 삭제되었습니다.
8.229. virt-viewer
버그 수정
- BZ#809546
- 게스트가 두 개 이상의 화면으로 구성되면 이러한 화면이 해당 클라이언트 모니터에 올바르게 표시되지 않았습니다. 이번 업데이트를 통해 virt-viewer 가 클라이언트 모니터에 게스트 화면을 올바르게 배치하도록 수정되었습니다.
- BZ#846127
- spice-gtk 유틸리티의 버그로 인해 가상 머신이 전체 화면 모드로 시작될 때 나중에 게스트 화면 확인을 변경할 수 없었습니다. 그 결과 해상도는 항상 기본 모니터 해상도로 되돌아왔습니다. 이 버그가 수정되었으며 이제 복잡성 없이 화면 해상도를 변경할 수 있습니다.
- BZ#856682
- 이전에는 콘텐츠를 수정하는 특정 작업 중에 Gtk+ 메뉴가 열려 있을 때 이 메뉴를 다시 생성하려고 하면 클라이언트가 응답하지 않을 수 있었습니다. 이번 업데이트를 통해 virt-viewer 는 전체 메뉴를 다시 생성하는 대신 기존 메뉴를 다시 생성합니다. 결과적으로 앞서 언급한 시나리오에서 클라이언트 정지 위험이 줄어 듭니다.
- BZ#864929
- 이번 업데이트 이전에는 클라이언트가 전체 화면 모드인 경우 모니터의 기본 해상도보다 높은 화면 해상도를 설정할 수 없었습니다. 기본 소스 코드가 수정되어 모니터 기본 해상도보다 높은 해상도를 전체 화면 모드로 구성할 수 있습니다.
- BZ#870710
- 이전에는 키보드 이벤트가 일시 중지될 때 게스트로 전송되지 않아 게스트를 사용할 수 없었습니다. 이 버그가 수정되었으며 이제 상태에 관계없이 모든 키보드 이벤트가 게스트로 전송됩니다. 그 결과 키를 누르면 이제 게스트가 예상대로 발생합니다.
- BZ#875697
- 클라이언트가 계속 연결된 동안 게스트가 종료되면 다음 메시지가 표시되었습니다.
Unable to connect to the graphic server
이번 업데이트를 통해 virt-viewer 가 정상적인 연결 해제에 오류를 보고하지 않도록 수정되었습니다. 결과적으로 설명된 사례에 더 이상 오류 메시지가 표시되지 않습니다. - BZ#876444
- 이전에는 virt-viewer 가 전체 화면 모드로 실행될 때 미러 모니터가 임의로 생성되었습니다. 이번 업데이트에서는 클라이언트 창 및 모니터 연결을 유지하기 위해 virt-viewer 를 수정합니다. 결과적으로 추가 모니터가 더 이상 임의로 미러링되지 않습니다.
- BZ#876445
- 이번 업데이트 이전에는 virt-viewer 가 전체 화면 상태를 벗어나면 클라이언트 창의 제목 표시줄이 표시되지 않았습니다. 이 버그는 이제 전체 화면을 벗어나면 클라이언트 창 제목 표시줄이 표시되고 연결할 수 있습니다.
- BZ#886570
- 이전에는 virt-viewer 가 전체 화면 모드로 전환될 때 모니터가 다른 경우에도 클라이언트와 게스트 모두에 여러 모니터 디스플레이가 동일한 해상도로 표시되었습니다. 이 버그가 수정되었으며 모니터에서 실제 용량에 따라 해상도를 표시합니다.
- BZ#890297
- 이번 업데이트 이전에는 virt-viewer 게스트 터미널을 종료한 후 I/O 오류가
libvirtd.log
파일에 작성되었습니다. 이번 업데이트를 통해 게스트 터미널을 닫을 때 libvirt 이벤트 및 콜백이 등록 해제되고, 앞서 언급한 시나리오에 I/O 오류가 더 이상 기록되지 않습니다. - BZ#908057
- remote-viewer 에서
자동 크기 조정
옵션이 비활성화되고 게스트 시스템의 화면 확인이 변경되면 이 변경 사항이 수락되지 않았으며 해상도가 이전 상태로 되돌아갑니다. 이번 업데이트를 통해 자동 크기 조정이 비활성화된 경우에도 게스트와 동기화된 모니터 구성을 유지하도록 remote-viewer 가 수정되었습니다. - BZ#908408
- virt-viewer 에서 반환한 불필요한 메시지로 인해 전체 화면 모드에서 다중 모니터 게스트에 연결을 시도할 때 보조 모니터가 종종 루프에 플래시하는 경우가 있었습니다. 이제 추가 모니터 재구성에 대한 메시지가 제거되었으며 전체 화면 모드에서 추가 모니터가 더 이상 플래시되지 않습니다.
- BZ#913601
- 이번 업데이트 이전에는 다중 모니터 게스트 설정에서 sendkey 메뉴가 보조 모니터에 잘못 배치되었습니다. 이번 업데이트를 통해 최상위 창 위치를 기반으로 하는 메뉴 좌표를 올바르게 변환하도록 virt-viewer 가 수정되었습니다. 결과적으로 sendkey 메뉴가 보조 모니터에 올바르게 배치됩니다.
- BZ#924577
Alt+S
키 조합 또는 기타 메뉴 가속기를 누른 후 게스트가Alt
상태를 활성화한 상태로 유지됩니다. 결과적으로 특정 게스트 기능이 제대로 작동하지 않았습니다. 이번 업데이트를 통해 키보드가 클라이언트 사용자 인터페이스에서 가져올 때 게스트Alt
키가 올바르게 해제되어 이 버그가 수정되었습니다.- BZ#982840
- 이전에는 virt-viewer 가 SPICE TLS autoport로 구성된 libvirt 게스트 콘솔에 연결할 수 없었습니다. 이번 업데이트를 통해 모든 포트, 일반 또는 TLS가 있는지 확인하도록 설정 논리가 수정되었습니다. 결과적으로 virt-viewer 는 이제 TLS 전용 게스트에 성공적으로 연결할 수 있습니다.
- BZ#990883
- Spice 세션에 유효하지 않은 암호를 입력하면 오류 메시지가 표시되지 않았습니다. 이제 인증 오류가 올바르게 처리되고 Spice 암호가 유효하지 않은 경우 오류 대화 상자가 표시됩니다.
기능 개선
- BZ#864026
- 이번 업데이트에서는 매개 변수 없이 명령줄에서 시작될 때 virt-viewer 시작 동작을 수정합니다. 이제 연결 대화 상자에서 오류를 처리하고 연결 세부 정보를 수정하고 새 연결을 시도할 수 있습니다.
- BZ#904091
- 이번 업데이트에서는 remote-viewer 에
--title
STRING
옵션을 추가하여 기본 창 제목을 사용자 정의 텍스트로 덮어쓸 수 있습니다. - BZ#904094
- 이번 업데이트에서는 명령줄에서 핫키 구성을 활성화하는
--hotkeys
옵션이 추가되었습니다. - BZ#905684
- 이번 업데이트를 통해 단일 모니터 세션을 닫을 때 대화 상자 창이 표시되도록 virt-viewer 가 수정되었습니다. 이 대화 상자에서는 사용자 확인을 요청하고 다시 표시되지 않는 옵션이 포함되어 있습니다.
- BZ#908805
- 이번 업데이트를 통해 브라우저별 플러그인 또는 다중 프로세스 통신 없이도 RHEVM 포털과 같이 간단한 브라우저 링크를 통해 파일에서 원격 viewer 세션을 설정할 수 있습니다.
8.230. virt-who
8.230.1. RHEA-2013:1715 - virt-who 기능 향상 업데이트
기능 개선
8.231. virtio-win
버그 수정
- BZ#759019
- 이전 버전에서는 virtio 콘솔 포트가 핫플러그되고 이후에 이전에 소유하지 않은 볼륨 그룹을 재사용하는 동일한 수의 새 포트가 연결된 경우 QEMU에서 보고했습니다.
Guest moved used index from 0 to 256
이번 업데이트를 통해 이전에 분리된 포트와 동일한 번호 아래에 새로 연결된 포트를 등록할 수 없습니다. 결과적으로 앞서 언급한 메시지가 더 이상 표시되지 않습니다. - BZ#806223
- 이전 버전에서는 virtio-serial 장치가 사용 중일 때 Sleep(S3) 모드에서 시스템을 다시 시작하려고 하면 중지 오류(실패의 파란색 화면)가 발생했습니다. virtio-serial의 인터럽트 비활성화 논리가 수정되어 stop 오류 없이 시스템을 다시 시작할 수 있습니다.
- BZ#823818
- 특정 상황에서 virtqueue가 가득 차면 게스트 볼륨 그룹이 응답하지 않게 되었습니다. 그 결과 버그 검사가 트리거되고 netkvm 드라이버가 read-only Interrupt Service Routine(ISR) 레지스터에 작성되어 QEMU가 다음 메시지에 응답했습니다.
virtio_ioport_write: unexpected address 0x13 value 0x0
이 버그는 수정되었으며 앞서 언급한 메시지가 더 이상 표시되지 않습니다. - BZ#840932
- voiserial 코드에서 StopIO 처리기가 누락되어 시스템을 종료하는 동안 중지 오류(감사의 파란색 화면)가 발생했습니다. 이번 업데이트를 통해 StopIO 처리기가 voiserial에 추가되어 시스템 종료 중에 중지 오류가 더 이상 발생하지 않습니다.
- BZ#856490
- virtio-serial 전원 상태 관리 코드의 버그로 인해 virtio-serial 유틸리티를 사용하는 동안 게스트 시스템을 절전(S3) 또는 hibernate(S4) 모드로 전환할 수 없었습니다. 이 버그가 수정되었으며 게스트가 이제 예상대로 절전 또는 최대 절전 모드가 가능합니다.
- BZ#869476
- Seabios 애플리케이션 코드의 버그로 인해 시스템은 하이버네이션에서 다시 시작할 수 없으며 중지 오류(실패의 파란색 화면)가 발생했습니다. 이번 업데이트를 통해 Seabios가 수정되었으며 이제 시스템이 예상대로 다시 시작할 수 있습니다.
- BZ#882795
- virtio-serial 장치를 통해 데이터를 전송하는 동안 시스템을 hibernate 모드(S4)로 전환하면 중지 오류(실패 화면)가 발생했습니다. 이번 업데이트를 통해 virtio-serial의 잠금 취득 및 릴리스 논리가 변경되어 이 버그가 수정되었습니다.
- BZ#889410
- 이전 릴리스에서는 TCP 오프로드 코드가 최적화되었지만 드라이버의 오프로드 에뮬레이션의 테스트 전용 모드가 업데이트되지 않아 작동하지 않았습니다. 결과적으로 SW 오프로드 테스트 모드가 트리거되면 네트워크를 사용할 수 없게 되었습니다. 이번 업데이트를 통해 TCP/IP 오프로드의 SW 에뮬레이션이 제거되고 게스트가 호스트 오프로드 기능을 제거하여 네트워크 종료를 방지합니다.
- BZ#902150
- 절전(S3) 또는 hibernate(S4) 상태에서 시스템을 다시 시작한 후 vioserial 장치가 제대로 작동하지 않았습니다. 이번 업데이트를 통해 vioserial의 장치 처리 논리가 변경되었으며 이제 S3 또는 S4 상태에서 다시 시작한 후 vioserial이 올바르게 작동합니다.
- BZ#907160
- 다중 대기열 기능이 활성화되면 virtio-net 네트워크 드라이버의 기본 주소 레지스터(BAR) 크기가 증가합니다. 이전에는 virtio-net이 초기화 중에 BAR 크기를 테스트하고 있었기 때문에 시작하지 못했습니다. 이번 업데이트를 통해 virtio-net이 BAR 크기를 테스트하지 않고 virtio 기능을 사용하여 추가 레지스터에 액세스할 수 있는지 확인합니다. 결과적으로 드라이버는 이제 복잡한 문제 없이 시작할 수 있습니다.
- BZ#908198
- 이전에는 virtio-win 패키지의 WDF 설치 프로그램이 원래 Windows 서명을 덮어쓰는 Red Hat 서명을 사용하여 서명되었습니다. 이번 업데이트를 통해 WdfCoInstaller010xx.retries 파일은 Red Hat 서명 없이 배포됩니다.
- BZ#908725
- 이전에는 virtio-win 패키지의 ".inf" 파일이 특정 virtio 사양 요구 사항을 위반하는 버전 ID를 명시적으로 지정하지 않고 배포되었습니다. 이번 업데이트를 통해 이러한 ".inf" 파일은 HW 식별 문자열의 일부로 버전 ID를 명시적으로 지정합니다.
- BZ#912926, BZ#957435
- 이번 업데이트 이전에는 NetKVM 장치 종료 중에 게스트 볼륨 그룹에서 인터럽트가 발생했을 수 있었습니다. 그 결과 게스트가 응답하지 않았습니다. 이번 업데이트를 통해 인터럽트가 비활성화되어 장치 종료가 장치의 DIRQL(Device Interrupt Request Level)과 동기화됩니다. 결과적으로 앞서 언급한 시나리오에서 게스트가 더 이상 중단되지 않습니다.
- BZ#921200
- 이전에는 NetKVM 드라이버에서 게스트 중지 오류(감사의 파란색 화면)의 경우 디버그 출력에 VIRTO_ISR 레지스터를 사용하거나 발신 전송에 중단되었습니다. 그러나 이러한 문제는 다른 방법으로 탐지해야 합니다. 이번 업데이트를 통해 VIRTIO_ISR은 더 이상 디버그 목적으로 사용되지 않습니다.
- BZ#950623
- 이전에는 여러 디버그 매개변수가 사용자에게 노출되었습니다. 이러한 매개 변수의 잠재적인 변경이 네트워크 장치의 기능에 영향을 미칠 수 있습니다. 이번 업데이트에서는 장치 관리자에서 이러한 테스트 매개변수를 제거합니다. 결과적으로 debug 및 experimental 매개변수가 더 이상 사용자에게 표시되지 않습니다.
- BZ#950633
- 체크섬 테스트에서 코너 케이스를 잘못 구현했기 때문에 NetKVM 드라이버에 의해 특정 패킷이 삭제되었습니다. 체크섬 계산이 수정되었으며 설명된 경우 패킷이 더 이상 삭제되지 않습니다.
- BZ#951070
- 이전에는 줄 바꿈 없이 출력된 디버그 정보의 특정 부분에서는 디버그 정보의 가독성이 줄어들었습니다. 이번 업데이트를 통해 디버그 출력에 줄 바꿈 문자가 추가되었습니다.
- BZ#951481
- 이전에는 virtio-serial 드라이버를 다시 설치한 후 드라이버는 직렬 포트를 통해 데이터를 전송하지 않았습니다. 이 버그가 수정되었으며 이제 virtio-serial이 다시 설치 순서 후에 올바르게 작동합니다.
- BZ#953812
- virtio-serial 드라이버의 쓰기 요청 취소 논리의 버그로 인해 게스트를 virtio-serial 포트를 통해 게스트에서 호스트로 전송하는 동안 게스트를 종료할 수 없었습니다. 이번 업데이트를 통해 게스트에서 호스트로 데이터 전송이 여전히 진행 중인 경우에도 게스트를 성공적으로 종료할 수 있습니다.
- BZ#955844
- virtio-win-1.6.3에서 Windows Server 2012 드라이버는 "Network-LAN(Server) 대신 "Network-Other Device" 제품 유형으로 인증되었습니다. 그 결과 "Network-LAN(Server)" 지원이 명확하게 명시되어 있지 않았습니다. 이번 업데이트에서는 최신 pre-WHQL 드라이버 빌드를 "Network-LAN(Server)" 제품 유형으로 추가합니다.
- BZ#956290
- NetKVM 드라이버 잠금 시퀀스의 버그로 인해 장치의 핫플러그로 인해 드라이버가 응답하지 않을 수 있었습니다. 잠금 시퀀스가 수정되었으며 예기치 않은 장치 제거 후 NetKVM이 더 이상 중단되지 않습니다.
- BZ#956882
- 드라이버가 여러 IP 주소로 설정된 경우 드라이버의 IP 주소 구조에 대한 잘못된 구문 분석으로 인해 중지 오류 (실패의 파란색 화면)가 발생할 수 있습니다. 이 구문 분석은 디버그 목적으로만 수행되었으므로 이 업데이트를 통해 드라이버에서 완전히 제거되었습니다.
- BZ#957505, BZ#960503
- 경쟁 조건으로 인해 VM 중단 전 virtio 기능을 "0"으로 설정하면 QEMU 어설션이 트리거되거나 네트워크 중단이 발생할 수 있습니다. 이번 업데이트를 통해 이러한 기능은 더 이상 "0"으로 설정되지 않으므로 앞서 언급한 시나리오에서 어설션 및 네트워크 실패를 방지할 수 있습니다.
- BZ#966809
- 이전 버전에서는 virtio-serial 장치를 핫플러그한 후 S4) 하이버네이션 모드에서 시스템을 다시 시작하면 중지 오류(실패의 파란색 화면)가 발생했습니다. 이 버그가 수정되었으며 설명된 경우 게스트가 성공적으로 다시 시작할 수 있습니다.
- BZ#972310
- NetKVM 드라이버를 초기화하지 못한 경우 특정 내부 시스템 데이터 구조도 초기화되지 않았습니다. 그 결과, 드라이버 언로드 중에 초기화되지 않은 데이터 구조에 대한 액세스로 인해 중지 오류(실패의 파란색 화면)가 발생했습니다. 이번 업데이트를 통해 부분 드라이버 초기화가 올바르게 처리되고 더 이상 중지 오류가 발생하지 않습니다.
- BZ#982940
- 이전에는 INF 파일에 1GB 연결 속도가 잘못 표시되었습니다. 이 크기의 연결 속도를 장치 관리자에서 설정할 수 있지만 명령줄 도구를 사용하여 1GB 속도를 설정할 수 없었습니다. 이번 업데이트에서는 INF 파일에서 올바른 연결 속도를 설정하고 이 비율은 이제 명령행을 사용하여 예상대로 구성할 수 있습니다.
- BZ#988302
- Visual Studio 프로젝트로의 자동 변환에서는 netsh 플러그인의 32비트 바이너리에 대한 잘못된 호출 규칙을 설정합니다. 그 결과 netsh 플러그인의 명령줄 옵션이 32비트 운영 체제에서 작동하지 않았습니다. 이번 업데이트를 통해 호출 규칙이 변경되었으며 netsh 플러그인 명령줄 옵션이 이제 32비트 아키텍처에서 올바르게 작동합니다.
기능 개선
- BZ#713130
- 이번 업데이트를 통해 이벤트 인덱스 기능에 대한 지원이 추가되었습니다. 이 기능은 예를 들어 네트워크 전송 중에 대부분의 작업에 대해 메가바이트당 CPU 사용률을 줄입니다.
- BZ#904934
- MAC 주소를 설정하는 새로운 메커니즘이 QEMU에 도입되었습니다. 이제 MAC 주소를 원자적으로 변경할 수 있으며 QEMU는 MAC 주소의 유효성을 테스트할 수 있습니다.
- BZ#920011
- 기본적으로 OVS 스위치는 패킷에서 우선순위 헤더를 제거하므로 Windows 게스트에서 시작되는 패킷에서 우선 순위 및 VLAN 태그가 제거됩니다. 이제 "other-config:priority-tags" 옵션을 사용하여 이 동작을 구성할 수 있습니다. 우선순위 태그를 유지하려면 OVS 브리지에 추가된 각 포트에 대해 다음 명령을 실행해야 합니다.
ovs-vsctl set port <PORT_NAME> other-config:priority-tags=true
- BZ#948017
- 이번 업데이트에서는 qemu-ga-win 에이전트에 VSS(Volume Cryostat 복사 서비스)에 대한 지원이 추가되었습니다. VSS는 일관된 정지 및 thaw 작업을 허용하는 Microsoft Windows API입니다. 이 기능을 사용하면 가상 머신이 실행되는 동안 수행된 스냅샷은 블록 계층에서 게스트 애플리케이션으로 전체 스택을 일관되게 수행하고 백업 목적으로 사용할 수 있습니다.
- BZ#950424
- 이번 업데이트를 통해 게스트 드라이버에서 virtio 간접 버퍼 기능을 사용할 수 있으므로 분할된 네트워크 트래픽을 전송할 수 있는 virtio 기능이 향상되었습니다.
- BZ#950509
- 이번 업데이트를 통해 NetKVM 드라이버 빌드 기능이 Visual Studio 프로젝트 또는 솔루션으로 변환되어 Windows 8 DDK와의 호환성을 제공합니다.
- BZ#950617
- 이번 업데이트에서는 RSS(Receive Side Scaling)를 구현하여 Windows SMP 게스트에서 RX 성능을 향상시킵니다.
- BZ#971141
- Windows 게스트 에이전트는 이제 완전히 지원되고 virtio-win 드라이버와 함께 Supplementary 채널에서 자체 설치 프로그램과 함께 제공됩니다.
8.232. 워치독
8.232.1. RHBA-2013:1656 - 워치독 버그 수정 업데이트
8.233. WebKitGTK
버그 수정
- BZ#966571
- 이전에는 WebKitGTK+의 JavaScript에 대해JIT(Just-in-time) 컴파일이 활성화되지 않았습니다. 결과적으로 일부 웹 사이트에서는 로드 및 성능에 문제가 발생했습니다. 이번 업데이트에서는 32비트 Intel, Intel 64 및 AMD64 아키텍처에 대해 Cryostat 컴파일을 사용할 수 있으며 원하지 않는 동작이 더 이상 발생하지 않습니다.
8.234. Wireshark
보안 수정
- CVE-2013-3559, CVE-2013-4083
- Wireshark에서 두 가지 결함이 발견되었습니다. Wireshark에서 잘못된 형식의 패킷을 읽거나 악의적인 덤프 파일을 열면 Wireshark를 실행하는 사용자로 임의의 코드를 충돌하거나 실행할 수 있습니다.
- CVE-2012-2392,CVE-2012-3825,CVE-2012-4 288 ,CVE-2012-4288,CVE-2012-4289,CVE-2012-4290,CVE-2012-4291,CVE-2012-4292, CVE-2012-5595 ,CVE-2012-5595, CVE-2012-5597,CVE-2012-5598,CVE-2012-5599,CVE-2012-5600,CVE-2012-6056,CVE-2012-6059,CVE-2012-6060,CVE-2012-6061, CVE-2012-6062,CVE-2013-3557,CVE-2013-3561,CVE-2013-4081,CVE-2013-4927,CVE-2013-4931,CVE-2013-4932,CVE-2013-4933, CVE-2013-4934,CVE-2013-4935,CVE-2013-4936,CVE-2013-5721
- Wireshark에서 몇 가지 서비스 거부 결함이 발견되었습니다. Wireshark는 네트워크에서 잘못된 형식의 패킷을 읽거나 악의적인 덤프 파일을 열 때 응답하지 않을 수 있습니다.
버그 수정
- BZ#750712
- 이전 버전에서는 NFSv4.1에서 생성된 트래픽을 검사할 때 Wireshark에서 RECLAIM-COMPLETE opcode를 구문 분석하지 않았습니다. RECLAIM_COMPLETE opcode의 구문 분석을 활성화하는 패치가 제공되었으며 이제 Wireshark에서 NFSv4.1 트래픽을 올바르게 분리하고 처리할 수 있습니다.
- BZ#832021
- 이번 업데이트 이전에는 패킷 캡처 파일의 타임스탬프에서 텍스트 파일의 프레임 도착 시간을 1시간 전에 보고했습니다. 이로 인해 dfilter-test.py 테스트 모음에서 다양한 오류가 보고되었습니다. 이 버그를 수정하려면 프레임 도착 타임스탬프가 1시간으로 전환되어 이 버그를 수정합니다.
- BZ#1004636
- "tshark -D" 명령은 "tshark -D" 출력을 구문 분석하는 스크립트를 중단할 수 있는 STDOUT 대신 STDERR에 출력을 반환했습니다. 이 버그가 수정되었으며 "tshark -D" 명령은 출력 데이터를 올바른 표준 스트림에 씁니다.
- BZ#715560
- 배열 오버런으로 인해 Wireshark는 정의되지 않은 프로그램 동작을 경험하거나 예기치 않게 종료될 수 있었습니다. 이번 업데이트를 통해 설명된 시나리오에서 적절한 어레이 처리를 통해 Wireshark가 더 이상 충돌하지 않도록 합니다.
- BZ#659661
- 이전에는 dftest 및 randpkt 명령줄 유틸리티에 수동 페이지가 없었습니다. 이번 업데이트에서는 두 유틸리티 모두에 적절한 도움말 페이지가 추가되었습니다.
8.235. xfsprogs
8.235.1. RHBA-2013:1657 - xfsprogs 버그 수정 업데이트
버그 수정
- BZ#893904
- 이전 버전에서는 ag_stride 옵션이 xfs_repair 명령에 옵션으로 지정되면 명령이 세그먼트 오류로 종료되었습니다. 이번 업데이트에서는 기본 XFS 복구 코드가 수정되어 ag_stride 옵션이 올바르게 처리됩니다.
- BZ#950691
- 이전에는 특정 파일 시스템에서 xfs_repair 유틸리티에서 "7f61c041b700: badness in key lookup (length)과 같은 경고를 보낼 수 있었습니다. 이는 캐시 조회 실패와 관련된 무해한 오류였지만 이러한 메시지에는 xfs_repair를 실행하는 사용자가 있을 수 있습니다. 이번 업데이트를 통해 이러한 경고가 더 이상 발생하지 않습니다.
- BZ#961501
- mkfs.xfs 명령에 수동으로 스트라이프를 지정하면 스트라이프가 자동으로 감지될 때 mkfs.xfs는 "multidisk mode"를 올바르게 선택하지 않았습니다. 결과적으로 최적의 할당 그룹 수보다 적은 수가 생성되었습니다. 이번 업데이트를 통해 다중 디스크 모드가 올바르게 선택되고 더 많은 할당 그룹이 생성됩니다.
- BZ#962394
- xfs_io(8) 도움말 페이지에는 chproj, lsproj 및 setfl 명령에 대한 문서가 포함되어 있지 않습니다. 이러한 명령은 이제 도움말 페이지에 설명되어 있습니다. 또한 도움말 페이지가 fallocate() 시스템 호출의 섹션 2를 참조하도록 수정되었습니다.
- BZ#962397
- 이전에는 초과된 inode 필드가 발생하면 xfs_logprint 명령이 "xlog_print_trans_inode: illegal inode type" 오류로 중단될 수 있었습니다. 이번 업데이트에서는 로그된 inode 필드가 올바르게 처리되고 xfs_logprint가 예상대로 성공적으로 완료되도록 기본 로그 지문 코드를 수정합니다.
- BZ#964216
- 이전에는 xfs_repair 유틸리티에서 조각화된 다중 블록 버전 2 디렉터리를 올바르게 처리할 수 없어 특정 상황에서 xfs_repair 분할 오류가 발생했습니다. 이번 업데이트에서는 기본 코드를 수정하여 xfs_repair가 조각화된 버전 2 디렉토리에서 예상대로 작동할 수 있도록 합니다.
- BZ#987538
- mkfs.xfs(8) 도움말 페이지에는 "-d noalign" 옵션에 대한 설명이 포함되어 있지 않아 mkfs 시간에 자동 스토리지 탐지를 비활성화합니다. 이번 업데이트를 통해 이제 옵션이 올바르게 문서화됩니다.
- BZ#1002908
- 이전에는 지속적인 inode 트랜잭션 또는 래핑된 로그가 발생하면 xfs_logprint 명령이 실패할 수 있었습니다. 이번 업데이트에서는 지속적인 inode 트랜잭션 및 래핑된 로그가 올바르게 처리되고 xfs_logprint가 예상대로 성공적으로 완료되도록 기본 로그 지문 코드를 수정합니다.
8.236. xmlrpc-c
8.236.1. RHBA-2013:1254 - xmlrpc-c 버그 수정 업데이트
버그 수정
- BZ#809819
- 이전에는 "--help" 명령을 실행할 때 나열된 기능이 "--features" 명령을 실행할 때 목록과 일치하지 않았습니다. 또한 재현기 스크립트를 실행하면 "Unrecognized token" 오류가 발생했습니다. 이번 업데이트를 통해 나열된 기능이 일관되고 "Unrecognized token" 오류가 더 이상 표시되지 않습니다.
8.237. xorg-x11-drv-ati
버그 수정
- BZ#907616
- 이전에는 핫 플러그 감지 및 모드 설정이 자동으로 수행되지 않았습니다. 결과적으로 사용자가 여러 모니터에 연결할 때 변경 사항을 적용하기 위해 유틸리티 프로그램을 실행해야 했습니다. 드라이버가 업데이트되었으며 핫플러그 탐지 및 모드 설정이 예상대로 작동합니다.
기능 개선
8.238. xorg-x11-drv-intel
버그 수정
- BZ#886191
- 이전 버전에서는 Red Hat Enterprise Linux 6를 일부 워크스테이션에 설치할 때 Anaconda는 i915 Intel 드라이버 대신 fbdev 드라이버를 선택했습니다. 이번 업데이트를 통해 Intel 드라이버가 선택되어 버그를 수정합니다.
- BZ#999334
- src rpms에서 rpms를 빌드할 때 rpmbuild 절차의 마지막 단계에 패키징되지 않은 사양 정의 및 소스가 생성된 파일입니다. 그 결과 다른 모든 항목이 성공적으로 빌드된 경우에도 rpmbuild가 rpm(s)을 생성하지 않았으며 다음 오류 메시지가 반환되었습니다.설치됨(하지만 패키지되지 않음) 파일을 찾을 수 있습니다.이 버그는 수정되었으며 모든 파일이 이제 예상대로 패키지됩니다.
8.239. xorg-x11-drv-mga
버그 수정
- BZ#894959
- 이번 업데이트 이전에는 16:9 비율로 19인치 모니터에서 그래픽 사용자 인터페이스가 왜곡된 것처럼 보일 수 있었습니다. xorg-x11-drv-mga 패키지가 수정되었으므로 이 시나리오에서는 왜곡이 더 이상 발생하지 않습니다.
- BZ#918017
- 이전에는 MGA G200e 칩을 사용하는 Red Hat Enterprise Linux 6.4에서 1440x900 이상의 해상도를 사용할 수 없었습니다. 그 결과 Matrox 드라이버에서 많은 모니터에 대해 기본 해상도에 도달할 수 없었습니다. 이번 업데이트를 통해 X Server는 더 이상 큰 해결 모드를 폐기하지 않으며 1440x900 이상의 해상도를 사용할 수 있습니다.
8.240. xorg-x11-drv-nouveau
버그 수정
- BZ#876566
- 이전 버전에서는 특정 NVIDIA Quadro 그래픽 카드에 VGA 호환 컨트롤러를 사용할 때 rendercheck 테스트 모음에서 렌더링 문제로 인해 전체 검사를 수행할 수 없었습니다. xorg-x11-drv-nouveau 패키지가 수정되었으며 렌더링 문제가 더 이상 발생하지 않으며 테스트 모음이 예상대로 검사를 완료합니다.
8.241. xorg-x11-drv-qxl
버그 수정
- BZ#929037
- 사용자가 Red Hat Enterprise Linux 5가 있는 호스트에서 Red Hat Enterprise Linux 6으로 게스트를 시작하려고 하면 QEMU QXL 비디오 액셀러레이터가 세그먼트 오류로 실패했습니다. 결과적으로 게스트가 시스템 GUI를 시작할 수 없었습니다. 이번 업데이트에서는 이 버그를 해결하기 위해 패치를 적용하고 게스트가 올바르게 시작됩니다.
- BZ#951000
- Xinerama 확장자와 함께 여러 QXL 장치를 사용하거나 별도의 화면이되는 동안 여러 QXL 장치를 사용하는 경우 xorg.conf 파일에서 1024 x 768픽셀 이상의 해상도를 설정하려고 시도하지 않았습니다. 이번 업데이트를 통해 기본 소스 코드가 수정되었으며 이제 해결 방법을 예상대로 설정할 수 있습니다.
8.242. xorg-x11-drv-synaptics
버그 수정
- BZ#988174
- 이전에는 synaptics 드라이버에서 장치 해상도에 따라 입력 좌표를 확장했습니다. 결과적으로 X 서버는 상대 모드에서 다른 장치에 대해 균일한 해상도 기반 스케일링을 적용할 수 없었습니다. synaptics 드라이버는 X 서버가 장치별 해상도 스케일링을 지원하지 않는 경우에만 스케일링 기능을 적용하도록 수정되었습니다.
8.243. xorg-x11-drv-wacom
버그 수정
- BZ#920385
- 이전에는 xsetwacom 명령을 xsetwacom 명령을 사용하여 Wacom Cintiq 22HD 태블릿의 버튼 중 하나에 Esc 키를 매핑할 수 없었습니다. 결과적으로 오류 메시지를 표시하지 않고 명령이 실패하고 키가 매핑되지 않았습니다. 이 버그는 수정되었으며 이로 인해 드라이버가 Esc 키를 예상대로 매핑합니다.
8.244. xorg-x11-server
보안 수정
- CVE-2013-1940
- X.org X11 서버가 새 핫 플러그된 장치를 등록하는 방식에서 취약점이 발견되었습니다. 로컬 사용자가 다른 세션으로 전환하여 새 장치를 연결한 경우 해당 장치의 입력을 이전 세션에서 사용할 수 있어 정보 공개가 발생할 수 있습니다.
버그 수정
- BZ#915202
- 이전 업스트림 패치는 Xephyr X 서버를 크기를 조정할 수 있도록 수정했지만 기본적으로 크기 조정 기능을 활성화하지 않았습니다. 그 결과 Red Hat Enterprise Linux 6.4 이상에서는 X 샌드박스를 사용할 수 없었습니다. 이번 업데이트에서는 기본적으로 크기 조정 기능을 활성화하여 X 샌드박스의 크기를 예상대로 조정할 수 있습니다.
- BZ#957298
- Red Hat Enterprise Linux 6에서 X 보안 확장(XC-SECURITY)이 비활성화되어 XACE(X Access Control Extension)로 교체되었습니다. 그러나 XACE에는 이전에 XC-SECURITY에서 사용 가능한 기능이 포함되어 있지 않습니다. 이번 업데이트를 통해 Red Hat Enterprise Linux 6의 xorg-x11-server 사양 파일에서 XC-SECURITY가 활성화됩니다.
- BZ#969538
- 확장 초기화를 위한 업스트림 코드 변경으로 인해 Xvfb(X 가상 프레임 버퍼)에서 GLX 확장을 실수로 비활성화하여 헤드리스 3D 애플리케이션이 작동하지 않습니다. 이 문제에 대한 업스트림 패치가 백포트되어 GLX 확장이 다시 활성화되고 이 확장에 의존하는 애플리케이션이 예상대로 작동합니다.
8.245. xorg-x11-xinit
버그 수정
- BZ#811289
- 이전에는 startx 스크립트에서 xserverrc 파일을 올바르게 처리하지 않았습니다. xserverrc 파일이 /etc/X11/xinit/ 디렉터리에 있으면 다음 오류 메시지와 함께 스크립트가 실패했습니다.치명적인 서버 오류: 알 수 없는 옵션: /etc/X11/xinit/xserverrc이번 업데이트를 통해 xserverrc 파일의 옵션을 사용하여 X 세션이 시작되고 시작 스크립트가 xserverrc 파일을 올바르게 처리합니다.
8.246. yaboot
버그 수정
- BZ#903855
- 이전에는 클라이언트는 TFTP(Trivial File Transfer Protocol) 파일 전송의 게이트웨이 IP 주소를 덮어쓰고 있었습니다. VLAN 태그를 사용하여 네트워크를 통해 설치할 때 서버가 다른 IP 서브네트워크에 있을 때 부팅에 실패했습니다. 이번 업데이트를 통해 나머지 매개변수 스트립을 올바르게 구문 분석할 수 있으며 앞서 언급한 시나리오에서 오류가 더 이상 발생하지 않습니다.
- BZ#968046
- 첫 번째 할당과 펌웨어 하단 사이에 충분한 공간이 없기 때문에 펌웨어가 32MB(0200000)에 있을 때 램디스크를 로드하려고 했습니다. 이번 업데이트에서는 initrd 메모리의 크기가 yaboot인 것을 확인할 수 있는 기능이 추가되었습니다. 결과적으로 yaboot는 메모리에 버퍼를 정확하게 배치할 수 있으며 램디스크 로드 오류가 더 이상 발생하지 않습니다.
기능 개선
- BZ#947101
- 이번 업데이트에서는 yaboot에서 512B 섹터에 대해 최대 2TB의 limit이 있는 Cryostat 파티션 형식을 지원했기 때문에 yaboot에 GUID 파티션 테이블(GPT) 지원이 추가되었습니다. 따라서 디스크가 큰 경우에도 이 제한은 모든 장치를 2TB로 포맷해야 합니다. yaboot에서 GPT 지원을 통해 사용자는 이제 더 큰 디스크를 사용할 수 있습니다.
8.247. yum-rhn-plugin
버그 수정
- BZ#949649
- 충분히 느린 네트워크로 부모와 분리된 경우 RHN 프록시가 제대로 작동하지 않았습니다. 결과적으로 더 큰 repodata 파일 및 RPM을 다운로드하려고 시도한 사용자는 시간 초과가 발생했습니다. 이번 업데이트에서는 RHN Proxy 및 Red Hat Enterprise Linux RHN Client를 모두 변경하여 모든 통신이 설정된 시간 초과 값을 연결할 수 있도록 합니다.
버그 수정
8.248. zsh
8.248.1. RHEA-2013:1557 - zsh 기능 개선 업데이트
기능 개선
- BZ#820530
- 이번 업데이트에서는 ${NAME:OFFSET:LENGTH} 대체가 zsh에 추가되어 사용자가 ${NAME:OFFSET:LENGTH} 구문을 사용하여 하위 문자열을 표시할 수 있습니다.