3장. 커널
Red Hat Enterprise Linux 6.2 이전에 qla4xxx
어댑터 펌웨어는 iSCSI 대상으로 로그인 및 검색을 관리했었습니다. Red Hat Enterprise Linux 6.2에서 새로운 기능은 open-iscsi를 사용하여 qla4xxx
검색 및 로그인 프로세스를 관리할 수 있습니다. 이는 보다 더 균일한 관리 프로세스를 가능하게 합니다.
qla4xxx
iSCSI 펌웨어 설정은 다음을 통해 액세스할 수 있습니다:
~]# iscsiadm -m fw
ql4xdisablesysfsboot=1
매개 변수를 다음과 같이 설정하여 비활성화할 수 있습니다:
/etc/modprobe.d
파일에 매개 변수를 설정합니다:~]#
echo "options qla4xxx ql4xdisablesysfsboot=1" >> /etc/modprobe.d/qla4xxx.conf
- 다음 명령을 실행하여
qla4xxx
모듈을 다시 로딩합니다:~]#
rmmod qla4xxx
~]#modprobe qla4xxx
또는qla4xxx
장치에서 부팅하는 경우 시스템을 재부팅합니다.
qla4xxx
장치에서 부팅할 때 Red Hat Enterprise Linux 6.1에서 Red Hat Enterprise Linux 6.2로 업그레이드하면 시스템은 새로운 커널로 부팅할 수 없게 됩니다. 이러한 알려진 문제에 대한 보다 자세한 내용은 기술 문서를 참조하십시오.
Kdump (kexec 기반 크래시 덤프 메카니즘)는 Red Hat Enterprise Linux 6의 다음과 같은 파일 시스템에 있는 코어 덤프를 지원합니다:
- Btrfs (이 파일 시스템은 기술 퓨리뷰임에 유의)
- ext4
- XFS (XFS는 레이어 제품이며 이 기능을 활성화하기 위해 설치해야 함에 유의)
pkgtemp
모듈은 coretemp
모듈과 병합되었습니다. 현재 pkgtemp
모듈은 사용 중지되었습니다. coretemp
모듈은 이전에 지원된 모든 기능을 지원하는 것 이외에 pkgtemp
모듈에 의해 지원된 기능을 지원합니다.
coretemp
는 코어 온도에 따라 제공된 반면 pkgtemp
모듈은 CPU 패키지의 온도를 제공했습니다. Red Hat Enterprise Linux 6.2에서 coretemp
모듈은 코어, 언코어, 패키지의 온도를 읽을 수 있게 합니다.
Red Hat Enterprise Linux 6.2에서 SCSI midlayer는 SCSI 드라이버 queuecommand
기능의 잠금 없는 디스패치 옵션을 지원합니다.
scsi_host_template
구조에 있는 플래그를 사용하여 SCSI 호스트 버스 잠금이 유지되지 않는 드라이버 queuecommand
인 SCSI midlayer를 나타냅니다.
queuecommand
디스패치 동안 Scsi_Host
잠금이 유지됩니다. scsi_host_alloc
앞에 scsi_host_template
잠금없는 비트로 설정하면 Scsi_Host
잠금이 유지되지 않고 드라이버 queuecommand
기능이 디스패치되게 합니다. 이러한 경우 잠금 보호 기능이 필요하며 이는 드라이버 queuecommand
코드 경로로 푸시다운됩니다.
queuecommand
를 사용하도록 업데이트된 SCSI 드라이버는 다음과 같습니다:
- iscsi_iser
- be2iscsi
- bnx2fc
- bnx2i
- cxgb3i
- cxgb4i
- fcoe (소프트웨어 fcoe)
- qla2xxx
- qla4xxx
Red Hat Enterprise Linux 6.2에는 기술 프리뷰로 FCoE (Fiber Channel over Ethernet) 대상 모드에 대한 지원이 포함되어 있습니다. 이 커널 기능은 fcoe-target-utils 패키지에 의해 제공되는 targetadmin을 통해 설정될 수 있습니다. FCoE는 DCB (Data Center Bridging)을 지원하는 네트워크에서 사용하도록 설계되어 있습니다. 자세한 내용은 dcbtool(8)
및 targetadmin(8)
man 페이지에서 참조하십시오.
중요
Red Hat Enterprise Linux 6.1에서 BZ#605786로 crashkernel=auto
부트 매개 변수는 더이상 사용되지 않습니다. 하지만 Red Hat Enterprise Linux 6.2에서 crashkernel=auto
에 대한 지원은 모든 Red Hat Enterprise Linux 6 시스템에서 계속됩니다.
mdadm
및 mdmon
유틸리티는 어레이의 자동 재구성, RAID 레벨 마이그레이션, RAID 5 지원 제한, SAS-SATA 드라이브 로밍을 지원하도록 업데이트되었습니다.
Red Hat Enterprise Linux 6.2는 플래시 실행이 느린 장치에 대해 플래시 병합 요청을 지원합니다.
Red Hat Enterprise Linux 6.2에는 UV2 Hub 지원이 추가되어 있습니다. UV2는 UVhub 칩으로 현재 UV1 hub 칩의 후속 칩입니다. UV2는 현재 개발중인 HARP hub 칩을 사용합니다. UV2는 새로운 Intel 소켓을 지원합니다. 이는 성능 개선을 위한 새로운 기능을 제공합니다. UV2는 SSI의 64 TB 메모리를 지원하도록 설계되어 있습니다. 또한 노드 컨트롤러 MMR도 UV 시스템에 대해 업데이트되었습니다.
Red Hat Enterprise Linux 6.2는 kdump에 대해 acpi_rsdp
부트 매개 변수를 도입하여 ACPI RSDP 주소를 전달하므로 kdump 커널은 EFI (Extensible Firmware Interface)없이 부팅할 수 있습니다.
다음과 같은 기능 개선이 QETH 네트워크 장치 드라이버에 추가되었습니다:
af_iucv
HiperSockets 전송 지원- 강제 신호 어댑터 표시 지원
- 스토리지 블록의 비동기 전송에 대한 지원
if_ether
모듈에 추가된 새로운 이더넷 프로토콜 ID
IBM zEnterprise 196에 의해 지원되는 새로운 CPACF (CP Assist for Cryptographic Function) 알고리즘에 대한 지원이 추가되었습니다. 새로운 하드웨어 가속 알고리즘은 다음과 같습니다:
- AES의 CTR 모드
- DES 및 3DES의 CTR 모드
- 키 길이가 128 비트 및 256 비트인 AES의 XTS 모드
- GCM 모드의 GHASH 메시지 다이제스트
Red Hat Enterprise Linux 6.2에서는 pci=realloc
커널 매개 변수를 통해 조건적 리소스 재할당을 지원합니다. 이 기능은 회귀하지 않고 동적 재할당 PCI 리소스를 추가하기 위한 임시적인 해결책을 제공합니다. 이는 기본값으로 동적 재할당을 비활성화하지만 pci=realloc
커널 명령행 매개 변수를 통해 이를 활성화하기 위한 기능을 추가할 수 있습니다.
기본값으로 동적 재할당은 비활성화되어 있습니다. pci=realloc
커널 명령행 매개 변수로 이를 활성화할 수 있습니다. 또한 브리지 리소스는 PCI assign unassigned
호출에서 보다 큰 범위를 제공할 수 있도록 업데이트되었습니다.
Red Hat Enterprise Linux 6.2는 커널에서 SMEP (Supervision Mode Execution Protection)를 사용합니다. SMEP는 강제 메커니즘을 제공하여 시스템이 수퍼바이저 (supervisor) 모드에 있는 동안 사용자 페이지에서 실행되지 않도록 요구 사항을 설정할 수 있게 합니다. 그 후 이 요구 사항은 CPU에 의해 강제됩니다. 이 기능은 시스템 코드 취약점에 관계없이 CPU가 수퍼바이저 모드에 있는 동안 사용자 모드 페이지에서 실행되는 모든 공격을 방지할 수 있습니다.
최신 Intel 플랫폼에 대한 향상된 고속 문자열 REP
MOVSB
/STORESB
의 지시 사항에 대한 지원이 추가되었습니다.
USB 3.0 xHCI 호스트 드라이버가 업데이트되어 분할 허브 지원이 추가되어 USB 3.0 루트 허브 및 USB 2.0 루트 허브를 등록하여 xHCI 호스트 컨트롤러가 외부 USB 3.0 허브로 작동할 수 있게 되었습니다.
ACPI, APEI, EINJ 매개 변수 지원은 기본적으로 비활성화되어 있습니다.
Red Hat Enterprise Linux 6.2에는 pstore— 플랫폼 의존적 영구 스토리지의 파일 시스템 인터페이스에 대한 지원이 추가되어 있습니다.
printk 기반 APEI (ACPI Platform Error Interface) 하드웨어 오류 보고에 대한 지원이 추가되어 다양한 소스에서 오류를 통합하여 이를 시스템 콘솔에 보내는 방법을 제공합니다.
ioatdma
드라이버 (dma
엔진 드라이버)가 dma
엔진을 사용하는 Intel 프로세서를 지원하도록 업데이트되었습니다.
Digi/IBM PCIe 2-port Async EIA-232 어댑터에 대한 지원이 8250 PCI 시리얼 드라이버에 추가되었습니다. 또한 Digi/IBM PCIe 2-port Async EIA-232 어댑터의 EEH (Enhanced Error Handling) 지원이 8250 PCI 시리얼 드라이버에 추가되었습니다.
ARI (Alternative Routing - ID Interpretation) 지원, PCIe v2 기능이 Red Hat Enterprise Linux 6.2에 추가되었습니다.
PCIe OBFF (Optimized Buffer Flush/Fill) 활성화/비활성화 지원은 Intel의 최신 플랫폼에 추가되었습니다. OBFF는 인터럽트, 메모리 동작 및 전력에 미치는 영향이 저하될 가능성에 대한 정보를 장치에 제공하여 궁극적으로 에너지 효율을 개선합니다.
Red Hat Enterprise Linux 6.2에서 커널은 dmesg
버퍼에서 PowerPC 아키텍처의 NVRAM으로 커널 oops/panic 보고서를 캡처하기 위해 활성화되어 있습니다.
NVIDIA 플랫폼에서 그래픽 스위칭을 처리해야 하는 MXM 드라이버는 Red Hat Enterprise Linux 6.2에 백포트되었습니다.
Red Hat Enterprise Linux 6.2에서는 페이지 통합을 도입하여 IBM Power 서버에 있는 기능으로, 논리 파티션 간의 동일한 페이지를 통합할 수 있습니다.
L3 캐시 파티션 설정에 대한 지원이 최신 AMD 제품군 CPU에 추가되었습니다.
thinkpad_acpi
모듈이 업데이트되어 새로운 ThinkPad 모델에 대한 지원이 추가되었습니다.
최신 Intel 프로세서 C-State 지원이 intel_idle에 추가되었습니다.
현재 Red Hat Enterprise Linux 6.2는 AMD 시스템에서 IOMMU (Input/Output Memory Management Unit)에 대한 경고를 표시합니다.
부팅시 dmesg
에 보드, 시스템, BIOS 정보 로그가 추가되었습니다.
cputable
항목이 커널에 추가되어 최신 IBM PowerPC 프로세서 제품군에 대해 지원합니다.
VPHN (Virtual Processor Home Node) 기능이 IBM System p에서 비활성화되었습니다.
다음 드라이버는 최신 Intel 칩셋에 의해 지원되고 있습니다:
i2c-i801
SMBus 드라이버ahci
AHCI-모드 SATAata_piix
IDE-모드 SATA 드라이버- TCO Watchdog 드라이버
- LPC 컨트롤러 드라이버
IBM PowerPC 시스템에서sysctl 또는 /proc/sys/kernel/exec-shield
매개 변수에 있는 exec-shield
값은 더 이상 강제되지 않습니다.
64-비트 PowerPC 및 64-비트 IBM POWER 시리즈 시스템에서 kdump
를 지원하기 위한 확인 및 수정이 추가되었습니다.
UV MMTIMER 모듈 (uv_mmtimer
)이 SGI 플랫폼에서 활성화되었습니다. uv_mmtimer
모듈은 모든 허브 전체에 걸쳐 동기화된 UV 시스템의 실시간 클럭으로 유저랜드의 직접 액세스를 허용합니다.
IB700
모듈에 대한 지원이 Red Hat Enterprise Linux 6.2에 추가되었습니다.
aer_mask_override
모듈 매개 변수가 추가되어 PCI 장치에 대한 수정되거나 수정되지 않은 마스크를 덮어쓰기 하는 방법을 제공합니다. 마스크는 상태에 해당하는 비트가 aer_inject()
함수에 전달되도록 합니다.
USB 3.0 호스트 컨트롤러 지원이 64-비트 PowerPC 및 64-비트 IBM POWER Series 시스템에 추가되었습니다.
개선된 업스트림 OOM (Out of Memory) killer 구현은 Red Hat Enterprise Linux 6.2에 백포트되었습니다. 개선된 기능은 다음과 같습니다:
- 종료하려는 프로세스가 OOM killer보다 우선합니다.
- OOM kill 프로세스는 선택된 프로세스의 자식도 kill합니다.
- 휴리스틱 (Heuristic)이 추가되어
forkbomb
프로세스를 kill합니다.
oom_score_adj
/proc
조정 가능한 매개 변수는 각 프로세스의 oom_score_adj
변수에 저장된 값을 추가하여 /proc
을 통해 조정 가능합니다. 이는 사용자 공간에 있는 OOM killer로의 각 프로세스의 매력도를 조정할 수 있게 합니다. 이를 -1000
로 설정하면 OOM kill을 전체적으로 비활성화하는 반면 +1000
로 설정하면 이 프로세스를 OOM의 주요 kill 대상으로 표시하게 합니다.
Red Hat Enterprise Linux 6.2는 업데이트된 zram
드라이버를 제공합니다. (범용 RAM 기반의 압축 블록 장치를 생성)
Red Hat Enterprise Linux 6.2에서 사용할 top 유틸리티에 대한 마이크로 초 단위의 CPU 시간 정교성을 제공함으로써 커널에 있는 taskstat 유틸리티 (ASET 작업 상태 표시)가 강화되었습니다.
Red Hat Enterprise Linux 6.2에서는 버전 3.1로의 커널 업그레이드와 함께 perf 유틸리티를 업스트림 버전 3.1로 업데이트했습니다. perf 유틸리티에 의해 제공되는 새롭게 지원되는 커널 기능은 BZ#725524에서 참조하십시오. perf 유틸리티의 업데이트된 버전에는 다음이 포함됩니다:
- 추가된 cgroup 지원
/proc/sys/kernel/kptr_restrict
처리 추가- 캐시 미스 (cache-miss) 비율 표시 추가
- 더 많은 CPU 이벤트 보기 위해
-d -d
및-d -d -d
옵션을 추가 --sync/-S
옵션 추가PERF_TYPE_RAW
매개 변수에 대한 지원 추가-f/--fields
옵션에 대한 보다 많은 문서 추가- python-perf 패키지에 python 바이딩 지원 추가
Red Hat Enterprise Linux 6.2에서는 최신 Intel 프로세서에 대한 OProfile 지원이 추가되었습니다.
인터럽트 요청 수 (IRQ)는 모든 irq의 합계 카운터에서 계산하여 /proc/stat
파일에 있는 검색 비용을 절감합니다.
Red Hat Enterprise Linux 6.2는 스케줄링을 개선하여 힌트는 수면 (sleep) 및 선점 (preempt) 경로에 있는 다음 버디 힌트에 대한 스케줄러에 제공됩니다. 이러한 힌트/개선된 기능은 여러 작업 그룹에 있는 여러 작업의 작업 부하에 도움이 됩니다.
Red Hat Enterprise Linux 6.2에서는 Transparent Huge Pages가 커널의 여러 부분에서 지원됩니다.
- mremap, mincore, mprotect의 시스템 호출
/proc
조정 가능 매개 변수:/proc/<pid>/smaps
및/proc/vmstat
Red Hat Enterprise Linux 6.2에는 FIPS-140 요구 사항에 적합하도록 XTS (XEX-based Tweaked CodeBook) AES256 자가 테스트를 추가했습니다.
이전에는 SELinux netfilter 후크가 패킷을 드롭하면 NF_DROP
을 반환했습니다. Red Hat Enterprise Linux 6.2에서는 netfilter 후크에서의 드롭은 영구적인 치명적 오류로 표시되고 일시적인 것으로 표시되지 않습니다. 따라서 일부 부분에서 오류가 스택까지 반환되며 응용 프로그램은 잘못된 처리에 대해 신속한 상호 작용을 가능하게 합니다.
Red Hat Enterprise Linux 6.2에서 remount 마운트 옵션 (mount -o remount
)은 새로운 LSM 후크에 전달됩니다.
Red Hat Enterprise Linux 6.0 및 6.1에서는 물리적 주소 모드에서 실행중인 UEFI 시스템이 디폴트 설정되어 있었습니다. Red Hat Enterprise Linux 6.2에서는 가상 주소 모드에서 실행중인 UEFI 시스템이 디폴트 설정되어 있습니다. 이전 동작은 physefi
커널 매개 변수를 전달하여 얻을 수 있습니다.
Red Hat Enterprise Linux 6에서 SSH를 통해 코어를 kdump하기 위한 디폴트 core_collector
방법은 scp
에서 makedumpfile
로 변경되어 네트워크 링크를 통해 복사할 때 코어 파일의 크기를 축소하는데 도움이 되므로 빠른 복사가 가능합니다.
/etc/kdump.conf
파일에서 다음을 지정합니다:
core_collector /usr/bin/scp