Como alterar a resolução da tela virtual no Ubuntu (conectando via VNC sem display real conectado)?

12

Eu tenho um servidor Ubuntu sem acesso físico, apenas via ssh / vnc.

Ele está preso em uma resolução de 1680x1050 e, nas configurações de exibição do sistema, os menus são desativados, pois não há nenhum monitor real detectado conectado.

Eu preciso diminuir a resolução para, e. 800x600.

Quando eu tento:

$ xrandr --output VGA1 --mode 800x600

Estou recebendo:

xrandr: cannot find mode 800x600

Os resultados são os mesmos, mesmo que eu tente primeiro:

$ xrandr --newmode "800x600_60.00"   38.25  800 832 912 1024  600 603 607 624 -hsync +vsync

Os adereços são:

$ xrandr --prop
Screen 0: minimum 320 x 200, current 1680 x 1050, maximum 4096 x 4096
VGA1 disconnected 1680x1050+0+0 (normal left inverted right x axis y axis) 593mm x 371mm
  1680x1050 (0x43)  146.2MHz
        h: width  1680 start 1784 end 1960 total 2240 skew    0 clock   65.3KHz
        v: height 1050 start 1053 end 1059 total 1089           clock   60.0Hz

Alguma idéia?

    
por GJ. 29.08.2010 / 23:24

3 respostas

10

Parece que você está usando o servidor vino para compartilhar a área de trabalho via VNC. Embora eu ache que você pode mudar o seu /etc/X11/xorg.conf, ou seja qual for o arquivo de configuração do X, eu tenho outra sugestão. Deixe a configuração X sozinha e crie outra sessão para o seu vnc.

Instalar o vnc

$ sudo apt-get install vnc4server

Crie scripts vnc para iniciar e parar

vnc.sh

#!/bin/sh

vncserver :12 -name "My-Server" -geometry 1600x1100

vnc-kill.sh

#!/bin/sh

vncserver -kill :12

12 é apenas um número de exibição arbitrário. Você usará isso quando se conectar ao servidor. Pode ser qualquer número, exceto 0. Isso é o que o servidor vino usa por padrão (eu acho). Não esqueça de chmod + x os scripts.

Opcional: Inicie a sessão vnc na inicialização

Adicione o vnc.sh ao seu /etc/rc.local para que a sessão comece quando o computador for iniciado. sudo vi /etc/rc.local e adicione isso ao final antes da "saída 0"

su - YourUserName -c "/home/YourUserName/bin/vnc.sh"

Eu corro o servidor vnc como um usuário aqui. Eu não quero que o servidor seja executado no contexto raiz. Substitua o "YourUserName", é claro. Alternativamente, você não precisa colocar isso aqui, você poderia ssh in e executar o script "vnc.sh" manualmente. Sua chamada.

Defina sua senha do vnc

(isso é separado da outra senha do desktop vnc)

$ vncpasswd

Edite seu arquivo de sessão vnc

$ vi ~/.vnc/xstartup

Comente tudo e coloque isso no final

gnome-session &

Teste

Execute o script vnc.sh e conecte-se a partir de outro computador.

vncviewer.exe -connect Server:12
    
por 11.09.2010 / 06:09
1

Você poderia considerar alterar a resolução no servidor VNC? Não tenho certeza da sua configuração, mas se o servidor VNC estiver na máquina virtualizada, você pode verificar o ponto de instanciação do vncserver e alterar o sinalizador -geometry ?

Alternativamente, eu olharia para o xorg.conf e adicionaria o modo que você está procurando, pois xrandr está dizendo que não está disponível. Este artigo cobre o básico da edição do xorg.conf

    
por 11.09.2010 / 00:33
1

Consigo alterar a resolução do meu vncserver à vontade com o seguinte comando:

vncconfig -set randr=1552x1175 ; xrandr -s 1552x1175

(HT Matt D.)

    
por 15.12.2010 / 20:04