![这些 SysRq 命令的位掩码是什么?](https://linux22.com/image/1398283/%E8%BF%99%E4%BA%9B%20SysRq%20%E5%91%BD%E4%BB%A4%E7%9A%84%E4%BD%8D%E6%8E%A9%E7%A0%81%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我终其一生都无法理解位掩码。我确信它们非常简单,只是我还没有找到能让我的大脑理解它们工作原理的东西。
我需要输入什么位掩码值/proc/sys/kernel/sysrq
才能仅允许这些 SysRq 命令?✓表示启用的命令,X表示禁用的命令:
✓ r - 4=0x4 - Puts the keyboard into raw mode
✓ k - 4=0x4 - Kills all programs on the current virtual console
✓ s - 16=0x10 - Flushes data from your cache to disk
X u - 32=0x20 - Remounts all file systems read-only
X e - 64=0x40 - Sends the terminate signal to all processes
X i - 64=0x40 - Sends the kill signal to all processes
X b - 128=0x80 - Reboots your computer
答案1
您只需添加要激活的值即可。但是,位掩码值应该是唯一的。所以我猜 r 和 k 开关的值应该不同。根据这个回答,4 处理键盘控制,而不是终止所有程序。假设您需要的只是 r & s 开关,您需要 4+16=20 值