본문 바로가기
IT 학습 공간 ::)

리눅스 Centos 7 grub2 부팅 순서 변경하기

by 에스타롯사 2019. 5. 23.

안녕하세요 롯사입니다.

 

이번 시간엔 Centos 7 적용되어 있는 grub2 기반의 커널 순서 변경하는 방법에 대해서 알아보겠습니다.

 

커널 순서 변경해야 하는 경우는 크게 많지 않지만 보안 패치를 하거나 현재 사용하고 있는 커널 버전이

 

취약점이 드러나서 업데이트를 해야 하는 경우 등 간간히 커널을 업데이트하고 업데이트된 커널을 적용

 

해야 하는 경우가 있습니다.

 

그러한 상황을 대비해 미리 확인하고 넘어갑시다.

 

 

 

 

centos 7 에서는 부팅에 관련된 기본적인 설정 파일 경로는 다음과 같습니다.

 

/etc/default/grub 에서 편집하고 수정한 정보를/boot/grub/grub.cfg 파일에 반영함으로써 적용이 되는

 

구조를 가지고 있습니다.

 

grub.cfg 에 반영하는 명령어는 다음과 같습니다.

 

grub2-mkconfig -o /boot/grub2/grub.cfg

 

명령어를 사용하면 grub 파일에 수정된 정보가 grub.cfg 파일에 반영이 되고 적용이 됩니다.

 

기본적인 동작 구조를 이해하고 아래와 같이 진행합시다.

 

 

 

현재 커널 버전 확인


* uname -r ( 커널 버전 확인 )

* cat /proc/version (  " "      )

 

해당 명령어를 이용해서 커널의 버전을 확인합니다.

저는 3.10.0-957.el7.x86_64 버전이 적용되어있습니다.

업데이트된 상위 커널 버전으로 부팅 순서를 변경해보겠습니다.

 

 

 

현재 적용된 부팅 1순위 확인


grub2-editenv list

 

 

해당 명령어를 통해 현재 부팅 1순위를 확인합니다.

 

 

 

 

 

적용 가능 부팅 리스트 확인


* grep ^menuentry /boot/grub2/grub.cfg | cut -d "'" -f2

적용 가능 부팅 리스트를 조회해서 적용하고 싶은 커널 버전을 아래와 같이 선택합니다.

 

 

 

 

 

적용하고 싶은 커널 버전 적용


# grub2-set-default "CentOS Linux (3.10.0-957.12.2.el7.x86_64) 7 (Core)"
( 위에 변경 가능한 커널 조회 후 선택하는 명령어입니다. )

 

저는 3.10.0-957.12.2.el7.x86_64 커널 버전을 적용해보겠습니다.

 

 

 

 

 

시스템 재부팅


* reboot ( 시스템 재부팅 )

* init 6   (        " "        )

 

설정을 변경했다면 시스템을 재부팅합니다.

 

 

 

변경된 커널 버전 확인


grub2-editenv list

* uname -r 

 

기존 커널 버전 3.10.0-957.el7.x86_64 -------> 3.10.0-957.12.2.el7.x86_64 버전으로 변경된 것을 확인할 수 있습니다.

 


 

명령어 구문만 확실하게 알고 있고 변경 가능한 커널 버전이 있으면 부팅 순서 변경은 크게 어렵지 않습니다.

 

변경 가능한 커널 버전은 yum update로 사전 업데이트를 통해 환경을 만들어 놓고 작업을 하시기 바랍니다.

 

이만 포스팅을 마치겠습니다.