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

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

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

그런 다음 로그인을 시도했지만 계피는 소프트웨어 렌더링에 대한 경고를 표시합니다. 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에 대한 hw 가속을 얻었습니다. xorgxrdp 모듈은 --enable-glamor 옵션(./configure --enable-glamor)을 사용하여 컴파일해야 합니다. 재컴파일 후 Cinnamon은 소프트웨어 렌더링에 대한 불평을 멈추고 훨씬 빨라졌습니다.

하지만 xorg 로그에는 여전히

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

기록.

관련 정보