GRUB에서 운영 체제로 사용자 정의 매개변수 전달

GRUB에서 운영 체제로 사용자 정의 매개변수 전달

내 프로그램은 데비안의 사용자 정의 ISO에서 실행되는 bash 스크립트입니다.

GRUB에서 운영 체제로 매개변수(디버그 플래그)를 전달하는 GRUB 메뉴 항목을 원합니다. 그러면 코드를 변경하지 않고 비디버그 옵션을 사용하면서 프로그램을 테스트할 수 있습니다.

예를 들어 Clonezilla에는 다음과 같은 여러 매개변수가 있습니다.

ocsdaemon_on="ssh"

SSH 서버를 시작합니다.

매개변수 debug나 기타 사용자 정의 단어를 GRUB에 넣은 다음 프로그램에 넣습니다.

DEBUG=<flag>

가능합니까? 달성하는 방법?

답변1

매개변수를 커널 명령줄에 추가하기 전에 매개변수가 기존 매개변수와 겹치지 않는지 확인하세요. 여기에서 Linux 커널 문서의 목록을 참조하세요. https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html

( debug귀하의 프로그램에는 좋은 선택이 아닙니다. 이미 커널 디버깅을 활성화하는 데 사용되었습니다.)

그런 다음 프로그램에서 이를 읽고 /proc/cmdline찾아보게 하세요. 기본적으로 그게 다입니다.

관련 정보