![[명령줄에 전달된] 커널 매개변수가 유효한 커널 매개변수인지 어떻게 알 수 있나요?](https://linux55.com/image/25673/%5B%EB%AA%85%EB%A0%B9%EC%A4%84%EC%97%90%20%EC%A0%84%EB%8B%AC%EB%90%9C%5D%20%EC%BB%A4%EB%84%90%20%EB%A7%A4%EA%B0%9C%EB%B3%80%EC%88%98%EA%B0%80%20%EC%9C%A0%ED%9A%A8%ED%95%9C%20%EC%BB%A4%EB%84%90%20%EB%A7%A4%EA%B0%9C%EB%B3%80%EC%88%98%EC%9D%B8%EC%A7%80%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%95%8C%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F.png)
구성 파일 에서 grub.conf
커널이 사용할 명령줄 매개변수를 지정할 수 있습니다.
kernel /boot/kernel-3-2-1-gentoo root=/dev/sda1 vga=791 plasticDuck
특정 커널을 부팅한 후 모든 매개변수가 "올바르게" 전달되었는지 알 수 있는 방법이 있습니까?
plasticDuck
즉, 커널 매개변수 는 없지만 다음과 같습니다.
dmesg | grep plasticDuck
다음만 반환:
Kernel command line: root=/dev/sda1 vga=791 plasticDuck
(오류 없음)
답변1
내장 모듈 매개변수와 해당 값을 나열하는 명령이 없는 것 같습니다. 드라이버 파일의 경로를 알고 있으면 해당 모듈에 대한 매개변수를 나열할 수 있습니다. 예를 들어 이를 ipv6.autoconf=0
커널 부팅 인수로 사용하는 경우 다음을 실행할 수 있습니다.
ls -1 /sys/module/ipv6/parameters/
autoconf
disable
disable_ipv6
그런 다음 지정된 인수가 목록에 있으면(즉, 유효한 경우) 해당 값이 확인됩니다.
cat /sys/module/ipv6/parameters/autoconf
0
또는 특정 경우에는 - atkbd
:
cat /sys/bus/serio/drivers/atkbd/serio0/softraw
1
~에 따르면자일스 포스트, 로드 가능한 모듈의 경우 특정 매개변수 및 가능한 값을 나열하는 데 사용할 수 있지만 modinfo
내장 모듈에서는 작동하지 않습니다(시도했지만)지원 추가내장 모듈의 경우):
modinfo ipv6
modinfo: ERROR: Module ipv6 not found.
답변2
매개변수가 유효한지 여부를 알 수 없습니다. 커널에 전달된 인수는 모듈에도 전달되며(모듈 자체를 로드할 때 전달된 인수에 추가로) 아직 로드하지 않은 모듈은 이 인수를 이해할 것입니다.
이 modinfo
명령은 모듈이 이해하는 매개변수를 나열합니다. 에서 로드된 모듈의 매개변수를 볼 수 있습니다 /sys/module/$module_name/parameteres/
. 커널 자체에는 비슷한 것이 없습니다.
답변3
/proc/cmdline
파일에는 커널에 전달된 매개변수가 포함되어 있습니다.