커널 4.0 재부팅하지 않고 시스템을 패치하는 방법은 무엇입니까?

커널 4.0 재부팅하지 않고 시스템을 패치하는 방법은 무엇입니까?

Linux 커널 4.0에서 언급된 새로운 기능은 재부팅 없이 업데이트할 수 있는 기능이라는 것을 알았습니다.

  • 이는 응용 프로그램이 실행 중인 상태에서 시스템을 사용할 수 있으며 업데이트가 현재 프로세스의 실행에 영향을 미치지 않는다는 것을 의미합니까?
  • 이것이 어떻게 달성됩니까? 이전 파일을 임시 메모리에 유지하면서 현재 커널의 파일별 복사본입니까?

ksplice(커널 스왑)와 같은가요? 아니면 kGraft/kPatch?

답변1

오픈 소스가 아니기 때문에 Ksplice가 아닙니다. Oracle은 자체 배포를 통해서만 배포합니다.

~에 따르면위키피디아k패치의 경우:

2015년 4월부터 kpatch를 Linux 커널 메인라인에서 제공하는 공통 실시간 패치 코어로 포팅하는 작업이 진행 중입니다. 그러나 적절한 스택 프레임이 없는 어셈블리 코드와 관련된 경우 Linux 커널에서 제공하는 호출 스택이 신뢰할 수 없기 때문에 필요한 기능 수준 일관성 메커니즘의 구현이 지연되었습니다. 따라서 2015년 9월 현재 포팅 작업이 계속 진행 중입니다. 커널 호출 스택의 신뢰성을 향상시키기 위해 전문적인 온전성 검사 stacktool 사용자 공간 유틸리티도 개발되었습니다.

내가 아는 한, kpatch/kgraft는 커널 자체를 업데이트하는 데 사용되지 않고 "백포트" 패치로 패치하는 데 사용됩니다. 즉, 보안 업데이트만 포함된 배포판을 실행 중이거나 커널을 수동으로 업데이트하려는 경우 재부팅하지 않고도 이 도구를 사용하여 업데이트할 수 있습니다. 보세요Red Hat Enterprise Linux 7에서 kpatch 사용동영상

귀하의 질문에 답변하려면:

  • 예!
  • 비슷하지만 커널 기능 수준입니다. 자세한 내용은 위의 동영상을 확인하세요.

관련 정보