명령줄을 통해 Gnome 화면 공유를 활성화하시겠습니까?

명령줄을 통해 Gnome 화면 공유를 활성화하시겠습니까?

Fedora 30(32 출시 예정)을 기반으로 "디지털 사이니지 클라이언트"에 대한 자동 시작 설치가 설정되어 있으며 이제 실제 시각적 피드백을 얻을 수 있도록 설치에 "Gnome 화면 공유" 활성화를 추가하고 싶습니다. 지금 화면에 있는 것. GUI의 설정(설정 - 공유 - 화면 공유)을 통해 작동하게 했고, Gesettings를 통해 "하위 설정"을 설정할 수도 있습니다.

gsettings set org.gnome.desktop.remote-desktop.vnc view-only false
gsettings set org.gnome.desktop.remote-desktop.vnc auth-method 'password'

그런데 "화면 공유" 자체를 활성화하는 설정을 찾을 수 없습니다. GUI를 통해 활성화하면 다음을 통해 볼 수 있습니다 systemctl status.

systemctl status | grep gnome-remote | grep -v grep
           │   │ ├─gnome-remote-desktop.service
           │   │ │ └─5572 /usr/libexec/gnome-remote-desktop-daemon

systemctl start를 사용하여 이 서비스와 "데몬"을 직접 시작해 보았지만 결과는 다음과 같습니다.Failed to start gnome-remote-desktop-daemon.service: Unit gnome-remote-desktop-daemon.service not found.

매우 유사한 두 가지 질문이 있지만 "org.gnome.Vino" 스키마가 없기 때문에 오래된 것 같습니다.

그렇다면 명령줄을 통해 Gnome 화면 공유를 활성화하는 방법은 무엇입니까?

다음에 추가:

나는 그것을 작동시키는 데 많은 시간을 투자했고 문제 중 하나를 제외한 모든 것을 해결했습니다. 이제 사용자로서 서비스를 시작해야 한다는 것을 알았으므로 전체 프로세스는 다음과 같습니다.

# Configuration
gsettings set org.gnome.desktop.remote-desktop.vnc auth-method 'password'
gsettings set org.gnome.desktop.remote-desktop.vnc view-only false
gsettings set org.gnome.settings-daemon.plugins.sharing.service:/org/gnome/settings-daemon/plugins/sharing/gnome-remote-desktop/ enabled-connections "['$( grep UUID /etc/sysconfig/network-scripts/ifcfg-enp1s0 | cut -d= -f2)']"

# Start the Remote-Desktop-Service
systemctl start --user gnome-remote-desktop

아무도 "수락"을 클릭하지 않고 "보기 전용"을 "False"로 클릭하지 않도록 "비밀번호"로 설정하여 이를 제어하고 네트워크 인터페이스의 UUID를 설정할 수 있습니다. 그런 다음 올바르게 구성된 서비스를 시작할 수 있습니다.

따라서 마지막으로 누락된 단계는 명령줄을 통해 비밀번호를 설정할 수 없다는 것입니다. 와인과 비밀 도구처럼 시도해 보았지만 작동하지 않습니다

gsettings set org.gnome.Vino vnc-password $(echo -n "myPassword"|base64)
secret-tool store --label='Label' {attribute} {value}

비밀 도구의 문제는 Gnome 키링의 원래 항목에 "속성"과 "값"이 없지만 이러한 항목은 비밀 도구에 필수이므로 항목을 1:1로 재현할 수 없다는 점일 수 있습니다.

그래서: CLI를 통해 gnome-screen-sharing의 비밀번호를 올바르게 설정하는 방법을 아는 사람이 있습니까?

답변1

그래서 몇 시간 동안 연구한 끝에 만들었습니다.

귀하의 지시가 정확합니다. 그러나 GNOME은 VNC 연결을 허용하지 않습니다.화면이 잠겨 있는 경우. 따라서 loginctl list-sessions귀하를 사용하여 세션을 나열하십시오. 그래픽 항목(식별자 또는 이와 유사한 항목이 있어야 함)을 찾고 위치 열을 사용하여 seat0잠금을 해제합니다. 확인을 위해 할 수 있고 가져야 합니다. 완료되면 VNC를 통해 로그인해 보세요. 나에게는 즉시 효과가 있었습니다.loginctl unlock-session XXIDlist-sessionsloginctl show-session XLockedHint=no

요약하면 모든 단계는 다음과 같습니다.

gsettings set org.gnome.desktop.remote-desktop.vnc auth-method 'password'
gsettings set org.gnome.desktop.remote-desktop.vnc view-only false
echo -n 'password' | secret-tool store --label="GNOME Remote Desktop VNC password" "xdg:schema" "org.gnome.RemoteDesktop.VncPassword"
systemctl --user start gnome-remote-desktop.service
loginctl unlock-session $(loginctl --no-legend --value list-sessions | awk '/seat/ { print $1}')

네트워크 인터페이스나 다른 것을 허용할 필요가 없습니다.

답변2

Wayland가 비활성화된 우분투 22.04에서 작동하는 스크립트를 정리하고 분기했습니다.

https://gist.github.com/Pieter81/78a3a087f142d712951f8352bb9ab2ba

관련 정보