Linux 콘솔에서 F1 키를 비활성화하는 방법(즉, tty 전환 방지)은 무엇입니까?

Linux 콘솔에서 F1 키를 비활성화하는 방법(즉, tty 전환 방지)은 무엇입니까?

CTRL-ALT-F1tty1로 전환하려면 누르세요 . 다른 tty에. 를 사용하여 키맵을 변경할 수 있습니다 loadkeys FILE.

F1 키를 비활성화하는 방법은 무엇입니까? 이렇게 하면 tty1로 전환되지 않나요?

답변1

dumpkeys -s |grep Console"콘솔"을 사용하면 사용 가능한 모든 문자, 상형 문자 및 기능 목록을 얻을 수 있습니다 .

Switch-to-1부터 Switch-to-63, Incr/Decr 및 Last_Console이 있습니다.

키맵 파일에서 이를 정의하는 방법은 다음과 같습니다.

]# grep Cons dkm.map
keycode  59 = Console_1  F1
keycode  60 = Console_2  F2 
...
keycode  67 = Console_9  F9
keycode  68 = Console_10 F10
keycode  87 = Console_11 F11 
keycode  88 = Console_12 F12
keycode 125 = Last_Console nul Incr_Console nul Decr_Console 
keycode 127 = Incr_Console Decr_Console 

Alt-F1 대신왼쪽 및 오른쪽 화살표F1과 "Windows" 키가 있습니다. 이후부터 loadkeys dkm.map활성화 됩니다.

모든 전환을 방지하려면 "콘솔"이 포함된 키맵 파일의 모든 줄에 주석을 달거나 제거할 수 있습니다.

man keymaps(loadkeys 및 dumpkeys에 대한 키보드 테이블 설명)은 좋은 매뉴얼 페이지입니다(명령이 아님).

그리고 chvt tty1전환 명령이 있습니다 ...

답변2

X.Org에서 직접 이 작업을 수행하는 기능을 비활성화하는 것이 좋습니다.

이것 좀 봐질문그런 이유로.

즉, 추가

Section "ServerFlags"
    Option "DontVTSwitch" "on"
EndSection

당신의/etc/X11/Xorg.conf

OP의 요청을 오해하여 답변이 편집되었습니다.

면책 조항: 저는 wayland를 사용한 적이 없습니다... 이 제안은 대부분 wayland그것이 실행 중이거나 전경에서 실행될 수 있다는 가정에 기초합니다.

그러니까 제가 잘 이해한다면, 잠글 수 없는 Wayland 세션이 있는데, Linux 콘솔로 전환하여 Wayland 세션을 제어할 수 없도록 잠그고 싶다는 것입니다.

내가 하고 싶은 일은:

  1. Linux 콘솔에 로그인합니다 /dev/tty1.
  2. wayland이 콘솔에서 시작하세요.

이때 tty1의 포어그라운드에는 "wayland"가 실행되고 있습니다. 그런 다음 세션을 잠그고 싶을 때:

  1. Linux 콘솔(tty1)로 다시 전환합니다.
  2. wayland쉘 작업 제어 인터럽트( ctrl-z)를 사용하십시오.
  3. screen유틸리티를 시작 하고 이를 사용하여 콘솔을 잠급니다( ctrl-a x).

계속하려면: 1. 시스템 비밀번호를 사용하여 화면을 잠금 해제합니다. 2. 내장된 복구 기능을 wayland사용하세요 .fg

이 "해결 방법"을 사용하면 으로 전환할 수 있더라도 wayland로 중단하기 때문에 응답하지 않습니다 ctrl-z.

답변3

귀하의 질문을 문자 그대로 설명하자면, 귀하가 찾고 있는 것은xmodmap.xmodmap. 키코드 값을 찾는 데 사용할 수 있습니다 xev -event keyboard. 그런 다음 xmodmap을 사용하여 비활성화할 수 있습니다.

다음은 관련 슈퍼유저 게시물입니다.

https://superuser.com/questions/775785/how-to-disable-a-keyboard-key-in-linux-ubuntu

https://superuser.com/questions/1296401/xmodmap-how-to-remap-keys-and-disable-the-original-ones/1299426

관련 정보