IT 기술 문서

2025.02.01 17:34

CentOS 7 유용한 명령어 시리즈 - ⑰ 커널 및 부팅 관리

  • it2033 4일 전 2025.02.01 17:34
  • 5
    0

alt text


CentOS 7에서 커널 및 부팅 관련 작업은 시스템의 안정성과 성능을 유지하는 데 중요한 역할을 합니다. 커널 업데이트, GRUB 부트로더 관리, 부팅 로그 확인 및 트러블슈팅 명령어들을 정리하겠습니다.


1. 커널 정보 확인

1.1. 현재 사용 중인 커널 버전 확인

uname -r
  • 현재 실행 중인 커널 버전을 출력합니다.

출력 예시:

3.10.0-1160.81.1.el7.x86_64

1.2. 전체 커널 정보 확인

uname -a
  • 커널 버전, OS 정보, 프로세서 유형 등을 확인합니다.

출력 예시:

Linux centos7-server 3.10.0-1160.81.1.el7.x86_64 #1 SMP Tue Nov 9 14:02:12 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

1.3. 설치된 커널 목록 확인

rpm -q kernel
  • 시스템에 설치된 모든 커널 목록을 확인합니다.

출력 예시:

kernel-3.10.0-1127.el7.x86_64
kernel-3.10.0-1160.81.1.el7.x86_64

2. 커널 업데이트 및 관리

2.1. 현재 커널 패키지 업데이트 확인

yum list kernel
  • 최신 커널 버전이 있는지 확인합니다.

2.2. 최신 커널 설치

yum install kernel -y
  • 최신 커널을 다운로드하고 설치합니다.

2.3. 커널 업데이트 후 재부팅

reboot
  • 커널을 업데이트한 후 반드시 재부팅해야 적용됩니다.

2.4. 이전 커널 삭제

yum remove kernel-3.10.0-1127.el7.x86_64
  • 오래된 커널을 삭제하여 디스크 공간을 절약할 수 있습니다.

2.5. 특정 커널 버전 부팅 설정

grub2-set-default 1
grub2-mkconfig -o /boot/grub2/grub.cfg
  • 1번 인덱스의 커널로 부팅을 설정합니다.

2.6. 다음 부팅에서 특정 커널 사용

grubby --set-default /boot/vmlinuz-3.10.0-1160.81.1.el7.x86_64
  • 다음 부팅 시 특정 커널을 사용하도록 설정합니다.


3. GRUB 부트로더 관리

3.1. 현재 GRUB 설정 확인

cat /etc/default/grub
  • GRUB 설정 파일을 확인합니다.

3.2. GRUB 부트 메뉴 업데이트

grub2-mkconfig -o /boot/grub2/grub.cfg
  • 새로운 커널 설치 후 GRUB 메뉴를 업데이트해야 합니다.

3.3. GRUB 부트 순서 확인

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
  • 부팅 가능한 커널 목록을 확인할 수 있습니다.

출력 예시:

0 : CentOS Linux (3.10.0-1160.81.1.el7.x86_64)
1 : CentOS Linux (3.10.0-1127.el7.x86_64)

3.4. 특정 커널을 기본 부팅으로 설정

grub2-set-default 0
  • 위 출력에서 0번 인덱스를 기본 부팅으로 설정합니다.


4. 시스템 부팅 로그 확인

4.1. 마지막 부팅 로그 확인

journalctl -b
  • 시스템 부팅 후 발생한 로그를 확인합니다.

4.2. 이전 부팅 로그 확인

journalctl --list-boots
journalctl -b -1
  • -1을 사용하여 이전 부팅 로그를 확인할 수 있습니다.

4.3. 특정 시간대의 부팅 로그 확인

journalctl --since "2024-01-30 08:00:00" --until "2024-01-30 10:00:00"
  • 특정 시간 동안의 시스템 로그를 확인할 수 있습니다.

4.4. 부팅 오류 확인

journalctl -b -p 3
  • -p 3 옵션을 사용하여 부팅 중 발생한 심각한 오류(critical) 로그만 출력합니다.

출력 예시:

Jan 30 08:05:12 centos7-server kernel: Failed to mount /boot

5. 긴급 모드 및 복구 모드 부팅

5.1. 긴급 모드 (Emergency Mode) 부팅

  1. 부팅 시 GRUB 메뉴에서 원하는 커널을 선택하고 e 키를 누릅니다.

  2. ro(읽기 전용) 부분을 rw로 변경 후 systemd.unit=emergency.target 추가

  3. Ctrl + X 또는 F10을 눌러 긴급 모드로 부팅

5.2. 복구 모드 (Rescue Mode) 부팅

  1. 부팅 시 GRUB 메뉴에서 원하는 커널을 선택하고 e 키를 누릅니다.

  2. 커널 옵션 끝에 systemd.unit=rescue.target 추가

  3. Ctrl + X 또는 F10을 눌러 복구 모드로 부팅


6. 시스템 종료 및 재부팅

6.1. 즉시 시스템 종료

shutdown -h now
  • 현재 시스템을 즉시 종료합니다.

6.2. 특정 시간 후 시스템 종료

shutdown -h +10 "10분 후 시스템 종료됩니다."
  • 10분 후에 시스템을 종료하고 모든 사용자에게 메시지를 보냅니다.

6.3. 즉시 재부팅

reboot
  • 즉시 시스템을 재부팅합니다.

6.4. 일정 시간 후 재부팅

shutdown -r +5
  • 5분 후에 시스템을 재부팅합니다.


정리

명령어

설명

uname -r

현재 커널 버전 확인

rpm -q kernel

설치된 커널 목록 확인

yum install kernel -y

최신 커널 설치

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

GRUB 설정 업데이트

grub2-set-default 1

특정 커널을 기본 부팅으로 설정

journalctl -b

현재 부팅 로그 확인

journalctl --list-boots

이전 부팅 기록 확인

journalctl -b -1

이전 부팅 로그 확인

shutdown -h now

즉시 시스템 종료

reboot

즉시 시스템 재부팅


이번 시리즈에서는 CentOS 7의 커널 및 부팅 관리 명령어를 정리했습니다.

지금까지 CentOS 7에서 가장 많이 사용되는 명령어 시리즈를 마무리했습니다.

  • 공유링크 복사