강좌
클라우드/리눅스에 관한 강좌입니다.
자격증 분류

리눅스마스터1급 : 커널 컴파일 및 설치

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: 커널 컴파일 및 설치

 





1) 의의 및 방식

 

리눅스는 다른 운영체제와는 달리 커널을 직접 컴파일할 수 있어 가장 적합한 상태로 만들어 사용할 수 있다.

 

 

 

이런 점에서, 커널 컴파일 및 설치는 관리자는 현재 관리하고 운용하고 있는 리눅스 서버의 커널을 최적화하여 서버자원(CPU, 메모리, 하드 디스크 등) 낭비를 최소화하고 서버 성능을 향상시키면서 서버의 안정성을 추구하기 위한 것이다.

 

 

 

 

서버 관리자의 임무 가운데 주된 것은 시스템의 안정성, 성능 및 보안이 최적화되도록 유지관리하는 것이다.

 

 

 

따라서 서버 관리자는 어떻게 하면 서버를 더욱 안정되고 뛰어난 성능을 가진 보안성이 보장된 서버로 운용할 것인지를 고민해야 한다.

 

 

 

이런 이유에서 리눅스 서버 관리자는 커널 컴파일 및 설치를 한다.

 

 

 

이러한 커널 컴파일 및 설치의 필요성을 세부적으로 살펴보면 다음과 같다.

 

 

 

 

 

리눅스 커널에 보안 취약점이 있다면 이를 보완하거나 업그레이드해야 할 것이고, 버그, 개발 버전의 드라이버 사용 등 현재 커널의 문제점으로 인하여 시스템이 불안정하게 운영되고 있다면 이를 조치해야 할 것이다.

 

 

 

그리고 현재 시스템에 장치를 추가로 장착하여 이를 커널에서 지원해야 하는 경우도 있을 것이다.

 

 

 

또한 시스템 다운이나 커널 패닉 등으로 인하여 시스템이 부팅되지 않는 시스템 장애에 대비하여 시스템 부팅이 가능한 예비 커널을 만들어 두어야 하는 경우도 있다.

 

 

 

 

그리고 시스템의 성능향상을 위해 커널 컴파일이 필요한 경우도 있다.

 

 

 

커널 크기를 최소화한다면 시스템 메모리에 상주해 있는 커널의 메모리 소비율로 줄일 수 있을 것이다.

 

 

 

따라서 이것이 시스템의 성능향상에 크게 기여하게 될 것이다.

 

 

 

 

리눅스에서 커널을 설치하는 방법은 리눅스 배포판 제공자나 제3자가 컴파일하여 제공하는 패키지 형태의 커널을 설치하는 방법과 커널의 소스코드를 직접 컴파일하여 설치하는 방법이 있다.

 

 

 

그렇지만 전자의 경우는 시스템의 안정성이나 보안 문제를 비교적 쉽게 해결할 수 있다는 것 외에 커널의 최적화에 적합한 방법은 아니다.

 

 

 

오히려 후자의 경우에 시스템 관리자가 서버 시스템에 최적화된 설정으로 또는 소스코드의 특정 부분을 목적에 맞게 직접 수정하여 커널을 컴파일하고 설치할 수 있다.

 

 

 

 

그런데 커널 컴파일은 체계화되고 정형화된 작업 절차가 있으므로 작업의 전체 흐름을 파악할 필요가 있다.

 

 

 

다음은 커널 컴파일 작업의 순서를 기술한 것이다.

 

 

 

사람마다 약간씩 순서가 다를 수는 있지만, 기본적인 순서는 같다.

 

 

 

 

1 단계 : 시스템 데이터 및 중요 파일들 모두 백업하기

 

2 단계 : 커널 컴파일 작업 위치로 이동하기(/usr/src)

 

3 단계 : 컴파일 할 리눅스 커널 소스코드 가져오기

 

4 단계 : 커널 소스코드 압축 해제하기

 

5 단계 : 커널 컴파일을 위한 작업장 청소 작업(make mrproper)

 

6 단계 : 커널 컴파일 옵션 설정 작업(make menuconfig)

 

7 단계 : 커널 이미지 파일 생성을 위한 컴파일 작업(make bzImage)

 

8 단계 : 커널 모듈 생성을 위한 컴파일(make modules)

 

9 단계 : 커널 모듈 파일 설치하기(make modules_install)

 

10 단계 : 커널 모듈 파일 및 관련 파일 복사, grub.conf 파일 수정(make install)

 

11 단계 : 재부팅(새 커널 부팅 테스트)

 

12 단계 : 새로운 커널 버전 확인 및 시스템 서비스 확인

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,035 명
  • 현재 강좌수 :  35,798 개
  • 현재 접속자 :  136 명