VNC não funciona com compiz


10

atualmente vnc (com placas de vídeo nvidia gfx) não funciona com compiz ..

você corrigirá isso antes do lançamento do 11.04, para que as pessoas possam usar o vnc com a área de trabalho padrão?


VNC no meu computador e na nvidia - usando a área de trabalho o tempo todo. Qual problema você está tendo?
Oli

1
O Compiz já está ativado na área de trabalho padrão e é desde o Ubuntu 7.10 (!)
8128

Eu suspeito que este é o bug que está me afetando: bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/353126 , no entanto, eu nunca vi o compiz trabalhar com o vino em nenhuma das minhas máquinas e ainda não o faz (mesmo no maverick )

1
É necessário especificar -noxdamage no servidor x11vnc se você deseja executar o Compiz. Se você estiver usando o servidor Vino interno (sistema / preferências / Área de Trabalho Remota), não faço ideia - nunca usei. O Vino não possui muitos recursos que eu uso (no servidor, dimensionando o principal).
Scaine

Como solicitado, Jorge.
Scaine

Respostas:


7

O servidor VNC atual em Sistema / Preferências / Área de trabalho remota é chamado vino-server. No momento, ele não suporta operação quando o Compiz (Desktop Effects) está ativado.

Para contornar isso, você deve usar um servidor vnc de substituição. Eu uso x11vnc.

sudo apt-get install x11vnc

Fundamentalmente, você deve especificar -noxdamage ao iniciar o servidor x11vnc se pretender executar o Compiz.

Primeiro, inicialize x11vnc com uma senha:

x11vnc -usepw

e siga as instruções. Então aqui está um exemplo de como eu executo meu servidor vnc:

x11vnc -usepw -forever -noxdamage -scale 4/5 -avahi -nolookup -q

  • avahi significará que o servidor se anunciará usando avahi (multicast dns)
  • escala 4/5 significa que uma tela de 1900x1200 cabe em uma tela de 1280x1024.
  • nolookup significa que o servidor não tentará procurar o cliente. Sem longas pausas.
  • q suprimirá parte da saída do console. Ou use -logfile.
  • noxdamage fará com que seus efeitos de compiz funcionem.
  • para sempre significa apenas que o servidor continuará sendo executado depois que um cliente for desconectado.

Se você fizer um "man x11vnc", verá que há várias opções adicionais. Mas os especificados acima devem fazer você correr.

Se você precisar executar isso na inicialização, eu pessoalmente o executo em /etc/rc.local, mas tenho certeza de que existem maneiras melhores. EDIT: E existem maneiras mais fáceis, detalhadas neste site: Como executar scripts na inicialização? . Portanto, suponho que a mais fácil seja a opção crontab -e, mas você também pode salvar o comando como um script em algum lugar e depois especificá-lo nos aplicativos de sistema / preferências / inicialização.


Também preciso impedir vino-servera inicialização?
HDave

Nunca me preocupei em mudar o servidor vino, o HDave. Além disso, até onde eu sei, o 12.04 não é mais fornecido com o vino-server. Enquanto o PC ao qual você está tentando se conectar estiver ouvindo corretamente no 5900, você estará bem. Verifique executando netstat -nlpe procurando uma linha que diz 0.0.0.0:5900 com a palavra "LISTEN" na mesma linha.
Scaine

Executando o 12.04 aqui e netstat -nlprelatando a vino-serverescuta na porta 5900. AFAIK Não fiz nada para que isso acontecesse ... novamente com todas as brincadeiras que já fiz ... Com certeza, o vino-server não aparece em /etc/initnenhum configuração inicial que eu já vi.
HDave

Sim, isso é estranho. Eu tenho um laptop bastante limpo ao meu lado executando o Ubuntu 12.04 de 32 bits e certamente não está ouvindo no 5900. Você pode ter que matar o vino-server antes de tentar o x11vnc, caso contrário, o x11vnc talvez não consiga se conectar à porta correta.
Scaine

2

a opção nodamage funciona, mas, a menos que você esteja em uma rede muito rápida, é uma péssima idéia - força tudo a atualizar o tempo todo, mesmo que não mude, o que utiliza uma enorme quantidade de largura de banda.


2

Corrigindo a ótima resposta do @ Scaine, é possível usar vino-servercom os efeitos de compiz ativados.

Aqui está como desabilitar xdamageno vino e, assim, fazer o VNC funcionar com o compiz:

gsettings set org.gnome.Vino disable-xdamage true

Feito!

Agora você pode usar o "Compartilhamento de área de trabalho" padrão do Ubuntu usando mesmo com o Unity 3D. Não é necessário instalarx11vnc

Mas, como outros já apontaram, desabilitar o xdamage causa enorme tráfego de rede. Não é um grande problema em uma rede local, mas o desempenho pode sofrer se o controle remoto for feito na Internet.


Às vezes, me pergunto se o compartilhamento remoto é realmente uma reflexão tardia no ubuntu-land. Realmente deve funcionar imediatamente.
Antony

@Antony: nem o Vino nem o Compiz são exclusivos do Ubuntu, então não é realmente culpa deles. E o bug está relacionado com drivers proprietários de vídeo, que é completamente fora das mãos para Ubuntu (ou qualquer outra distro)
MestreLion

1

Se você ativar os efeitos visuais da área de trabalho (definido como Extra) com o driver da nvidia proprietário, vnc na máquina FUNCIONA, mas a tela fica congelada após o login inicial e você não consegue ver nada (exceto uma imagem congelada). Funciona corretamente com os drivers de código-fonte aberto (pelo menos para a ATI).


0

Estou usando um mac book pro para controlar minha área de trabalho do ubuntu. Parei a tela congelada entrando no centro AMD Catalyst Control e, em opções de exibição, fui para a guia "Sem lágrimas" e depois ativei o Desktop sem lágrimas para reduzir as lágrimas.

Começou a trabalhar logo depois disso.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.