Linux의 Apple 키보드에서 fn 수정 자 키없이 기능 키를 작동 시키려면 어떻게해야합니까?


20

Linux에서 Apple 유선 키보드를 사용합니다. 기본적으로 기능 키 (F1, F2, F3 등)는 fn작동 키를 눌러야합니다. fn키가 없으면이 키는 화면 밝기, 볼륨 및 음악 트랙 컨트롤과 같은 기능을 제어합니다.

이것을 바꾸는 방법이 있습니까? 그래서 기능 키에는 fn수정자가 필요하지 않지만 다른 기능 (밝기 등)에는 필요합니까?

답변:


25

0또는 2에 추가해야합니다 /sys/module/hid_apple/parameters/fnmode.

즉 :

echo 2 > /sys/module/hid_apple/parameters/fnmode

두 값의 차이가 무엇인지에 대해 약간의 혼란이있는 것 같습니다. 우분투 문서 인용 :

  1. 0 = disabled : 'fn'키를 비활성화합니다. 'fn'+ 'F8'을 누르면 'F8'만 누르는 것처럼 동작합니다
  2. 1 = fkeyslast : 기능 키가 마지막 키로 사용됩니다. 'F8'키를 누르면 특수 키 역할을합니다. 'fn'+ 'F8'을 누르면 F8처럼 작동합니다.
  3. 2 = fkeysfirst : 기능 키가 첫 번째 키로 사용됩니다. 'F8'키를 누르면 F8처럼 작동합니다. 'fn'+ 'F8'을 누르면 특수 키 (재생 / 일시 정지)로 작동합니다.

이것은 Fedora에서도 작동합니다.


fnmode = 밑줄 없음
— Yauhen Yakimovich

고마워 !!!
— Shivam '12

3

나는 그것이 루트 파일의 값을 변경할 때,이 수정의 동작을 변경하는 매우 간단하다 것을 알아 냈 /sys/module/hid_apple/parameters/fnmode에서 1로가 0. 예를 들면 다음과 같습니다.

# echo 0> / sys / module / hid_apple / parameters / fnmode

일부 이전 버전의 Linux에서는이 파일이에있었습니다 /sys/module/apple/parameters/fnmode. 또한이 변경 사항은 재부팅 할 때 유지되지 않습니다.


3

키보드와 터치 패드를 작동시키기 위해 applespi 드라이버가 필요한 최신 MacBook Pro (2016 이상) 중 하나를 사용하여이 스레드를 다루는 사람 은이 스레드를 설명하는 다른 스레드를 찾을 수 없으므로이 작업을 수행하는 방법은 다음과 같습니다. 최신 Mac.

내가 이해하는 한, 드라이버는 hid_apple 모듈의 역할을 효과적으로 대체하므로 편집 할 파일이 약간 다릅니다.

먼저, hid_apple 드라이버가 아닌 applespi 드라이버를 사용하고 있는지 확인하려면, 터미널을 사용하여 어떤 명령이 무언가를 반환하는지 확인하십시오. 어느 것이 현재 사용중인 드라이버인지 알려줍니다.

# If this returns "applespi", you are using applespi
ls /sys/module | grep applespi

# If this returns "hid_apple", you are using hid_apple
ls /sys/module | grep hid_apple

설정을 일시적으로 테스트하려면 (재부팅 후 설정이 재설정 됨) :

echo 2 | sudo tee -a /sys/module/applespi/parameters/fnmode

변경 사항을 영구적으로 적용하려면 (재부팅시 지속) :

# Add the option for the fn key
echo options applespi fnmode=2 | sudo tee -a /etc/modprobe.d/applespi.conf
# Update initramfs bootfile
sudo update-initramfs -u -k all
# Reboot to test (optional)
sudo reboot

hid_apple 모듈을 사용하는 구형 MacBook Pro의 경우 명령에서 "applespi"대신 "hid_apple"을 사용하십시오.


2

액세스가 거부되고 "sudo"라는 접두사를 사용할 수없는 사용자의 경우 :

sudo nano /sys/module/hid_apple/parameters/fnmode

2또는 다른 것으로 변경 한 다음 Ctrl+X저장하십시오.


더 나은 방법은 echo 2| sudo tee /sys/module/hid_apple/parameters/fnmode이지만 이러한 모든 솔루션은 일시적입니다 .... systemd예를 들어 Fedora와 같은 환경에서 지속적으로 유지하는 한 가지 방법 : echo "w /sys/module/hid_apple/parameters/fnmode - - - - 2" | sudo tee /etc/tmpfiles.d/rev_fn_key.conf
— nhed

1

에서 오래된 토론 해결책은 (바람직 시스템 전체 응용 프로그램이 될 수있는 커널 부트 매개 변수, 단지 라인의 수정에 함께 제공됩니다/etc/default/grub , 등).

해당 용액에있어서, fnmode설정되는 2대신 0. 난 그냥 설정하려고 hid_apple/parameters/fnmode에 2, 그것은 원하는 효과를 너무있다. 어쩌면 논리는`1 → "필요 단순히 Fn접근 F1, F2, F3다른 모든 값을 대 ...?"


RJVB 안녕하세요, 유닉스에 오신 것을 환영합니다. 서식을 개선하기 위해 답변을 편집했습니다. 트릭을 배우기 위해 소스를 살펴보십시오.
— drs
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.