A questão central é: QUALQUER sessão do gnome que não está sentada em cima de uma tela física / nativa real - ou sombreando aquela tela (ou seja, o modo de sombra do NXserver) - tem privilégios defeituosos. Mesmo quando executado como root!
Quaisquer comentários sobre uma maneira de corrigir o comportamento problemático para as sessões VNC / não-shadow NX?
Estou atualizando o meu servidor sem suporte Ubuntu depois de um longo tempo, e estou tendo muitos problemas que não me lembro de ter existido em versões anteriores do Ubuntu.
Alguns detalhes:
- Comecei com o ubuntu-11.04-server-amd64.iso e depois instalei o ubuntu-desktop nele.
- uname -a: Linux MiddleEarth 2.6.38-8-servidor # 42-Ubuntu SMP seg 11 de abril 03:49:04 UTC 2011 x86_64 x86_64 x86_64 GNU / Linux
- O hardware é Intel D920, 2GB Ram, gfx é um nvidia sem ventilador 6600, 3xGigabit, 1x100mbit, sem monitor, teclado, mouse conectado.
Round 1
Enquanto eu estava fazendo o teste / configuração com um monitor conectado , tudo estava aveludado, tanto na frente daquele monitor quanto no VNCing da minha máquina (no vino).
Sem um monitor, porém, surgem problemas:
[Não resolvido / eliminado]
O próprio primeiro problema era o vino ser teimoso e não gostar de carregar antes / durante o GDM. Mas como este é um sistema sem cabeçalho, eu realmente não preciso dele para começar com X por padrão (ou seja, alterar o nível de inicialização) de qualquer maneira, de modo que é um pouco discutível. No entanto, lembro-me claramente que este é muito fácil fazer em uma versão mais antiga do Ubuntu (v9.04 eu acho). E funcionou bem; mas não mais!? ... de qualquer forma eu deixei cair essa ideia completamente.
[Resolvido]
Em seguida, foi Unity / efeitos messing VNC (resolvido por trapacear ).
[não resolvido]
Eu originalmente mudei para o NXserver, esperando que talvez os problemas a seguir sejam problemáticos ou não, mas não tem tanta sorte. (Nota: leia round2)
Ao remoting no via VNC (ou NXserver) minha conta de usuário perde a capacidade de montar / desmontar HDDs.
Ao remoting no via VNC (ou NXserver), minha conta de usuário não pode acessar algumas opções de configuração privilegiadas,
alguns exemplos:
- não pode fazer nada (por exemplo, 'adicionar' um usuário ou 'configurações avançadas') em "Sistema - & gt; Administração - & gt; Usuários e grupos".
- não pode usar "desbloquear" em "Sistema - & gt; Administração - & gt; Tela de login".
- O gparted não consegue obter informações sobre os sistemas de arquivos.
- etc. (vários outros diálogos admin / config também não funcionam corretamente)
Eu só posso imaginar que isso tem algo a ver com privilégios de usuário não sendo atribuídos corretamente quando um dispositivo de monitor físico real não está conectado.
A razão 'PORQUE' isso acontece no ubuntu 11.04, quando está sem cabeça, me escapa; Eu não me lembro desse comportamento em versões anteriores do Ubuntu.
Observe que o problema de montagem do disco rígido não é problema para os hdds internos / estáticos (acabei de adicioná-los ao fstab, pois eles são estáticos). Mas realmente uma grande dor para mídia USB removível.
O resto dos problemas, eu não descobri como consertar ...
Eu sei o que você está pensando ... faça o login no ssh, sudo su e execute o vncserver sob a raiz completamente?
Surpresa surpresa! O gui do root está quebrado também: o gparted não consegue obter informações, o usuário e os grupos estão totalmente desabilitados (esse é um comportamento diferente do meu usuário comum). Estranhamente, o programa de administração da tela de login parece funcionar bem.
Round 2
(NOTA: Eu não sei se isso fez ou não fez diferença no resultado.) Em algum momento entre a 1ª rodada e a 2ª rodada, eu apliquei as mudanças mencionadas nas postagens 21 e 24 em este tópico )
As sessões regulares de tightvnc / NXServer têm o mesmo comportamento, MAS ...
[Solução parcial / O problema real ainda está lá]
Nas configurações de conexão do NXClient, quando escolho o modo 'sombra' (a sombra o anexa à exibição nativa, ou seja, sombreamento da área de trabalho) ...
Tudo funciona perfeitamente nesta sessão!
Uma coisa que eu notei é que ele imediatamente me pede uma senha de chaveiro ... talvez toda a bagunça tenha algo a ver com o sistema de chaveiro que o gnome usa?
Mas, se eu me conectar com uma conexão NX regular (não sombreada) ou com um vnc normal, ele volta a ter os mesmos problemas.
P.S. Houve um par de dias inbettween quando eu escrevi round1 e round2 (eu estava mantendo-o em um arquivo txt localmente). Eu estava testando várias sugestões para ver o que funcionaria, e é por isso que eu não sei ao certo se isso é xorg.conf VNC device edit ou aquele nomodeset fez a diferença.
[EDIT 2011-06-10]
NXServer e GDM
No momento em que escrevi, configurei o sistema para login automático, motivo pelo qual a conexão de sombra simplesmente funcionava. Quando mais tarde eu desabilitei isso e reiniciei o sistema, o NX deu um erro, mas com um pouco de Googling eu encontrei este tópico
Estes são os & amp; uncommenting & amp; alterações que fiz no meu /usr/NX/etc/server.cfg:
EnableAdministratorLogin = "1"
EnableSessionShadowing = "1"
EnableInteractiveSessionShadowing = "1"
EnableSessionShadowingAuthorization = "0"
EnableDesktopSharing = "1"
EnableInteractiveDesktopSharing = "1"
EnableFullDesktopSharing = "1"
EnableAdministratorDesktopSharing = "1"
EnableDesktopSharingAuthorization = "0"
EnableSystemDesktopSharingAuthorization = "0"
(Se fosse uma rede mais pública, ou seja, universidade / grande escritório, provavelmente usaria configurações um pouco mais restritas, mas elas me servem bem.)
Após a reinicialização, eu efetuei login com o nxclient na configuração 'shadow' (exibição original) da área de trabalho e obtive o GDM! : D
Infelizmente, a área de transferência não funciona na sessão 'shadow' (funciona nos outros / regulares)
[EDITAR 2011-06-11]
Deparei com o Xvfb mas ele tem os mesmos problemas quando usado assim:
Xvfb :2 -ac -screen 0 1280x1024x32 -pixdepths 8 24 2>&1 >/dev/null &
export DISPLAY=:2
gnome-session --session=2d-gnome 2>&1 >/dev/null &
x11vnc --display :2 --passwd blahblah