사용자가 실행 중인 Xorg는 /dev/dri/card0에 액세스할 수 없습니다.

사용자가 실행 중인 Xorg는 /dev/dri/card0에 액세스할 수 없습니다.

Ubuntu 20에서 이상한 문제가 발생했습니다. 하드웨어 가속 xrdp Xorg 세션을 얻으려고 합니다. 컴퓨터 비디오는 Mesa DRI Intel(R) HD Graphics 4600(HSW GT2)입니다. xrdp의 devel 브랜치를 컴파일하고 설치했습니다(Glamour 브랜치가 병합되었습니다).

그런 다음 로그인을 시도하지만 Cinnamon에서 소프트웨어 렌더링에 대한 경고를 표시합니다. xorg 로그를 확인하고 다음을 발견했습니다.

[  3987.463] (II) xfree86: Adding drm device (/dev/dri/card0)
[  3987.463] (EE) systemd-logind: failed to take device /dev/dri/card0: Operation not permitted

/dev/dri/card0은 루트가 소유하며 비디오 그룹 및 그룹 rw acl을 갖습니다. xrdp-sesman 사용자 uid 1000에서 Xorg 세션을 시작하려면 다음 명령을 사용하십시오.

/usr/lib/xorg/Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp -logfile .xorgxrdp.%s.log

나는 시도했다:

  • 루트에서 이 명령을 실행하세요. 문제 없이 dri/card0에 액세스할 수 있습니다.
  • 비디오, 오디오, 플러그개발 그룹에 사용자 1000을 추가했습니다. 도움이 되지 않았습니다. (id 명령을 실행하고 그룹을 확인한 다음 위 명령을 사용하여 콘솔에서 xorg를 시작해 보았습니다.)
  • /dev/dri 폴더의 권한을 777로 변경합니다(chmod -R 777 /dev/dri).
  • /dev/dri의 소유자를 사용자 1000으로 변경합니다.

그래서. 지금은 내가 무엇을 잘못했는지, 어떻게 해결해야 할지 모르겠습니다.

PS 마지막으로 xrdp에 대한 하드웨어 가속 기능을 얻었습니다. xorgxrdp 모듈은 --enable-glamor 옵션(./configure --enable-glamor)을 사용하여 컴파일해야 합니다. 다시 컴파일한 후 Cinnamon은 더 이상 소프트웨어 렌더링에 대해 불평하지 않고 훨씬 빨라졌습니다.

하지만 여전히 xorg 로그가 있습니다.

failed to take device /dev/dri/card0: Operation not permitted

기록.

관련 정보