Chcę dynamicznie zmieniać rozdzielczość / geometrię mojej sesji VNC bez wpływu na działające w niej programy.
Odniosłem się: zmiana rozdzielczości sesji VNC w systemie Linux . Nie mam uprawnień roota do aktualizacji nowszej wersji vncserver, więc następujące polecenie nie działa od teraz:
vncserver -geometry 1280x1024 -randr 1280x1024,1280x800
Na razie za każdym razem, gdy chcę zmienić rozmiar ekranu z jednego monitora na drugi, zabijam sesję i uruchamiam ją ponownie ze zmodyfikowaną -geometry
opcją. Z tego powodu muszę zgubić znajdujące się w nim programy.
Czy jest jakiś sposób włamać się do pliku, który przechowuje geometrię i zmienić wartości zmiany rozdzielczości? Nie mogłem znaleźć takiego pliku. W moim katalogu domowym widzę poniższe pliki:
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
Zawartość xstartup
pliku nie pomaga:
#!/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 &
... tutaj xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
linia pozostaje stała dla dowolnej rozdzielczości.
[Uwaga: Widzę, że xrandr
jest zainstalowany na maszynie z systemem Linux.]