명령어/Linux

[RHEL] grub2-script-check GRUB 설정 문법 검사

jykim23 2026. 8. 4. 22:59
반응형

부제: grub.cfg를 적용하기 전에 문법 오류부터 잡아내기

grub2-script-check /boot/grub2/grub.cfg      # 문법만 검사(안전), 오류 없으면 조용히 끝남
grub2-script-check -v /boot/grub2/grub.cfg   # 검사하며 내용까지 출력
# grub2-script-check /tmp/good.cfg && echo OK
OK
# grub2-script-check /tmp/bad.cfg          # 닫는 중괄호가 빠진 파일
error: ../grub-core/script/lexer.c:352:syntax error.
Syntax error at line 2

grub2-script-check는 GRUB 설정 파일을 실제로 적용하지 않고 문법만 파싱해서 검사한다. 중괄호가 안 닫혔거나 명령이 잘못된 파일을 부트 설정으로 넣기 전에 걸러내는 용도다. 오류가 없으면 아무것도 출력하지 않고 종료 코드 0으로 끝나고, 문제가 있으면 오류 위치와 함께 1을 반환한다.
grub2-mkconfig로 새 grub.cfg를 만든 뒤 저장 전에 한번 통과시키면 안전하다. 파싱만 하므로 시스템을 건드리지 않아 어디서든 돌려도 된다.

이렇게도 쓴다

현재 부트 설정 파일에 문법 오류가 없는지 확인한다.

grub2-script-check /boot/grub2/grub.cfg && echo "문법 정상"

 

내용을 함께 출력하며 검사한다.

grub2-script-check -v /boot/grub2/grub.cfg

 

새로 생성한 설정을 저장 전에 미리 검사한다(파이프 조합).

grub2-mkconfig 2>/dev/null | grub2-script-check /dev/stdin && echo "생성 결과 문법 OK"

 

종료 코드로 정상 여부만 스크립트에서 판단한다(조건 조합).

if grub2-script-check /boot/grub2/grub.cfg; then echo pass; else echo FAIL; fi

 

EFI 부팅 시스템의 설정 파일을 검사한다.

grub2-script-check /boot/efi/EFI/rocky/grub.cfg
반응형