22.4. 실시간 패치 커널 프로세스
kpatch
커널 패치 솔루션은 라이브 패치
커널 하위 시스템을 사용하여 오래된 기능을 업데이트된 함수로 리디렉션합니다. 시스템에 실시간 커널 패치를 적용하면 다음 프로세스가 트리거됩니다.
-
커널 패치 모듈은
/var/lib/kpatch/
디렉터리에 복사되고 다음 부팅 시systemd
를 통해 커널에 다시 애플리케이션하기 위해 등록됩니다. -
kpatch
모듈은 실행 중인 커널에 로드되고 새 기능은 새 코드 메모리의 위치에 대한 포인터와 함께ftrace
메커니즘에 등록됩니다.
커널이 패치된 함수에 액세스하면 ftrace
메커니즘이 이를 리디렉션하여 원래 기능을 우회하고 커널을 패치된 함수 버전으로 안내합니다.
그림 22.1. 커널 실시간 패치 작동 방식
