Linux에서 randr 없이 vncserver의 화면 해상도/형상 변경

Linux에서 randr 없이 vncserver의 화면 해상도/형상 변경

내부에서 실행되는 프로그램에 영향을 주지 않고 VNC 세션의 해상도/기하구조를 동적으로 변경하고 싶습니다.

나는 다음을 언급했다:Linux에서 VNC 세션 해상도 변경. 최신 vncserver 버전을 업데이트할 수 있는 루트 권한이 없으므로 현재 다음 명령이 작동하지 않습니다.

vncserver -geometry 1280x1024 -randr 1280x1024,1280x800

지금은 한 모니터에서 다른 모니터로 화면 크기를 변경하고 싶을 때마다 세션을 종료하고 수정된 -geometry옵션으로 다시 시작합니다. 이로 인해 그 안에 있는 프로그램을 풀어야 합니다.

지오메트리를 저장하는 파일을 해킹하고 해상도 변경 값을 변경할 수 있는 방법이 있습니까? 그런 파일을 찾을 수 없었습니다. 내 홈 폴더에 아래 파일이 표시됩니다.

mgandhi@starbase:~/.vnc$ ll
total 12
-rwxr-xr-x 1 mgandhi bc  334 Jun 25 10:32 xstartup
-rw------- 1 mgandhi bc    8 Jun 25 10:32 passwd
-rw-r--r-- 1 mgandhi bc    6 Jun 25 11:08 starbase.radisys.com:23.pid
-rw-r--r-- 1 mgandhi bc 1664 Jun 25 11:08 starbase.radisys.com:23.log

파일 내용이 xstartup도움이 되지 않습니다:

#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

... 여기서 xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &선은 어떤 해상도에서도 일정하게 유지됩니다.

xrandr[참고: Linux 시스템에 설치되어 있는 것으로 보입니다 .]

답변1

"해킹" 솔루션: 지정된 지오메트리 없이 vncserver를 시작합니다.

vncserver :1

그런 다음 vnc에 연결하고 Fedora에서 설정>디스플레이>알 수 없는 0"으로 이동하여 이렇게 즉시 해상도를 변경합니다. (DX)를 입력하는 대신 몇 번 클릭하면 되지만 쉽습니다.

답변2

Fedora에 대한 위의 답변은 저(RedHat Enterprise)에게는 효과가 없었습니다. 다음 단계에서 필요한 것을 달성할 수 있었습니다.

1) VNC 세션(기존)에 로그인합니다.

2) 터미널을 열고 다음을 입력합니다: xrandr -s 1920x1080 (또는 지원되는 다른 기하학/디스플레이*)

지원되는 디스플레이/해상도를 보려면 다음을 입력하세요.

xrandr(인수 없음)

쉽고, 화려할 것도 없습니다!

답변3

systemd 구성 파일(또는 적용 가능한 시작 스크립트)에서 기하학 옵션을 설정하십시오. ~ 이 예는 Fedora 28에서 작동합니다(selinux 파일 설명자가 수정되었다고 가정).

USERNAME을 실제 사용자 이름으로 바꿉니다.

cat /etc/systemd/system/vncserver@\:1.service

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=USERNAME

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %i -geometry 1280x1024
PIDFile=/home/USERNAME/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

답변4

$HOME/.vnc/xstartup은(는) 당신이 찾고 있는 파일이고 예, 거기에서 형상을 설정할 수 있습니다. 세션을 중단하지 않고 다시 연결하면 조정되어야 합니다(100% 확실하지는 않지만 꽤 확실함).

관련 정보