e.t.c/Linux

[Ubuntu] Linux Kernel 컴파일 및 설치

tavris 2018. 7. 12. 15:22

Ubuntu 16.04 Kernel 컴파일 및 설치



 Ubuntu에서는 apt-get을 사용하면 새로운 Kernel을 자동으로 설치해 준다.

그러나 가끔 Kernel을 수정해야 할 일이 있을 때는 직접 Linux Kernel을 컴파일해야 한다.



1. 현재 Linux의 커널 버전을 확인한다.

$ uname -r


2. 패키지 업데이트 및 필요 패키지를 설치한다.

$ apt-get update && apt-get upgrade

$ apt-get install -y build-essential libncurses5-dev gcc libssl-dev grub2 bc


3. 설치하고자 하는 Kernel 소스를 다운 받는다.

$ sudo apt-get install linux-source-[Kernel 버전]

    ※ 압축 해제 및 폴더 이동은 이후에도 생략하도록 한다.


4. 설정 파일을 복사하고 설정한다.

$ cp /boot/config-[Kernel 버전] ./.config

$ vim .config

    ※ 수정할 설정 부분을 수정한 후 저장하고 종료한다.

$ make oldconfig

$ make menuconfig


5. 컴파일을 한다.

$ make deb-pkg -j [원하는 프로세스 개수] LOCALVERSION=[사용자 구분 단어]

   ※ -j 옵션은 컴파일 시, CPU 프로세스의 개수를 지정하여 컴파일 속도를 빠르게 한다.

              deb-pkg 옵션은 컴파일 후, deb 파일로 결과를 내보낸다.

              LOCALVERSION 옵션은 컴파일 후, 컴파일 된 커널의 TAG를 지정한다.


6. deb 파일을 설치한다.

$ dpkg -i linux-*.deb

   ※ 위 명령어 대신 개별 설치하고자 할 때는 아래 명령어를 사용해도 된다.

$ dpkg -i linux-firmware-image-x.xx.x-*

$ dpkg -i linux-libc-dev_x.xx.x-*

$ dpkg -i linux-headers-x.xx.x-*

$ dpkg -i linux-image-x.xx.x-*


7. GRUB 파일을 수정한다.

$ vim /etc/default/grub

  "GRUB_HIDDEN'과 'GRUB_CMDLINE_LINUX_DEFAULT'를 '#'을 이용하여 주석처리한다.

$ update-grub


8. 운영체제를 재부팅 한다.

$ reboot




 일반적으로 사용할 일을 없지만 가끔 사용할 때가 있어 저장을 위해 올려 놓는다.

스샷은.. 나중에...