강제 재시작이란 무엇입니까?

강제 재시작이란 무엇입니까?

저는 Ubuntu Linux를 때때로, 이전보다 더 자주 재부팅해야 한다는 사실을 발견했습니다(아마 최신 버전이기 때문일 수도 있습니다).

커널을 업데이트하면 재부팅이 강제되는 것으로 알고 있는데, 재부팅하지 않고도 커널을 업데이트하는 것이 편리하고 기술적으로 가능하며 복잡한가요?

시스템이 실행되는 동안 업데이트하는 것이 기술적으로 불가능한가요?

"이제 유지 관리를 위해 시스템이 다운됩니다..."

BIOS 업데이트로 인해 재부팅이 강제된다는 것은 알고 있지만 이것이 왜 꼭 필요한지, 편의를 위한 것인지, 업데이트를 더 쉽게 하기 위한 것인지 이해가 되지 않습니다.

하나 읽어보세요유제, 설득력 있는 답변이 없습니다.

교체해야 할 바이너리를 실행하고 있다고 생각합니다.

답변1

반드시 재부팅이 필요한 유일한 방법은 커널을 수정하는 것입니다. 프로그램(또는 이에 의존하는 일부 라이브러리나 기타 파일)이 업그레이드되면 모든 프로세스가 종료될 수 있지만 커널의 경우에는 그렇지 않습니다.

실제로 Linux 커널을 메모리에 직접 패치하는 것이 가능한 경우도 있습니다. 최소한 어떤 경우에는 작동하는 몇 가지 도구가 있습니다.ksplice,반점,그래프트… 일부 간단한 경우에는 모두 작동하지만 전부는 아닙니다. 이러한 업데이트는 내부 인터페이스(특히 데이터 구조 형식)를 변경하지 않지만 커널 버전 간 업그레이드에는 적용되지 않기 때문에 일반적으로 보안 업데이트에는 작동합니다. Ubuntu LTS는 livepatch를 사용하여 커널 패치를 지원합니다.16.04부터 4.4 커널 사용독점 고객과 함께.

실행 중인 시스템의 커널에 없는 항목을 업그레이드하는 것이 가능하더라도 영향을 받는 프로세스는 여전히 다시 시작해야 합니다. 서버에서 이는 업데이트된 실행 파일, 라이브러리, 플러그인, 데이터 파일, 구성 또는 기타 종속성을 사용하는 서버를 다시 시작하는 것을 의미합니다. 데스크탑에서는 이는 사용자가 로그아웃했다가 다시 로그인해야 함을 의미할 수 있습니다(예: 그래픽 드라이버의 버그인 경우). 다시 시작해야 할 대상을 정확하게 결정하는 것은 버그 수정의 정확한 성격과 프로그램 사용 방법에 따라 다르기 때문에 어려울 수 있습니다. Ubuntu는 이를 정확하게 결정하기 위해 많은 작업을 수행하지 않았지만 대신 주의를 기울이는 실수를 했으며 서비스를 다시 시작하는 것이 너무 지루하다고 생각하는 패키지에서 다시 시작할 것을 권장합니다. 작동 방식은 패키지의 설치 후(이 경우 업그레이드 후) 스크립트에서 재부팅이 필요하다고 명시하면 재부팅하라는 메시지가 표시된다는 것입니다(참조:시스템을 다시 시작해야 하는 패키지를 어떻게 알 수 있나요?).

답변2

내가 아는 한 계속 사용할 수 있습니다.오래된업그레이드된 시스템이지만 일반적으로 업그레이드된 시스템을 경험하려면 다시 시작해야 합니다.
한 가지 예외가 있는데, 제 기억이 맞다면KS 커넥터이 기술을 사용하면 시스템을 재부팅하지 않고도 실행 중인 커널에 보안 패치를 적용할 수 있습니다.

관련 정보