728x90

원하는 커널 버전 찾기

 

https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/

 



커널 다운로드

 

$ wget https://mirrors.edge.kernel.org/pub/linux/kernel/vx.x/linux-다운받을 버전

 



커널 디렉토리 위치 변경

 

Ubuntu

$ mv linux-다운받은 버전 /usr/src

Centos

$ mv linux-다운받은 버전 /usr/src/kernel

 



압축 해제

 

$ tar -xvzf linux-다운받은 버전




커널 디렉토리 이동 및 부팅 시 뜨는 커널 명 수정

 

$ cd (압축 해제한 커널 디렉토리)
$ vim Makefile

▪ EXTRAVERSION=버전명 뒤에 붙일 내용
▪ ex) 3.13.0-test로 만들고 싶다면  -test 붙이면 됨




다운로드 받은 커널 파일을 시스템에 적용

 

$ make mrproper
$ make clean

 



현재 커널의 환경설정(config) 파일 복사

 

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

▪ 이때 `uname -r``는 그레이브(탭 위에 있는 걸로, shift 누르면 물결 표시)


$ make menuconfig

▪ Load -> 복사한 config 파일명 확인 ( .config ) -> ok -> Exit -> yes

 



컴파일 시작

 

$ make all

▪ 빠르게 하려면


$ make all -j(코어수)

▪ ex) make all -j4                       ->  -j랑 코어 수는 붙여서 (-j4)


 


컴파일한 커널 이미지 적용

 

$ make modules_install -j4
$ make install -j4

 



/boot 디렉토리 확인


▪ 새로 받아서 적용한 커널 버전 파일 생성 확인


▪ /boot/config-새로운 커널

▪ /boot/initrd.img-새로운 커널

▪ /boot/System.map-새로운 커널

▪ /boot/vmlinuz-새로운 커널




/lib 디렉토리 확인


/lib/modules-새로운 커널

 



새로운 커널 이미지로 부팅

 

$ reboot

▪ 하고 커널 선택

▪ Centos는 바로 목록이 뜨지만

▪ UbuntuAdvanced 모드로 들어가서 선택

728x90

'Linux > 커널&OS' 카테고리의 다른 글

운영체제 및 운영체제 동작 사례  (0) 2018.12.03