Computer >> 컴퓨터 >  >> 문제 해결 >> 컴퓨터 유지 보수

리눅스 커널을 자주 업데이트해야 하는 5가지 이유

Ubuntu나 Fedora 같은 리눅스 배포판을 사용하고 있다면, 그 배포판을 '리눅스'답게 만들어 주는 핵심인 리눅스 커널 역시 함께 사용하고 있는 셈입니다. 윈도우에도 운영체제가 사용하는 자체 커널이 있지만, 리눅스는 모듈성이 뛰어나기 때문에 커널이 더 자주 화두에 오르며, 커널로 할 수 있는 일도 훨씬 많습니다. 예를 들어 커널에 각종 수정 사항을 패치하고 설정을 조정하며 불필요한 부분을 제거한 뒤, 완성된 결과물로 기존 커널을 통째로 교체해도 정상적으로 작동합니다(제대로 작업했다면 말이죠). 부품을 문제없이 다른 것으로 바꿔 끼울 수 있다는 점이야말로 리눅스가 위대한 이유입니다.


그런데 배포판은 끊임없이 커널 업데이트를 권장합니다. 지금까지 잘 돌아가고 있었는데 굳이 업데이트할 필요가 있을까요? 그 이유를 하나씩 살펴보겠습니다.


1. 보안 취약점 수정

리눅스 커널을 자주 업데이트해야 하는 5가지 이유

사실상 모든 커널 업데이트에는 발견된 보안 허점을 막는 수정 사항이 포함되어 있습니다. 이것이 아마 커널을 업데이트해야 하는 가장 중요한 이유일 것입니다. 패치가 적용된 커널을 사용하는 것이 항상 더 안전하기 때문입니다. 해커가 커널에 침입하는 데 성공하면 심각한 피해가 발생하거나 시스템이 그대로 멎어버릴 수 있습니다. 최신 커널을 유지하면 이런 불행한 상황은 충분히 예방할 수 있습니다.


2. 안정성 향상

리눅스 커널을 자주 업데이트해야 하는 5가지 이유

커널 업데이트는 보안 수정뿐 아니라 일상적인 사용 중 시스템 충돌을 일으킬 수 있는 여러 문제도 함께 해결해 줍니다. 어떤 사람들은 커널을 계속 업데이트하면 오히려 전반적인 시스템 안정성이 떨어진다고 주장합니다. 한 번도 사용해 본 적 없는 커널 위에서 시스템이 돌아가는 것이므로, 기존 커널만큼 잘 작동한다고 장담할 수 없다는 논리입니다. 물론 어느 정도 일리가 있지만 그 차이는 미미하며, 서버나 그 밖의 중요한 시스템을 운영하는 사람들만 신중하게 접근하면 됩니다. 대부분의 일반 사용자에게는 커널 업데이트의 이점이 이러한 우려를 훨씬 웃돌습니다.


3. 업데이트된 드라이버

리눅스 커널을 자주 업데이트해야 하는 5가지 이유

앞서 언급한 내용은 마이너 업데이트(예: 3.2.0 → 3.2.1)에서 얻을 수 있는 것들이었다면, 이번에는 메이저 업데이트(3.2 → 3.3 같은)에서 흔히 볼 수 있는 개선 사항을 살펴보겠습니다. 첫째, 모든 메이저 커널 업데이트에는 여러분의 모든 장치를 위한 최신 오픈소스 드라이버가 반드시 포함됩니다. 업데이트되는 드라이버 가운데 가장 체감되는 것은 아마 그래픽 드라이버일 텐데, 업데이트 때마다 성능이 조금씩 향상되기 때문입니다. 언제든 독점(proprietary) 드라이버를 선택할 수도 있지만, 오픈소스 드라이버가 꾸준히 발전하고 있다는 사실 또한 반가운 소식입니다.


4. 새로운 커널 함수

때때로 리눅스 커널의 메이저 업데이트는 새로운 함수(function)도 함께 제공합니다. 이러한 함수는 프로그램이 특정 작업이나 연산을 수행할 때 활용할 수 있는 커널의 구성 요소입니다. 또한 기존 함수가 변경되거나 개선되기도 합니다. 이런 이유만으로 커널을 업데이트하지 않는다고 시스템이 당장 망가지지는 않지만, 조만간 특정 커널 버전을 요구하는 프로그램이나 패키지를 만나게 됩니다. 최신 버전을 유지해 두면 이런 문제를 겪지 않을 것이라 확신할 수 있습니다.


5. 속도 향상

리눅스 커널을 자주 업데이트해야 하는 5가지 이유

마지막으로, 많은 메이저 커널 업데이트는 시스템 전반의 속도를 개선합니다. 어떤 변화는 매우 미묘하지만, 그렇지 않은 경우도 있습니다. 리눅스 머신의 전반적인 처리 성능을 상당히 끌어올린 것으로 유명한 '200줄 패치'가 대표적인 예입니다. CPU 코어 0개로 리눅스를 구동할 수 있게 한 실험적인 패치처럼 파격적인 변화도 있었죠. 속도에 민감한 분이라면(구글 크롬 사용자 중 많은 분들이 그렇듯이), 커널 업데이트는 하드웨어에서 더 많은 성능을 끌어낼 수 있는 좋은 방법입니다.


결론

결국, 가능할 때마다 리눅스 커널을 업데이트하는 것은 그만한 가치가 충분합니다. 일반 사용자 입장에서는 따라오는 이점이 위험보다 훨씬 큽니다. 게다가 배포되는 각 커널은 개발자와 테스트 사용자들이 최소 며칠간 검증하여 문제없이 작동하는지 확인한 후 출시됩니다. 만약 업데이트 후 시스템에 문제가 생기더라도 부팅 메뉴에서 이전 커널을 선택해 시스템에 다시 진입할 수 있습니다. 그다음 문제를 일으킨 커널을 삭제하고, 현재 커널에 머물지 아니면 정상 동작하는 새 업데이트가 나올 때까지 기다릴지 선택하면 됩니다.


여러분만의 리눅스 커널 업데이트 원칙이 있나요? 배포판이 항상 최신 커널을 사용해야 한다고 생각하시나요, 아니면 안정성을 위해 약간 늦게 적용해야 한다고 보시나요? 릴리스 기간 중 메이저 커널 업데이트(Fedora처럼, 혹은 과거의 Fedora처럼)가 있어야 할까요, 아니면 마이너 업데이트(Ubuntu처럼)만 있어야 할까요? 댓글로 의견을 나눠주세요!


더 자세한 내용이 궁금하다면 리눅스 커널 소개 글도 확인해 보세요.


이미지 출처: maistora, Human hand put last stone at the pyramid via Shutterstock, Forrestal_PL, Express Monorail