2010-09-03 16:24:34 +0000 2010-09-03 16:24:34 +0000
17
17

Wie kann die Bildschirmauflösung des VNC-Servers geändert werden, ohne ihn neu zu starten?

Ist es möglich, die Auflösung des Betrachters zu ändern, die beim Starten des VNC-Servers mit dem Geometrie-Befehlszeilenargument angegeben wurde? Ich habe einen vncserver für einen Breitbildmonitor konfiguriert, möchte ihn aber auf einem 1024x768-Bildschirm anzeigen.

Antworten (7)

11
11
11
2010-12-05 19:18:56 +0000

Dieselbe Frage wurde vor einiger Zeit zum Thema Stapelüberlauf gestellt: https://stackoverflow.com/questions/15816/changing-the-resolution-of-a-vnc-session-in-linux

Die akzeptierte Antwort von Nathan Fellman:

Real VNC server 4.4 beinhaltet Unterstützung für Xrandr, was eine Größenänderung des VNC ermöglicht. Starten Sie den Server mit:

vncserver -geometry 1600x1200 -randr 1600x1200,1440x900,1024x768

Dann ändern Sie die Größe mit:

xrandr -s 1600x1200
xrandr -s 1440x900  
xrandr -s 1024x768
10
10
10
2010-09-04 09:22:27 +0000

Der UltraVNC viewer unterstützt auto scaling , so dass er die Größe des Anzeigefensters automatisch anpasst, um den gesamten Bildschirm des Remote-Servers anzuzeigen.

Update

Sowohl RealVNC als auch TightVNC Anzeige/Desktop-Skalierung.

3
3
3
2013-04-26 07:00:41 +0000

Wenn Sie die Einstellung ändern müssen, ohne den VNC-Server neu zu starten, hatte ich gute Ergebnisse mit:

vncconfig -set RandR="1024x768,1600x900"

und dann mit xrandr, um die Auflösung zu ändern, wie fgregg vorschlug:

xrandr -s 1024x768
xrandr -s 1600x900
1
1
1
2019-09-22 22:43:57 +0000

Mit TigerVNC Windows VNC-Client (Viewer) funktioniert die automatische Auflösung sofort nach dem Auspacken. Sie brauchen nirgendwo etwas einzustellen, weder auf dem Client noch auf dem Server. Wenn Sie zum ersten Mal eine Verbindung zu Ihrem Server herstellen, wird die Auflösung auf das eingestellt, was auf der Serverseite voreingestellt ist, aber Sie können sie leicht ändern, indem Sie einfach die Größe des Client-Fensters ändern; auf jede beliebige Auflösung, jede verrückte, nicht standardmäßige Ad-hoc-Auflösung, die Sie wollen. Die Auflösung des entfernten Desktops, sagen wir KDE, folgt der Auflösung Ihres Client-Fensters problemlos.

Überprüfen Sie, ob “Größe der entfernten Sitzung auf das lokale Fenster ändern” eingestellt ist. Es sollte standardmäßig eingestellt sein.

Bitte verwechseln Sie die automatische Änderung der Auflösung nicht mit Bilddehnung, alternativ Automatisches Skalieren genannt. Dieses Caling ist praktisch nutzlos, es sei denn, Sie sind sehbehindert. Es funktioniert wie Zoomen oder Glas schauen in gängigen Bitmap-Editoren. Es macht die Pixel einfach größer (oder kleiner), indem das Ausgabebild gedehnt wird. Es verringert die Bildqualität erheblich, wenn Sie das Bild stark strecken.

Was Benutzer normalerweise wollen, ist eine echte Änderung der Auflösung der Fernsitzung. Und das ist es, worüber ich vorhin gesprochen habe, und das ist es, was der TigetVNC-Client kann, wenn der Server die entsprechende Funktionalität bietet. Die automatische Auflösung hält das Bild bei jeder Größe scharf. Der Nachteil ist, dass dadurch auch die Netzwerkbandbreite erhöht wird.

Bis jetzt habe ich festgestellt, dass nur TigerVNC in der Lage ist, eine automatische Auflösung durchzuführen. Ich habe TightVNC (Open Source), RealVNC (freie Version) und UltraVNC (Open Source) getestet und hatte mit keinem von ihnen Glück, sie bieten bestenfalls eine nutzlose Auto-Skalierung.

TigerVNC Homepage: https://tigervnc.org/ TigerVNC-Quellen: https://github.com/TigerVNC/tigervnc TigerVNC veröffentlicht auf GitHub: https://github.com/TigerVNC/tigervnc/releases TigerVNC-Binärdateien zum Herunterladen: https://github.com/TigerVNC/tigervnc/releases TigerVNC-Binärdateien zum Herunterladen: https://bintray.com/tigervnc/stable/tigervnc/1.9.0

Wenn Sie nur den Viewer wünschen, dann laden Sie nur den Viewer herunter, wie [ vncviewer64-1.9.0.exe ]&003, also nur den Viewer ohne gebündelten VNC-Server. Hüten Sie sich davor, daß mit TigerVNC der Serverdienst automatisch, still und leise im Hintergrund startet, was ich als mögliche Sicherheitsbedrohung sehr verabscheue.

Mein Server wird ohne -randr-Einstellung betrieben und nur mit der einfachen -geometry 1024x768-Einstellung. Diese niedrige Auflösung wird nur bei der ersten Verbindung verwendet, aber dann können Sie die Auflösung ändern, indem Sie einfach die Größe des Client-Fensters ändern. Wenn Sie neugierig sind, hier ist mein vollständiger VNC-Serverbefehl:

/usr/bin/Xvnc -log *:syslog:30,TcpSocket:syslog:-1 -inetd -MaxDisconnectionTime=5 -securitytypes=none -displayfd 10 -geometry 1024x768 -AllowOverride=Desktop,AcceptPointerEvents,SendCutText,AcceptCutText,MaxDisconnectionTime,MaxConnectionTime,MaxIdleTime,QueryConnect,QueryConnectTimeOut,AlwaysShared,NeverShared,DisconnectClients,SecurityTypes,Password,PlainUsers -query localhost -once -desktop New session -extension MIT-SHM

Laut openSuse-Paketbeschreibung ist xorg-x11-Xvnc - der openSuse-VNC-Server - auf TigerVNC-Code aufgebaut. In meinem Fall spricht also der TigerVNC-Client mit dem TigerVNC-Server, vielleicht ist das der Grund, warum alles so nahtlos ist :)

Meine Client-Einrichtung: TigerVNC-Client 1.9.0 (Windows) Meine Server-Einrichtung: openSuse 15.1, xorg-x11-Xvnc 1.9.0, vncmanager 1.0.2, GDM, KDE Plasma.

0
0
0
2018-07-15 06:44:35 +0000

Ich habe eine offizielle Antwort an den VNC-Kundendienst erhalten.

Die Kurzversion lautet: nein, Sie können die Remote-Auflösung nicht so ändern, dass sie automatisch der Auflösung des lokalen vnc-Controller-Fensters / der Bildschirmauflösung entspricht.

Man sagte mir, das liege daran, dass RDP eine echte Anmeldesitzung ist, so dass sich der Bildschirm so verhält, wie Sie ein gewöhnlicher Benutzer in der kontrollierten Anlage sind.

VNC spiegelt einfach den Bildschirm. Und das ist keine schlechte Sache, weil Sie die RDP-Sitzung nicht gemeinsam nutzen können, aber Sie können VNC gemeinsam nutzen

Ich schlug vor, eine Konfiguration auf dem VNC-Server zu erstellen, um den Bildschirm ändern zu können, weil ich weiß, dass die Windows-API es Dritten erlaubt, die Bildschirmauflösung programmgesteuert einzustellen.

Dann werde ich warten….

0
0
0
2011-09-20 21:00:13 +0000

Mit TightVNC (mindestens), wenn der Server (Windows) die Bildschirmauflösung ändert, ändert sich der Client automatisch, um die neue Auflösung anzupassen.

0
0
0
2017-04-20 20:52:12 +0000

Bei TightVNC klicken Sie auf das Zahnradsymbol (Einstellungen) und ändern Sie Ihre Bildqualität auf “Hoch”, und es funktioniert einwandfrei.