我正在使用没有按键的Apple超薄铝制键盘SysRq:
我正在使用没有按键的Apple超薄铝制键盘SysRq:
Answers:
这个答案也发布在这里。
经过3到4个小时的辛苦搜索,阅读和反复试验后,这是一个更彻底,更通用的答案,该答案适用于任何 Apple / Mac笔记本电脑或键盘,而不仅仅是“ Apple slim Aluminium Keyboard”。但是,在我的特定情况下,我将此解决方案用于运行Xubuntu 16.04 LTS的2008 MacBook白色。
非常感谢Bengt Olsson在这里的出色指导,这使我有必要开始找出缺失的细节。
该解决方案是在用户空间中完成的,不需要像某些建议那样重新编译内核。
下载keyfuzz的源代码并解压缩(例如,我可以右键单击它并转到“在此处提取”以将其解压缩到我的GUI文件管理器中)。要了解有关键模糊的更多信息,请参见此处。它是在GNU GPL 2.0或更高版本的开源许可证(yaaay开源!)下发布的。
./configure
下面的命令将失败。安装依赖项,否则在./configure
下面运行可能会吐出一些错误:
sudo apt-get update
sudo apt-get install lynx xmltoman gengetopt
使用常用命令编译并安装keyfuzz:
./configure
make
sudo make install
导航至以/dev/input/by-id
结尾的Apple键盘-event-kbd
:
cd /dev/input/by-id
ls
对我来说
usb-Apple_Computer_Apple_Internal_Keyboard___Trackpad-event-kbd
将以下行添加到/etc/rc.local
文件中,以使该命令在您的计算机每次启动并加载该用户时运行。注意,我们正在使用上面刚刚找到的Apple键盘条目。此命令使用keyfuzz 映射F12或F13在Apple键盘或笔记本电脑上映射到系统“ Magic SysRq key ”,以进行软重启。
458821 99
。非常感谢“ pjjjv” 在这里弄清楚了!458856 99
。由于我的MacBook 2008没有F13,所以我使用F12上面的选项。还请记住使用我们在上面找到的正确的键盘输入。我rc.local
为案例添加的命令是:
echo "458821 99" | keyfuzz -s -d /dev/input/by-id/usb-Apple_Computer_Apple_Internal_Keyboard___Trackpad-event-kbd
这是我的整个/etc/rc.local
文件,带有相应的条目:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
echo "458821 99" | keyfuzz -s -d /dev/input/by-id/usb-Apple_Computer_Apple_Internal_Keyboard___Trackpad-event-kbd
exit 0
重启。
现在,我可以按Alt+ F12(或如上所述,您可以使用Alt+ F13)并发出REISUB来软重启计算机。在运行Xubuntu 16.04 LTS的MacBook 2008笔记本电脑上完美运行。
请注意,当您按下每个键时,可以看到发出REISUB返回的结果,方法是在发出命令之前先跳到带有Ctrl+ Alt+ 的备用会话F1(实际上是F1通过F6工作)。要返回到您的主要X Window会话,请使用Ctrl+ Alt+ F7。
如果得到的结果是
This sysrq operation is disabled
对于某些命令,这是正常的,因为它们会带来潜在的安全风险。但是,Boot one应该仍然可以运行,从而使您可以软重启计算机。这是有关此的更多信息,来自此处的mniess:
从Ubuntu 12.10开始,可以对启用了Magic-SysRq功能的情况进行更细粒度的控制。只需编辑文件/etc/sysctl.d/10-magic-sysrq.conf即可。
该文件有据可查,可以准确地告诉您如何启用哪些功能。选择当前默认值是出于安全目的,并且只有在知道为什么需要时才应更改(出于安全方面的考虑,请参见bug#194676)。
屁股好痛。:)干杯。
快乐的“ Linuxing”。
〜加布里埃尔·斯台普斯
www.ElectricRCAircraftGuy.com
sudo make install
将keyfuzz作为软件包安装。
就这样 如果您不想像第一个答案的第一个链接中所建议的那样重新编译内核,则有一种更简单的方法。在第一个答案的第二个链接中对此进行了概述,但这是实际过程:
使用常用命令编译并安装
./configure
make
sudo make install
将以下行添加到您的/etc/rc.local文件中:
echo "458856 99" | sudo /usr/local/sbin/keyfuzz -s -d /dev/input/by-id/usb-Apple__Inc_Apple_Keyboard-event-kbd
现在应该可以按Alt+ F13并发出REISUB。在我的Xubuntu 15.10上工作。
我手头没有alu键盘来进行测试,但是: