kernel.sysrq 설정에 관계없이 SysRq가 항상 활성화되도록 하려면 어떻게 해야 합니까?

kernel.sysrq 설정에 관계없이 SysRq가 항상 활성화되도록 하려면 어떻게 해야 합니까?

일부 Linux 배포판에는 kernel.sysrq=16(동기화)만 허용한다는 의미가 있습니다. SysRq + s예: Fedora(25 및 28)는 다음과 같이 설정되어 있습니다./usr/lib/sysctl.d/50-default.conf

가능한 한 빨리 사용할 수 있도록 /etc/sysctl.d/95-sysrq.conf수동으로 설정된 위치에 파일을 만들어야 합니다 (그러나 상황에 따라 충분히 빠르지 않을 수도 있습니다).kernel.sysrq=1

$ grep -nHi sysrq /usr/lib/sysctl.d/* /etc/sysctl.d/*
/usr/lib/sysctl.d/50-default.conf:16:# Use kernel.sysrq = 1 to allow all keys.
/usr/lib/sysctl.d/50-default.conf:17:# See http://fedoraproject.org/wiki/QA/Sysrq for a list of values and keys.
/usr/lib/sysctl.d/50-default.conf:18:kernel.sysrq = 16
/etc/sysctl.d/95-sysrq.conf:1:kernel.sysrq=1

초기 부팅에서 Sysrq를 활성화하거나 설정을 무시할 수 있는 방법이 있습니까 kernel.sysrq?cat /proc/cmdline, 예를 들어 Grub 부팅 메뉴(또는 의 xen.cfg줄 )에서 커널 부팅 매개변수를 추가하는 것과 같은 것입니다( 현재 항목의 경우) kernel=.

답변1

sysrq_always_enabled커널 부팅 매개변수에 따라문서:

sysrq_always_enabled
            [KNL]
            Ignore sysrq setting - this boot parameter will
            neutralize any effect of /proc/sys/kernel/sysrq.
            Useful for debugging.

kernel.sysctl=0커널 부팅 매개변수를 추가하더라도(위 문서에서 말하는 것처럼) Sysrq가 작동하는지(예: 도움말, 동기화) 테스트했습니다 sysrq_always_enabled(참고: 반드시 그럴 필요는 없습니다).sysrq_always_enabled=1). (다시 확인하기 위해 Sysrq가
없을 때와 없을 때 작동하지 않는 지도 테스트했습니다 )kernel.sysctl=0sysrq_always_enabled/proc/cmdline
소스 코드이 역시 확인되었습니다.

참고: /proc/sys/kernel/sysrq읽기/쓰기의 또 다른 방법입니다.kernel.sysrq

sysrq에 대한 추가 정보:https://www.kernel.org/doc/html/v4.15/admin-guide/sysrq.html
( sysrq_always_enabled언급되지는 않았지만,여기)

편집하다:sysrq_always_enabled적용되면 dmesg 줄이 있습니다:

[    0.000000] sysrq: sysrq always enabled.

관련 정보