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

리눅스 커널을 직접 컴파일해야 하는 3가지 이유

리눅스 시스템은 그야말로 믿기 힘들 만큼 유연하고 설정의 자유도가 높습니다. 리눅스가 이토록 유연한 가장 큰 이유는 바로 모듈화된 구조 덕분입니다. 모든 시스템 구성 요소와 프로그램은 여러 개의 패키지로 세분화되어 있어 쉽게 제거하거나 추가하거나 다른 것으로 교체할 수 있습니다. 운영체제의 어떤 부분도 이 규칙에서 예외가 아니며, 놀랍게도 리눅스 커널 자체도 마찬가지입니다.

그렇기 때문에 커널을 꺼내어 원하는 작업을 수행한 뒤 다시 끼워 넣는 것도 비교적 간단하게 할 수 있습니다. 그렇다면 커널로 구체적으로 무엇을 할 수 있고, 왜 자신만의 맞춤형 커널을 컴파일해야 할까요?

드라이버 및 기타 구성 요소 패치 또는 교체

리눅스 커널을 직접 컴파일해야 하는 3가지 이유

사람들이 직접 커널을 컴파일하는 가장 흔한 이유 중 하나는 일부 드라이버(및 기타 커널 기능)를 패치하거나 아예 완전히 다른 드라이버나 최신 버전으로 교체해야 하기 때문입니다. 대표적인 예가 WEP 크래킹을 위해 패킷을 캡처할 수 있도록 무선 드라이버에 패치를 적용해야 하는 경우입니다. 해당 글에서 소개된 Backtrack Linux에는 이미 패치된 드라이버가 포함되어 있지만, 그 외의 배포판들은 패치되지 않은 드라이버를 사용합니다.

또한 특정 드라이버, 특히 오픈소스 그래픽 드라이버를 백포트(backport)하기도 합니다. 드라이버를 백포트한다는 것은 최신 커널에 들어 있는 드라이버를 가져와 패치 형태로 구형 커널에 적용하는 것을 의미합니다. 참고로 독점(proprietary) 그래픽 드라이버를 설치하는 경우에도 커널 재컴파일이 필요할 수 있는데, 다행히 이 과정은 보통 자동으로 처리됩니다.

불필요한 코드 제거 및 다양한 컴파일 플래그 활용

리눅스 커널을 직접 컴파일해야 하는 3가지 이유

직접 커널을 컴파일하면 얻을 수 있는 또 다른 큰 장점은 바로 최적화입니다. 커스터마이징이 커널의 일부를 변경하는 데 초점을 맞춘다면, 최적화는 제거할 수 있는 불필요한 요소들과 더 빠른 성능을 내는 최적의 컴파일 플래그 조합을 찾는 데 집중합니다.

예를 들어 노트북에 블루투스 기능이 없고 USB 동글을 구입할 계획도 없다면, 커널에서 블루투스 관련 코드를 모두 제거할 수 있습니다. 같은 논리로 불필요한 드라이버들을 대거 제거하여 디스크 공간과 시스템 리소스를 절약할 수 있습니다. 최종 커널에 포함되지 않은 코드는 로드되지 않기 때문에, 다른 용도로 쓸 수 있는 소중한 자원을 낭비하지 않게 됩니다.

커널에 대해 더 깊이 배우기

리눅스 커널을 직접 컴파일해야 하는 3가지 이유

마지막으로, 직접 커널을 컴파일하면 값진 리눅스 경험을 쌓을 수 있다는 이점이 있습니다. 커널을 전혀 수정하지 않더라도(커스터마이징과 최적화 측면 모두에서) 순수한(vanilla) 리눅스 커널 소스를 내려받아 컴파일하고 자신의 시스템에서 직접 실행해보는 과정은 관심이 있는 사람에게는 그 어떤 것보다 귀중한 학습 경험이 됩니다. 실제로 이것은 커널 개발자들이 매일 수행하는 작업이기도 하므로, 리눅스와 접점이 있는 IT 종사자라면 한 번쯤 도전해볼 만한 단계입니다.

결론

결국 무엇을 할지는 전적으로 사용자의 선택입니다. 대부분의 사용자에게는 사용 중인 배포판에서 제공하는 기본 커널로도 충분하며, 정기적으로 직접 커널을 컴파일하는 사람들은 저마다 특별한 필요나 요구 사항이 있기 때문입니다. 하지만 위에서 언급한 것과 같은 필요가 있거나, 단순히 리눅스의 핵심 깊숙한 곳까지 탐험해보고 싶은 열정이 있다면 직접 커널을 컴파일하는 것은 분명 훌륭한 선택입니다.

여러분은 직접 리눅스 커널을 컴파일해 보셨나요? 그 가치가 충분했다고 생각하시며, 순정/배포판 커널과 비교해 어떤 수정을 적용하셨나요? 댓글로 경험을 공유해 주세요!

이미지 출처: Repairing of modern diesel engine, workers hands and tool via Shutterstock / Recycling truck picking up bin via Shutterstock / Educational theme: funny teen, medicine, science via Shutterstock