Linux – Error on changing the resolution of a vnc session in linux on the fly

linuxvncvncserverxrandr

I connect to my workstation which is a linux box(Red Hat Linux) from a my laptop(windows 7 machine) through RealVNC . When I am work I use a docking station and the resolution of it is quite high and my laptop has lower resolution . So when I switch between my monitor and my laptop I need to restart vncserver everytime with the proper geometry. Searching on the internet I landed on this answer on stackoverflow.com which describes way to assign a different geometry on the fly . The key here is the randr argument while starting vncserver . So the first thing I did is to ensure that Xrandr is installed on my linux box :

which xrandr 

This gives the following output :

 /usr/bin/xrandr

Next I tried running the server with the command :

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

But the server didn't start . Next I started the server with only the -geometry argument and without the randr argument as given in the second answer .

Next from the terminal I issued the xrandr command and got the following error :

Xlib:  extension "RANDR" missing on display ":1.0".

What does the above error mean and what am I missing here ?

Best Answer

On my Ubuntu server, it wasn't working either with the -randr parameter, but it works great by using several times the -geometry parameter. Give it a try.

So you would enter:

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

And after, you use the xrandr command to change the resolution.

Related Question