리눅스 kexec

1 개요[ | ]

리눅스 kexec
  • "kernel execution → 커널 실행"
  • 현재 돌아가는 커널에서 새로운 커널을 부팅하게 해주는 리눅스 커널의 메커니즘
  • 기본적으로 kexec는 부트로더 단계와 하드웨어 초기화 단계를 건너뛰며 직접적으로 새로운 커널을 메인 메모리에 로드하고 즉시 실행한다.
  • 이것은 전체 리부팅과 관련된 긴 시간을 피하고 다운타임을 최소화 시킴으로써 시스템이 높은 가용성을 충족하게 한다.
  • 실현 가능케하기 위해 kexec는 다음의 두 가지 메커니즘을 구현해야 한다.
    • 현재 진행 중인 커널의 메모리를 작동 중에 새로운 커널로 덮어쓴다.
    • 새로운 커널은 일반적으로 모든 하드웨어 장치들이 잘 정의된 상태라고 가정한다. 실제 리부팅을 우회하는 것은 장치들을 알려지지 않은 상태로 남기며 새로운 커널은 이 상태에서 회복되어야 한다.
  • 서명된 커널만 kexec로 부팅 가능하게 하는 것이 리눅스 커널의 3.17부터 추가되었다.
루트 사용자가 임의의 코드를 kexec를 통해 로드하여 실행하는 것을 막는다.
서명된 리눅스 커널 모듈만 실행 중인 커널에 삽입될 수 있다.

2 같이 보기[ | ]

3 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}