웹사이트 검색

데비안에서 커널을 설치하고 컴파일하는 방법


Linux 사용의 가장 큰 장점 중 하나는 쉬운 맞춤설정이며, 가장 재미있는 맞춤설정 기능 중 하나는 Linux 운영 체제의 핵심인 커널 자체입니다.

자신만의 커널을 컴파일할 필요가 전혀 없을 가능성이 높습니다. 일반적으로 패키지 관리 시스템을 통해 배포 및 업데이트와 함께 제공되는 것만으로도 충분하지만 커널을 다시 컴파일해야 하는 경우도 있습니다.

이러한 이유 중 일부는 특별한 하드웨어 요구, 모듈화된 커널 대신 모놀리식 커널을 생성하려는 욕구, 쓸모 없는 드라이버를 제거하여 커널을 최적화하려는 욕구, 개발 커널 실행 또는 단순히 Linux에 대해 더 많이 배우는 것일 수 있습니다.

이 경우, 우리는 그래픽 카드용 새 드라이버와 같은 몇 가지 새로운 기능을 포함하고 파일 시스템에 상당한 개선을 제공하는 Debian 시스템에서 새로 출시된 커널을 컴파일할 것입니다.

데비안에서 커널을 컴파일하는 방법

시작하려면 빌드 필수커널 헤더라는 패키지가 필요합니다.

sudo apt update
sudo apt install build-essential linux-headers-$(uname -r)

이제 공식 커널 웹사이트를 방문하여 원하는 커널 버전을 다운로드하세요. 또는 다음 명령을 사용하여 소스를 직접 다운로드할 수 있습니다.

wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.7.tar.xz
tar -xvf linux-6.7.tar.xz
cd linux-6.7/

이제 커널을 구성해야 합니다. 현재 사용 중인 구성으로 시작하여 이를 기반으로 구축하는 것이 좋습니다. 이를 달성하기 위해 /boot 디렉토리의 기존 구성을 현재 작업 디렉토리에 복사하고 .config로 저장합니다.

cp /boot/config-`uname -r` .config

실제 구성 프로세스를 시작하려면 두 가지 옵션 중 하나가 있습니다.

  1. X11이 설치되어 있는 경우 make xconfig를 실행할 수 있으며 커널 구성에 도움이 되는 멋진 GUI 메뉴가 있습니다. .
  2. CLI 환경에서 실행 중인 경우 make menuconfig를 실행할 수 있지만 이를 사용하려면 libncurses5-dev 패키지가 설치되어 있어야 합니다.

CLI 환경을 사용하는 경우 libncurses5-dev 패키지를 설치하여 그림과 같이 커널 구성 프로세스를 시작하십시오.

apt install libncurses5-dev
make menuconfig

보시다시피, 선택한 구성에 들어가면 커널에 사용할 수 있는 다양한 옵션이 있습니다. 실제로 이 튜토리얼의 범위에 비해 너무 많은 내용이 있습니다.

커널 옵션을 선택할 때 가장 좋은 방법은 시행착오를 거치면서 인터넷 검색을 많이 하는 것입니다. 이것이 가장 좋은 학습 방법입니다. 단순히 커널을 최신 버전으로 업데이트하려는 경우 아무것도 변경할 필요 없이 '구성 저장'을 선택하기만 하면 됩니다. 현재 커널의 구성 파일을 새 커널의 .config 파일에 복사했기 때문입니다.

'로드 가능한 모듈 지원'에서 '커널 모듈 로더'가 선택되어 있다는 점에 유의하세요. 그렇지 않고 커널 모듈을 사용하고 있다면 상황이 심각하게 엉망이 될 수 있습니다.

이제 커널을 컴파일하고, 모듈을 설치하고, 필요한 파일을 부팅 디렉터리에 복사하는 다음 명령을 사용하여 커널 컴파일 프로세스를 시작합니다.

make
make modules_install
make install

설치한 후 재부팅하고 GRUB 메뉴에서 새 커널을 선택하면 됩니다.

문제를 해결할 수 있도록 부팅 프로세스 중에 오류 메시지를 주의 깊게 살펴보세요.

Debian에서 새 커널 버전을 확인하려면 터미널에서 다음 명령을 사용하면 됩니다.

uname -r

설치된 커널 목록을 보려면 /boot 디렉터리의 내용을 확인하세요.

ls /boot

데비안에서 오래된 커널 제거

Debian에서 이전 커널을 제거하려면 먼저 설치된 커널을 나열하여 dpkg 명령을 사용하여 제거하려는 커널을 식별해야 합니다.

dpkg --list | grep linux-image

이전 커널을 제거하려면 다음 apt 명령을 사용하고 linux-image-OLD_VERSION을 제거하려는 커널의 버전 번호로 바꾸십시오.

sudo apt purge linux-image-OLD_VERSION

이전 커널을 제거한 후 GRUB를 업데이트하여 변경 사항을 반영하세요.

update-grub

결론적으로, Debian에서 커널을 컴파일하는 것은 사용자가 최신 기능과 최적화를 통합하여 특정 요구에 맞게 운영 체제를 맞춤화할 수 있게 해주는 귀중한 기술입니다.