변경 권한을 부여하기 위해 Steam을 설치하기 위한 코드를 만드는 방법을 잘 모르겠습니다.

변경 권한을 부여하기 위해 Steam을 설치하기 위한 코드를 만드는 방법을 잘 모르겠습니다.

Linux를 통해 Lenovo 크롬북에 Steam을 설치하려고 했지만 코드를 따를 때마다 이 오류가 계속 발생합니다. 권한을 부여하는 방법을 모르겠습니다. 이 상황에서 어떻게 해야 하는지 안내해 줄 수 있는 사람이 있는지 알고 싶었습니다.

나는 다음 명령을 사용했습니다.

sudo dpkg -i steam.deb

Steam을 설정할 준비가 되면 다음과 같이 표시됩니다.

Failed to write 'change' to '/sys/devices/virtual/misc/uinput/uevent': Permission denied

고쳐 쓰다:이 문제에 대한 해결책을 찾았으며 계속할 수 있습니다.

답변1

당신이 그것을 사용하고 있다는 사실로 볼 때 dpkg, 나는 당신이 데비안이나 그것에서 파생된 다른 배포판을 사용하고 있다고 가정하고 있습니다.

가상 파일은 커널 모듈이 /sys/devices/virtual/misc/uinput/uevent로드될 때 생성됩니다. 이는 커널의 현재 런타임 상태를 기반으로 동적으로 생성되는 가상 파일 시스템의 일부이기 uinput때문에 해당 권한에 대한 변경 사항은 재부팅 후에도 유지되지 않습니다.sysfs

Steam이 이 파일에 액세스해야 하는 이유는 하드웨어 지원과 관련이 있을 수 있습니다. uinput커널 모듈의 서비스에 액세스하면 특정 고급 게임 컨트롤러 기능 및/또는 다양한 SteamVR 호환 가상 현실 장치에 대한 지원이 단순화될 수 있습니다.

이러한 하드웨어 장치가 없다면 이 오류 메시지를 무시해도 됩니다. Steam 설치를 방해해서는 안 됩니다.

로컬로 로그인하면 일부 그룹 멤버십이 자동으로 사용자 계정에 추가됩니다. 이러한 그룹 멤버십은 일반적으로 원격 사용자가 얻을 수 없는 추가 하드웨어 액세스 권한을 부여합니다. 예를 들어, 로컬로 로그온하는 사용자는 일반적으로 plugdev대부분의 USB 장치를 쉽게 사용할 수 있는 그룹 멤버십을 얻습니다. 이 그룹은 Steam의 사용 사례에도 적합할 수 있습니다. 따라서 모듈이 로드될 때 /sys/devices/virtual/misc/uinput/uevent마다 자동으로 추가되는 그룹에 대한 그룹 쓰기 액세스 권한을 갖고 싶을 수 있습니다 .plugdevuinput

(이 그룹의 사용은 plugdevDebian 및 그 파생 배포판에만 해당될 수 있습니다. 다른 배포판을 사용하는 경우 로컬로 로그인한 사용자의 하드웨어 액세스를 처리하는 방법을 파악하고 일치하도록 프로세스를 조정해야 할 수도 있습니다.)

다음과 같은 명령을 사용하여 이 작업을 수행할 수 있습니다(모두 한 줄에).

echo "install uinput /sbin/modprobe -i uinput; /bin/chgrp plugdev /sys/devices/virtual/misc/uinput/uevent; /bin/chmod g+w /sys/devices/virtual/misc/uinput/uevent" | sudo tee /etc/modprobe.d/uinput.conf

이 명령은 이름이 지정된 파일을 생성 하고 이 파일에 커널 모듈에 대한 사용자 정의 설치 지침 줄을 /etc/modprobe.d/uinput.conf씁니다 . uinput단순히 모듈을 로드하는 것이 아니라첫 번째평소대로 모듈을 로드한 다음 chgrpchmod명령을 실행하여 파일의 권한을 조정합니다 /sys/devices/virtual/misc/uinput/uevent.

그런 다음 uinput커널 모듈을 언로드했다가 다시 로드하여 구성이 예상대로 작동하는지 확인해야 합니다.

sudo modprobe -r uinput
sudo modprobe uinput

이제 ls -l /sys/devices/virtual/misc/uinput/uevent다음 결과가 표시되어야 합니다.

-rw-rw-r-- 1 root plugdev 4096 May  6 02:08 /sys/devices/virtual/misc/uinput/uevent

이 그룹에 속한 모든 사용자 plugdev(즉, 로컬로 로그인한 모든 사용자)가 이제 파일을 읽고 쓸 수 있음을 나타냅니다.

관련 정보