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

Come modificare la risoluzione dello schermo del server VNC senza riavviarlo?

È possibile modificare la risoluzione del visualizzatore specificata durante l'avvio del server vnc con l'argomento della riga di comando della geometria? Ho un vncserver configurato per un monitor wide screen ma voglio visualizzarlo su uno schermo 1024x768.

Risposte (7)

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

Questa stessa domanda è stata posta qualche tempo fa, in occasione di uno stack overflow: https://stackoverflow.com/questions/15816/changing-the-resolution-of-a-vnc-session-in-linux &003

La risposta accettata da Nathan Fellman:

Il server VNC reale 4.4 include il supporto per Xrandr, che permette il ridimensionamento del VNC. Avviare il server con:

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

Poi ridimensionare con:

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

Il UltraVNC viewer supporta autoscaling , quindi ridimensionerà automaticamente la finestra di visualizzazione, per visualizzare l'intero schermo del server remoto.

Aggiorna

Sia RealVNC che TightVNC display/desktop scaling.

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

Se avete bisogno di cambiare l'impostazione senza riavviare il server VNC, ho avuto buoni risultati con:

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

e poi usando xrandr per cambiare la risoluzione come suggerito da fgregg:

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

Con TigerVNC Windows VNC client (visualizzatore) la risoluzione automatica funziona fuori dagli schemi. Non è necessario impostare nulla da nessuna parte, sul client o sul server. Quando ci si connette per la prima volta al server, la risoluzione viene impostata su qualsiasi cosa sia preimpostata sul lato server, ma si può facilmente cambiare semplicemente ridimensionando la finestra del client; a qualsiasi risoluzione, qualsiasi pazza, non standard, risoluzione ad-hoc che si desidera. La risoluzione del desktop remoto, diciamo KDE, segue senza problemi la risoluzione della finestra client.

Verifica che “Ridimensiona sessione remota alla finestra locale” sia impostato. Dovrebbe essere impostato di default.

Non confondete la modifica automatica della risoluzione con image stretching, in alternativa chiamato autoscaling. Questo caling è praticamente inutile, a meno che non siate ipovedenti. Funziona come zoom o vetro nei popolari editor di bitmap. Rende solo i pixel più grandi (o più piccoli) allungando l'immagine in uscita. Diminuisce significativamente la qualità dell'immagine, se si allunga molto.

Ciò che gli utenti di solito vogliono è un reale cambiamento di risoluzione della sessione remota. E questo è ciò di cui parlo prima ed è ciò di cui è capace il client TigetVNC, a condizione che il server abbia funzionalità corrispondenti. La risoluzione automatica mantiene l'immagine nitida a qualsiasi dimensione. Il lato negativo è che aumenta anche la larghezza di banda della rete.

Finora ho scoperto che solo TigerVNC è in grado di auto-risoluzione. Ho testato TightVNC (open source), RealVNC (versione gratuita) e UltraVNC (open source) e non ho avuto fortuna con nessuno di questi, forniscono un'inutile auto-scalatura al meglio.

TigerVNC homepage: https://tigervnc.org/ TigerVNC sources: https://github.com/TigerVNC/tigervnc TigerVNC rilascia su GitHub: https://github.com/TigerVNC/tigervnc/releases (https://bintray.com/tigervnc/stable/tigervnc/1.9.0) TigerVNC binari da scaricare: https://bintray.com/tigervnc/stable/tigervnc/1.9.0 &003

Se si desidera solo visualizzatore, allora scaricare solo visualizzatore, come [ vncviewer64-1.9.0.exe ]&003, cioè solo visualizzatore senza server VNC in bundle. Attenzione che con il servizio server TigerVNC si avvia automaticamente, silenziosamente, in background, che detesto fortemente come una possibile minaccia alla sicurezza.

Il mio server viene eseguito con nessuna impostazione -randr a tutti e solo base -geometry 1024x768. Questa bassa risoluzione viene utilizzata solo quando ci si connette per la prima volta, ma poi si può cambiare la risoluzione semplicemente ridimensionando la finestra del client. Se siete curiosi, ecco il mio comando completo del server VNC:

/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

Secondo la descrizione del pacchetto openSuse, xorg-x11-Xvnc - il server VNC openSuse - è costruito su codice TigerVNC. Quindi nel mio caso il client TigerVNC parla con il server TigerVNC, quindi forse è per questo che è tutto così semplice :)

La mia configurazione del client: TigerVNC client 1.9.0 (Windows) Il mio setup del server: 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

Ho ricevuto una risposta ufficiale scrivendo al servizio clienti VNC.

La versione breve è: no, non è possibile modificare la risoluzione remota per far corrispondere automaticamente la finestra del controller vnc locale / risoluzione dello schermo.

Mi hanno detto che è perché RDP è una vera e propria sessione di login, quindi lo schermo si comporta come un utente comune nel sistema controllato.

VNC semplicemente rispecchia lo schermo. E non è una brutta cosa perché non si può condividere la sessione RDP ma si può condividere VNC

Ho suggerito di creare una configurazione sul server vnc per consentire il cambio di schermo perché so che le API di windows permettono a sw di terze parti di impostare programmaticamente la risoluzione dello schermo.

Poi aspetterò…..

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

Con TightVNC (almeno) se il server (windows) cambia la risoluzione dello schermo, il client cambia automaticamente la nuova risoluzione.

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

Per TightVNC, cliccate sull'icona dell'ingranaggio (impostazioni) e modificate la qualità dell'immagine su “Alta” e funziona bene.