작업 시나리오
본 문서는 Tencent Cloud CVM(Cloud Virtual Machine)에서 GRUB를 통해 커널 매개변수를 추가하는 방법을 설명합니다. GRUB 부트로더를 사용 중이고 커널 매개변수를 수정하거나 추가하려면 GRUB 구성 파일을 편집할 수 있습니다. 아래는 특정 배포판에 대한 GRUB 구성 파일에 커널 부팅 매개변수를 추가하는 방법입니다.
예제 운영 체제
본 문서에서 사용된 CVM 인스턴스 운영 체제는 CentOS 7.9, Ubuntu 24.04, OpenCloudOS 9, TencentOS Server 3.X/TencentOS Server 4.X를 예로 들었습니다.
전제 조건
작업 단계
OpenCloudOS 9 및 TencentOS Server 3.X/TencentOS Server 4.X 시스템은 업계에서 많이 사용되는 grub blscfg 기능을 도입했습니다. 기본 구성은 고정 형식으로 /boot/loader/entries/에 해당하는 엔트리 파일에 기록됩니다. 따라서 일반 구성 파일 /etc/default/grub을 수정하면 특정 버전의 커널 매개변수에 영향을 미칠 수 없습니다. 현재 grubby 도구를 통해 해당 커널 매개변수를 수정해야 합니다.
사용 중인 운영 체제 버전에 따라 다음 작업 단계를 수행합니다.
2. 커널 부팅 매개변수 추가.
TencentOS Server 3.X/TencentOS Server 4.X
1. 다음 명령어를 실행하여 /etc/default/grub 파일을 편집합니다.
2. i를 눌러 편집 모드로 전환하고 GRUB_CMDLINE_LINUX 행을 찾은 후, GRUB_CMDLINE_LINUX 끝에 "name=value" 형식으로 커널 매개변수를 추가합니다. 예: 현재 추가된 커널 매개변수는 systemd.debug-shell=1입니다.
3. Esc를 누르고 :wq를 입력하여 파일을 저장하고 종료합니다.
4. 다음 명령어를 실행하여 Kernel 구성을 재생성합니다.
grub2-mkconfig -o /boot/grub2/grub.cfg
5. 다음 명령어를 실행하여 인스턴스를 재부팅합니다.
6. 다음 명령어를 실행하여 변경이 적용되었는지 확인합니다.
반환 결과에 새 매개변수가 있으면 추가되었음을 의미합니다.
1. 다음 명령어를 실행하여 /etc/default/grub 파일을 편집합니다.
2. i를 눌러 편집 모드로 전환하고 GRUB_CMDLINE_LINUX_DEFAULT 행을 찾은 후, GRUB_CMDLINE_LINUX_DEFAULT 끝에 "name=value" 형식으로 커널 매개변수를 추가합니다. 예: 현재 추가된 커널 매개변수는 systemd.debug-shell=1입니다.
3. Esc를 누르고 :wq를 입력하여 파일을 저장하고 종료합니다.
4. 다음 명령어를 실행하여 Kernel 구성을 재생성합니다.
grub-mkconfig -o /boot/grub/grub.cfg
5. 다음 명령어를 실행하여 인스턴스를 재부팅합니다.
6. 다음 명령어를 실행하여 변경이 적용되었는지 확인합니다.
반환 결과에 새 매개변수가 있으면 추가되었음을 의미합니다.
1. 다음 명령어를 실행하여 커널 매개변수를 추가합니다.
grubby --update-kernel=ALL --args="systemd.debug-shell=1"
2. 다음 명령어를 실행하여 추가되었는지 확인합니다.
다음과 같이 새 매개변수가 있으면 추가되었음을 의미합니다.
3. 다음 명령어를 실행하여 인스턴스를 재부팅합니다.
4. 다음 명령어를 실행하여 변경이 적용되었는지 확인합니다.
반환 결과에 새 매개변수가 있으면 추가되었음을 의미합니다.
1. 다음 명령어를 실행하여 커널 매개변수를 추가합니다.
grubby --update-kernel=ALL --args="systemd.debug-shell=1"
2. 다음 명령어를 실행하여 추가되었는지 확인합니다.
다음과 같이 새 매개변수가 있으면 추가되었음을 의미합니다.
3. 다음 명령어를 실행하여 인스턴스를 재부팅합니다.
4. 다음 명령어를 실행하여 변경이 적용되었는지 확인합니다.
반환 결과에 새 매개변수가 있으면 추가되었음을 의미합니다.
blscfg 기능 비활성화 및 기존 커널 매개변수 구성 파일 읽기
/etc/default/grub에 GRUB_ENABLE_BLSCFG=true가 설정되어 있으면 시스템이 grub blscfg 기능을 사용한다는 의미입니다. blscfg 기능을 비활성화하고 기존 커널 매개변수의 구성 파일을 사용하여 새 매개변수를 추가하려면 /etc/default/grub에서 GRUB_ENABLE_BLSCFG=false로 설정해야 합니다.
작업 단계
설명:
이 방식은 TencentOS Server 3.1, TencentOS Server 3.2 등 최신의 RHEL 배포판에 적용됩니다.
해당 방식은 CentOS 7과 유사한 기존 grub 방식을 계속 사용하여 /etc/default/grub의 구성 매개변수를 기본적으로 읽습니다.
TencentOS Server 3.X/TencentOS Server 4.X
1. 다음 명령어를 실행하여 /etc/default/grub 파일을 엽니다.
2. i를 눌러 편집 모드로 전환하고 GRUB_CMDLINE_LINUX 행을 찾은 후, GRUB_CMDLINE_LINUX 끝에 "name=value" 형식으로 커널 매개변수를 추가합니다. 예: 현재 추가된 커널 매개변수는 systemd.debug-shell=1입니다.
3. Esc를 누르고 :wq를 입력하여 파일을 저장하고 종료합니다.
4. 다음 명령어를 실행하여 blscfg 기능을 비활성화합니다.
sed -i "s/GRUB_ENABLE_BLSCFG=true/GRUB_ENABLE_BLSCFG=false/g" /etc/default/grub
5. 다음 명령어를 실행하여 Kernel 구성을 재생성합니다.
grub2-mkconfig -o /boot/grub2/grub.cfg
6. 다음 명령어를 실행하여 인스턴스를 재부팅합니다.
7. 다음 명령어를 실행하여 변경이 적용되었는지 확인합니다.
반환 결과에 새 매개변수가 있으면 추가되었음을 의미합니다.