리눅스 커널 컴파일
리눅스 커널을 만드는 과정(3단계)
1. 커널 구성(Kernel configuration)
2. 커널 컴파일(Kernel compile)
3. 커널 인스톨(Kernel installation)
1. 커널 구성(Kernel configuration)
- 커널 구성이란 새로 만들어질 리눅스 커널에게 현재 시스템에 존재하는 하드웨어 특성, 커널 구성 요소, 네트워크 특성 등의
정보를 알려주는 과정
- 시스템 하드웨어 정보들에 대한 사전 지식이 필요
- 수행 방법
make config
make menuconfig
make xconfig 등의 방법이 있음
2. 커널 컴파일(Kernel compile)
- 커널 소스 파일을 이용해 실행 가능한 커널을 만드는 과정
- "make bzImage"나 "make zImage" 등의 명령으로 생성될 수 있다. (bzImage와 zImage는 커널 이미지 크기만 차이가 있을 뿐 커널 자체는 동일)
- 커널 2.6 버전 이후 부터는 "make"만 타이핑 해도 됨
3. 커널 인스톨(Kernel installation)
- 생성된 커널로 시스템이 부팅될 수 있도록 만드는 과정
- 커널 인스톨은 생성된 커널 이미지를 루트 파일시스템으로 복사, 모듈 인스톨, 그리고 부트로더(grub) 수정 등의 과정으로 이루어짐
리눅스 커널 컴파일 수행
* root 계정에서 수행 해야한다.
커널 컴파일을 위한 패키지 설치
현재 커널 버전 확인
$ uname -r
커널 소스 다운로드
커널 소스는 http://kernel.org 에서 다운로드 가능
저 하이퍼링크 마우스 오른쪽을 누른후 링크 copy후
# wget [링크 주소] 를 입력하면 다운로드를 받게된다.
tar.xz로 다운 받았으므로
# tar xvf linux-4.4.5.tar.xz
를 이용하여 다운로드 받은 파일을 압축풀기
(tar.gz일경우 tar xzvf로 풀면됨)
필요 패키지 설치
$ sudo apt-get install build-essential libncurses5 libncurses5-dev bin86 kernel-package -y
Configuration 파일 복사
현재 커널의 configuration 파일을 복사
cp /boot/config-현재커널명 ./.config
$ sudo make menuconfig
Load 를 클릭
OK 후 Save
이후 Exit로 터미널로 빠져나옴
커널 컴파일 (커널 설치 이미지 생성)
$ sudo make-kpkg --initrd --revision=1.0 kernel_image
* 이 명령어 수행시 컴퓨터 상태에 따라 시간이 오래 걸릴 수 있다.
'Study Note > OS' 카테고리의 다른 글
[Linux] root 계정 초기 패스워드 설정 (0) | 2016.03.10 |
---|---|
[Linux] Task 관리 (0) | 2016.03.07 |
[Linux] 리눅스 커널 구조 (0) | 2016.03.07 |
[Linux] Shell Script (0) | 2016.02.15 |
[Linux] Shell & Shell 내장 명령어 (0) | 2016.02.15 |