Gentoo Linux는 항상 매력적인 배포판이었습니다. 2002년 3월에 처음 출시된 Gentoo는 리눅스 분야에서 꽤 오랫동안 자리를 지켜왔으며, 시간의 시험을 견뎌내고 여전히 훌륭한 지원을 받고 있습니다.
Arch나 대부분의 다른 리눅스 배포판과 달리, Gentoo는 사용자가 모든 패키지를 직접 커스터마이징하고 컴파일해야 하는 소스 기반 배포판입니다. 이는 다소 벅차게 들릴 수 있지만(실제로 어느 정도는 그렇습니다), 시스템에서 최대한의 성능과 최적화를 끌어내기 위해서는 이러한 절충이 필요합니다.
저는 이전에 Arch Linux를 사용해 본 적이 있어서 전체적인 설정 및 설치 과정이 어떻게 진행될지 어느 정도 알고 있었습니다. 적어도 그렇게 생각했죠. 알고 보니 Gentoo는 끔찍하게 복잡하면서도 동시에 아름다울 수 있었고, 사용할수록 그 기묘한 매력을 더 깊이 이해하게 되었습니다.
관련 항목
실제 하드웨어에 Gentoo 설치하기
인내심이 전부입니다
Gentoo를 설치하는 것은 단순히 ISO 파일을 다운로드하는 것처럼 간단하지 않았습니다. 최소한의 라이브 설치 디스크가 있기는 하지만, 복사해서 붙여넣어야 할 명령어가 매우 많기 때문에 일반적으로 권장되지는 않습니다.
저는 브라우저에 접근하고 큰 번거로움 없이 Wi-Fi에 연결하기 위해 KDE 라이브 이미지를 선택했습니다. 그렇다 하더라도 Gentoo는 그 어떤 종류의 빠른 설치 프로그램도 제공하지 않으므로, 모든 단계를 수동으로 진행해야 합니다. 기본적인 KDE 관련 요소 외에, 라이브 ISO에는 “Gentoo 핸드북”으로 연결되는 “유용한” 링크 하나만 포함되어 있습니다.
Gentoo는 Linux Mint와 같은 다른 라이브 미디어를 통해서도 설치할 수 있습니다. 자세한 내용은 핸드북을 참조하십시오.
설치 과정은 어렵다기보다는 지루했습니다. 대부분의 경우, Gentoo는 Arch 사용자에게 익숙하게 느껴질 것입니다. 비록 이곳의 복잡도가 몇 단계 더 높아서 커스텀 커널과 시스템 패키지를 완전히 새로 구성해야 하지만 말입니다.
많은 복사 및 붙여넣기와 어느 정도의 임기응변 끝에, 드디어 Gentoo 기본 시스템을 설치할 준비가 되었습니다. 이것이 설치 과정 중 가장 어려운 부분이었으며, 컴파일을 완료하는 데 시간이 꽤 걸렸습니다.
최근에 추가된 바이너리 저장소가 없었다면 몇 시간은 더 걸렸을 것입니다. 이름에서 알 수 있듯이, 이 저장소는 미리 빌드된 패키지를 다운로드하여 전체 과정을 가속화해 줍니다.
바이너리 방식을 사용하는 것이 Gentoo의 정신에 어긋난다고 주장할 수도 있겠지만, 논란의 여지는 차치하고 바이너리 패키지는 대다수 사용자에게 충분히 유용하며, 모든 것을 처음부터 컴파일할 시간이나 인내심이 있는 사람은 많지 않습니다.
저는 또한 진정한 이단자처럼 SystemD 이미지를 설치했는데, 이는 Arch 기반 설치 환경에서 이미 사용 중인 대부분의 앱과의 호환성을 유지하기 위함이었습니다.
물론 모든 것이 이 바이너리 저장소에 있는 것은 아닙니다. 예를 들어 Steam의 경우, 전체를 직접 컴파일해야 하는 지루한 설치 과정을 거쳐야 했습니다. 그렇긴 하지만, 이제 주요 구성 요소들은 저장소에서 간단히 다운로드할 수 있게 되어 Gentoo는 그 어느 때보다 훨씬 접근하기 쉬워졌습니다.
설치 시간은 호스트 PC의 사양에 따라 크게 달라집니다. 사양이 낮은 PC라면 매우 느린 설치 과정을 각오해야 하며, 그 반대의 경우도 마찬가지입니다.
모든 컴파일이 완료된 후, 마침내 별도의 사용자를 생성하고 사용자와 루트 계정의 비밀번호를 설정했습니다. 재부팅 한 번으로 노트북에서 Gentoo를 실행할 수 있게 되었지만, 커스터마이징은 아직 완료된 것이 아니었습니다.
Arch와 같지만 훨씬 더 많은 커스터마이징
모든 것을 극대화(Min-max)하세요
Gentoo의 가장 큰 장점 중 하나는 군더더기 없는 최소한의 접근 방식 외에도, 해당 시스템에 최적화된 패키지를 사용한다는 점입니다. 모든 CPU가 동일하지 않기에, 저는 이를 반영하기 위해 /etc/portage/make.conf에 빌드 플래그를 수동으로 설정해야 했습니다. Gentoo Wiki는 없어서는 안 될 정보의 원천이며, 이를 주 가이드로 활용하는 것을 강력히 권장합니다.
이 작업의 대부분은 앞서 언급한 make.conf 파일 내의 USE 플래그를 통해 이루어집니다. 여기서부터 흥미로운 점이 시작됩니다.
Gentoo는 필요에 따라 시스템 전체의 패키지에 플래그를 설정할 수 있게 해주므로, Bluetooth, Wi-Fi 액세스 등과 같은 기능을 전역적으로 활성화하거나 비활성화할 수 있습니다.
이는 “불필요한 요소가 없는(bloat-free)” 최소한의 설치를 가능하게 하여 시스템이 가볍게 느껴지게 하고, 상상할 수 있는 모든 의존성을 끌어오지 않도록 합니다.
또한 패키지별 최적화 기능도 있어 성능과 시스템 반응 속도에 상당한 영향을 줍니다.
모든 것이 작동하는 것은 아닙니다
때로는 수동 개입이 필요합니다
물론 모든 것이 완벽하지는 않습니다. Gentoo에는 나름의 문제들이 있으며, 이 모든 것은 독특한 배포 및 빌드 시스템과 관련이 있습니다. 그 결과, 제가 이 노트북에서 사용하는 많은 (인정하건대 니치한) 패키지들이 기본적으로 제공되지 않았습니다.
그 예로 Intel Arc iGPU를 가상 그래픽 장치로 분할하여 각각을 가상 머신에 전달할 수 있게 해주는 i915-sriov-dkms 모듈을 들 수 있습니다. 이는 VM에서 GPU 가속을 작동시키는 아주 좋은 방법입니다. 그런데 이 패키지로 돌아가서, 설치하는 과정은 골칫거리였습니다.
Gentoo 저장소에는 해당 패키지에 대한 바이너리나 ebuild가 없었기 때문에, git clone을 수행하고 그에 맞춰 설치해야 했습니다. 그럼에도 불구하고 설치는 완전히 실패했고, 커널에 DKMS 모듈을 로드할 수 없었습니다.
물론 추가적인 노력을 기울이면 가능할 것이라 확신하지만, 이는 Gentoo에서 반복적으로 발생하는 문제이기도 합니다. 초보자 친화적인 배포판은 결코 아니며, 그렇다고 초보자용인 척하지도 않습니다. 대부분의 사용자에게는 Arch Linux나 CachyOS 같은 배포판이 훨씬 접근하기 쉬우면서도 동일한 수준의 제어권을 유지할 수 있어 더 적합할 것입니다.
또한 Gentoo의 대부분 패키지는 여전히 수동으로 플래그를 설정하고 컴파일해야 한다는 사실도 있습니다. 네, 이제 미리 빌드된 바이너리를 사용할 수 있게 되었지만, 현재로서는 가장 필수적인 요소들로만 제한되어 있습니다. 추가적인 작업은 모두 소스에서 빌드해야 합니다. 아니면 Flatpak을 선택해야 하죠.
다른 어떤 것과도 비교할 수 없는 매력적인 배포판
모든 것을 고려했을 때, 저는 Gentoo에 점점 익숙해지고 있습니다. 이미 제 노트북 중 하나에서 Arch를 대체했으며, 조만간 삭제할 일은 없을 것 같습니다. 시스템을 처음부터 구축하고 패키지와 그 기능에 대해 더 많은 제어권을 가질 수 있다는 아이디어가 매우 마음에 듭니다. 하지만 메인 머신에서는 여전히 Arch Linux를 사용할 것입니다.
##### Gentoo
Gentoo는 성능과 유연성을 무엇보다 우선시하는 리눅스 배포판입니다. 따라서 시스템에서 컴파일된 패키지는 소스 코드에서 빌드되므로 매우 뛰어난 성능을 발휘하는 경향이 있습니다.
