Я использую алюминиевую клавиатуру Apple Slim , у которой нет SysRqклавиши:
Какие клавиши мне нужно нажимать для волшебной клавиши SysRq, когда мне нужно набрать REISUB ?
Я использую алюминиевую клавиатуру Apple Slim , у которой нет SysRqклавиши:
Какие клавиши мне нужно нажимать для волшебной клавиши SysRq, когда мне нужно набрать REISUB ?
Ответы:
Этот ответ также размещен здесь .
После 3 или 4 часов напряженного поиска, чтения, проб и ошибок приведем более подробный и общий ответ, который подойдет для любого ноутбука или клавиатуры Apple / Mac, а не только для «тонкой алюминиевой клавиатуры Apple». В моем конкретном случае, однако, я использую это решение для MacBook 2008 года белого цвета с Xubuntu 16.04 LTS.
Большое спасибо Бенгту Олссону за его прекрасные инструкции, которые дали мне необходимое начало, чтобы выяснить недостающие детали.
Это решение выполняется в пользовательском пространстве и НЕ требует перекомпиляции ядра, как некоторые предложения.
Загрузите исходный код для keyfuzz и распакуйте его (я могу щелкнуть его правой кнопкой мыши и, например, перейти к «Извлечь здесь», чтобы извлечь его в моем файловом менеджере GUI). Чтобы узнать больше о keyfuzz, смотрите здесь . Он выпущен под лицензией GNU GPL 2.0 или более поздней (с открытым исходным кодом!).
./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 для мягкой перезагрузки компьютера. Прекрасно работает на моем ноутбуке MacBook 2008 под управлением Xubuntu 16.04 LTS.
Обратите внимание, что вы можете видеть результаты, возвращаемые с помощью команды 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 .
Файл хорошо документирован и говорит вам, как именно включить эти функции. Текущее значение по умолчанию было выбрано в целях безопасности и должно быть изменено только в том случае, если вы знаете, зачем это нужно (для информации о безопасности см. Ошибку № 194676 ).
Какая боль в заднице. :) ура.
Счастливого "линуксинга".
~ Габриэль Стейплс
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.
У меня нет клавиатуры под рукой, чтобы проверить это, но: