Mój /proc/sys/kernel/sysrq
zawiera numer 502, ale wydaje się, że Alt + SysRq + ... nie działa na moim laptopie HP Pavilion. Jak mogę to naprawić?
Aktualizacja 1: Nawiasem mówiąc: ani mój klawisz ekranu drukowania, ani żaden inny klucz nie ma dodatkowej etykiety, takiej jak „SysRq”.
Aktualizacja 2:
- Model sprzętu: komputer przenośny HP Pavilion 17
- Układ klawiatury: niemiecki, QWERTZ
linux-kernel
keyboard-layout
magic-sysrq
Al Klimow
źródło
źródło
Odpowiedzi:
Większość laptopów wymaga naciśnięcia, Fnaby uzyskać SysRqklucz. Naciskanie Fnzwykle nie wpływa na Altklawisz (przynajmniej lewy), ale może wpływać na literę, którą naciskasz po SysRq. Na szczęście nie musisz naciskać SysRqrazem z trzecim klawiszem, wystarczy przytrzymać Alt. Poniższa sekwencja działa na wszystkich laptopach, które widziałem:
SysRqKlucz jest zazwyczaj taka sama jak klucz PrintScreen. Jeśli twoja klawiatura nie ma klawisza oznaczonego SysRqlub PrintScreenmoże nie mieć klucza, który wysyła kod skanowania, którego oczekuje Linux. Do celów magicznego SysRq SysRqkluczem jest dowolny klucz, który wysyła kod skanowania 99.
Za pomocą klawiatury PS / 2 (w tym wewnętrznej klawiatury laptopa), aby dowiedzieć się, jaki kod skanowania wysyła klawisz, zaloguj się do konsoli tekstowej (naciśnij Ctrl+ Alt+, F1aby przełączyć się na konsolę tekstową, i zwykle Ctrl+ Alt+, F7aby wrócić do GUI ) i uruchom polecenie
showkey -s
.showkey -s
wyświetla kod skanowania każdego klawisza podczas pisania. Zazwyczaj jest to jeden bajt (dwie cyfry szesnastkowe) dla naciśnięcia klawisza, a następnie inny bajt dla zwolnienia klawisza. Dla kilku kluczy otrzymasz sekwencję bajtów składającą się z dwóch bajtów zaczynających się ode0
. Naciśnij interesujący Cię klawisz, a następnie poczekaj 10 sekund ishowkey
wyjdzie.Po zidentyfikowaniu kodu skanowania uruchom
setkeycodes … 99
jako root, aby przypisać ten kod skanowania do kodu klucza 99. Na przykład, jeślishowkey -s
drukujesz0xe0 0x6f 0xe0 0xef
dla wybranego klucza, uruchomsetkeycodes e06f 99
.Aby wprowadzić tę zmianę na stałe, dodaj
setkeycodes
polecenie/etc/rc.local
lub skonfiguruj udev, aby zmienić odwzorowania kodu klucza . Konfiguracja udev jest jedynym rozwiązaniem dla klawiatury USB,setkeycodes
nie wpływa na klawiatury USB.źródło
setkeycodes: failed to set scancode 90 to keycode 99: ioctl KDSETKEYCODE: Invalid argument
. Niestety mam laptopa na klawiaturze Apple.Korzystam z nowszego laptopa HP Pavilion, ten sam problem. Dla mnie zadziałało naciśnięcie klawisza AltGr klawiszem Printscreen
źródło