커널버전 및 OS 버전 확인
uname -r
cat /proc/version
OS 패키지 업데이트
yum update
리눅스 커널 다운로드
다운로드 후 복사 또는 wget 사용
압축파일은 /var 폴더에 옮겨 놓을 것
압축해제
cd /var
tar xvf linux-4.8.14.tar.xz
심볼릭 링크
cd /usr/src/
ln -s /var/linux-4.8.14 linux
컴파일
cd /usr/src/linux
make mrproper
make clean (커널 컴파일에 필요하지 않은 소스파일 정리)
현재 리눅스의 커널 설정파일을 이용해 4.8.14버전의 컴파일할 소스파일 복사
cp /boot/config-‘uname -r’ ./.config
(`uname -r`은 키보드에 숫자 1번 옆에 있는 특수문자)
신규 커널 정보 설정을 위한 툴 실행
make menuconfig
만약에 기존 커널 설정 정보를 그대로 가져가고 싶다면 아래 명령어만 실행하고 커널 컴파일 단계로 넘어간다.
make oldconfig
menuconfig 화면
- 주의: 체크는 "스페이스바"를 사용하고 적용은 "엔터"를 사용한다. 스페이스바를 잘 못 눌러서 변경하지 않아도 될 것을 수정하는 일이 없도록 할 것
General setup 설정
Enable deprecated sysfs features to support old userspace tools (NEW) 선택
해당 설정을 저장하기 위해 <Save>로 저장 하고 (100%) 가 된 것을 확인 후 Exit
커널 컴파일
make all (20~40분 가량 소요)
커널 설치 ( /boot 에 파일 생성 및 신규 커널 정보를 grub.conf file 파일에 추가)
make modules_install
make install
커널 적용을 위한 default 부팅 값 수정
vi /boot/grub/grub.conf
4.8.14 버전이 첫번째 라인에 있으므로 0번이기때문에 default=0 으로 설정
리눅스 재시작 후 커널 버전 확인
reboot
uname -r
신규 커널로 부팅이 되지 않을 경우 이전 커널로 재부팅 하는 방법
리눅스 재시작 후 영문자 E 버튼을 눌러 문제가 없던 이전 커널로 부팅 후
문제가 되는 부분 수정하여 적용하면 된다.
menuconfig 에서 실수로 gzip 관련 support를 하지 않도록 하고 컴파일 하여 kernel panic 발생하였음.
menuconfig 에서 gzip support 를 추가하고 다시 컴파일하여 해결하였음
참고:
커널업데이트
- https://howtos4linux.wordpress.com/tag/how-to-install-latest-linux-kernel/