Tema para a área de trabalho esquece?

79

Estou executando o Ubuntu no VirtualBox (em um host do Windows 7). Várias vezes, agora, a barra de menus de nível superior, a barra de tarefas - e aparentemente todas as caixas de diálogo do sistema - esqueceram o tema "Ambiente" pronto para uso, conforme o qual foram instalados quando eu instalei o sistema. As legendas das janelas ainda preservam o tema, mas praticamente nada mais faz.

Pesquisei alta e baixa no Google para obter ajuda com esse problema. Tudo o que encontrei sugere executar algumas redefinições do gconf ou excluir .gconf * .gnome * e outros diretórios similares. Eu segui todos esses conselhos e nada funciona. Ainda tenho uma aparência 3D cinza e chata no estilo Windows-95. Em ocasiões anteriores, depois de muita bagunça, desisti e reinicializei a instância da VM e fiquei agradavelmente surpreso ao ver o tema "Ambiente" original restaurado em toda a interface do usuário, mas, invariavelmente, desaparece novamente algum tempo depois, geralmente após uma reinicialização, então eu nunca consigo descobrir o que fiz que quebrou.

Aqui está uma amostra do site do Ubuntu do que eu quero que pareça.

texto alternativo

E aqui está uma captura de tela do meu sistema como ele parece atualmente.

texto alternativo

Observe também que meus terminais GNOME normalmente têm uma aparência semi-translúcida roxa e, como pode ser visto na captura de tela, agora são apenas um branco fosco sólido.

Nesta última vez (ontem), tentar inúmeras combinações de todos os truques comuns e reiniciar várias vezes não o corrigiu, então aqui estou no SU imaginando:

Como recupero o tema pronto para o uso na área de trabalho do Gnome / Ubuntu, observando que a exclusão de todos os arquivos de configuração - como sugerido em muitos lugares online - falha em conseguir isso?

Pode ser útil saber que parece falhar depois que eu redimensiono a instância da VM, forçando a área de trabalho do Ubuntu a se redimensionar ou depois que eu brinco com as configurações do Compiz. Não consegui descobrir qual deles é e nem poderia ser. Dada a quantidade de dor que tive que fazer para recuperar as coisas normais (e como estou perdendo a forma de fazê-lo), ficou difícil isolar definitivamente a causa.

Marcelo Cantos
fonte

Respostas:

45

A resposta do @ zpletan levou a um pouco de busca, que rapidamente descobriu o que parece ser a causa raiz do meu problema. Está detalhado no Bug # 574296 do Ubuntu . Em resumo, meu sistema Core i7 com um SSD inicia tudo com intervalos suficientemente diferentes que o gnome-settings-daemon executa muito cedo, falha e me deixa principalmente com um tema GTK padrão.

Um sono curto /etc/xdg/autostart/gnome-settings-daemon.desktopcorrige:

Exec= bash -c "sleep 2; /usr/lib/gnome-settings-daemon/gnome-settings-daemon"
Marcelo Cantos
fonte
Está bem! Eu só achei que seria increaser melhor a validade de sua resposta: D
Marco Ceppi
2
+1, no entanto, devo observar que isso não funcionou o tempo todo para mim (era esporádico) ... veja minha resposta abaixo sobre como consegui algo que parece funcionar 100% do tempo.
TM.
22

Não consegui resolver esse problema com nenhuma das respostas sugeridas (a resposta atualmente aceita funcionava esporadicamente, mas geralmente não funcionava para mim). Tentei aumentar bastante o tempo de sono e ele ainda não estava funcionando de maneira consistente.

No entanto, uma das respostas apontou para um bug que rastreia esse problema, e eu encontrei um comentário sobre o bug que o resolveu para mim.

Aqui estão os bits principais:

Primeiro, crie um script bash (eu o nomeei /etc/xdg/autostart/gnomesettingsdaemonfix.sh)

#!/bin/bash

pid=$(pgrep gnome-settings-)

while [ -n "$pid" ];
do
  pid=$(pgrep gnome-settings-)
  sleep 0
done

exit 0

Verifique se ele é executável (execução chmod +x).

Então edite /etc/xdg/autostart/gnome-settings-daemon.desktop

Mude a Execlinha para:

Exec=bash -c '/etc/xdg/autostart/gnomesettingsdaemonfix.sh;/usr/lib/gnome-settings-daemon/gnome-settings-daemon'

Isso parece ter corrigido até agora para mim.

TM.
fonte
4
+1 Essa parece ser a melhor solução, onde, em vez de ajustar o tempo de sono, a condição da corrida é realmente tratada.
mindless.panda
1
Por que esse bug não foi corrigido? Se essa verificação simples pode corrigir o problema, por que um patch não foi feito?
Luke não tem nome
Eu acreditava que esta solução iria corrigir o meu problema, já que tenho um Core i3, mas não :( Meu gnomesettingsdaemonfix.shtem permissões 0777. Uma coisa que encontrei diferença no meu ubuntu 16 é que a Execlinha tinha () em usr/lib/gnome-settings-daemon/gnome-settings-daemon-localeexecvez de usr/lib/gnome-settings-daemon/gnome-settings-daemon. algo errado?
Ejaz
16

Pressione Alt + F2 (Executar Aplicativo) e execute o seguinte:

gksudo gnome-settings-daemon
zpletan
fonte
+1, @zpletan por me dar uma cutucada na direção certa. Quando executo essa via sudo gnome-settings-daemon, ele recupera o tema completo, mas não quero executá-la toda vez que reiniciar o sistema. Vou adicionar os erros que obtiver sem o sudo à minha pergunta. Talvez isso indique o que está errado.
Marcelo Cantos
Na verdade, isso não é necessário. O comentário de @ Jorge na minha resposta leva a uma pergunta que mostra exatamente a saída que estou vendo.
Marcelo Cantos
7

10.10 tem esse problema, mas normalmente acontece quando você instala o driver proprietário da nvidia. No entanto, a solução provavelmente também funcionará em uma máquina virtual.

Crie um arquivo de texto. Escreva nele

inclua "/usr/share/themes/Ambiance/gtk-2.0/gtkrc"
gtk-icon-theme-name = "ubuntu-mono-dark"

e salve-o em sua pasta pessoal, com o nome .gtkrc-2.0. Reiniciar.

Se ainda houver elementos errados (para mim, foi a fonte), você precisará adicionar essa alteração ao arquivo, no google, para obter um tutorial do gtk para as possíveis afinações.

rumtscho
fonte
+1, @rumtscho; Esta resposta traz de volta o tema completo. Parece uma solução alternativa, no entanto. Como um Ubuntu 10.10 intacto parece correto sem ele, por que esse arquivo é necessário?
Marcelo Cantos
Um Ubuntu primitivo vem apenas com drivers de vídeo de código aberto. O problema que você descreve é ​​um erro comum nos drivers de vídeo proprietários. Como são de código fechado, apenas a nVidia pode fornecer uma correção. Você pode removê-los e reverter para um driver de código aberto, mas perderá o Compiz e a aceleração 3D.
rumtscho
este parece ter corrigido isso no meu 10.10 instalar ... por agora
Nathan Schwermann
falei cedo demais, nas minhas próximas configurações de reinicialização foram perdidas novamente
Nathan Schwermann
@schwiz Para mim, funciona sempre - mas as configurações precisam ser salvas na pasta inicial da conta com a qual você está conectado no momento. Se você reiniciou e efetuou login como um usuário diferente, isso não funciona. Se você iniciar uma janela da GUI com o sudo, ela também não funcionará, pois possui as configurações do usuário root e não do usuário logado.
rumtscho
4

Estou procurando uma correção para esse problema há meses. Aparentemente, ninguém sabe o que causa isso. Este bug existe há anos e ninguém o corrigiu.

Às vezes, ocorre durante a inicialização com uma condição de corrida entre a primeira e a segunda instâncias do gnome-settings-daemon, e às vezes ocorre no meio de uma sessão de área de trabalho quando o gnome-settings-daemon para de funcionar ou trava.

A única solução alternativa que encontrei que parece corrigi-lo é digitar

killall gnome-settings-daemon
gnome-settings-daemon &

em um terminal em execução que deixo em aberto.

Fechar o terminal mata a instância em segundo plano do gnome-settings-daemon e a área de trabalho volta ao tema padrão (não o padrão do Ubuntu, mas o padrão do gnome). Portanto, eu executo o daemon em segundo plano e deixo o terminal em execução também porque o processo precisa de seu pai.

Cheryl
fonte
Você pode evitar manter uma abertura de terminal executando o Aplicativo de Execução (Alt + F2) e apresentando-o gksudo gnome-settings-daemoncomo argumento.
precisa saber é
4

Eu tive o mesmo problema e estava recebendo um erro no começo: Could not apply the stored configuration for monitors.

O arquivo foi removido: ~/.config/monitors.xmlre-logado e funcionou como uma luva.

topless
fonte
2
Isso funcionou para mim também! Para os leitores, acho que você deve prestar atenção a esta solução se tiver modificado recentemente (ou modificado e restaurado) seu xconfig ( /etc/X11/xorg.conf[.d]).
Severo Raz
2

Eu tenho o mesmo problema, sudo killall nautiluscorrige-o. (temporariamente)

Cova
fonte
Obrigado por comentar, @Pit, mas isso não fez nada por mim.
Marcelo Cantos
Eu tive o problema novamente hoje e tive que correr gnome-appearance-propertiespara corrigir o menu e depois killall nautiluscorrigir a aparência do nautilus.
Pit
1

Desculpe, mas minha sugestão anterior de usar '--sync' não é uma correção. Acontece que após algumas reinicializações, o problema é o mesmo.

Mas, esperançosamente, consegui capturar a seguinte saída do travamento do processo 'gnome-settings-daemon' durante as inicializações quando o tema não se aplica:

** (gnome-settings-daemon:1679): WARNING **: You can only run one xsettings manager at a time; exiting

** (gnome-settings-daemon:1679): WARNING **: Unable to start xsettings manager: Could not initialize xsettings manager.

Quando o tema é aplicado com sucesso, não há saída.

A partir disso, parece que o gnome-settings-daemon pode estar executando duas vezes de alguma forma. Aparentemente, se a primeira instância for concluída antes da execução da segunda instância, o tema será aplicado, caso contrário, falhará.

NOTA: A captura de saída foi feita editando a entrada 'Exec =' de /etc/xdg/autostart/gnome-settings-daemon.desktop na entrada "bash -c" / usr / lib / gnome-settings-daemon / gnome-settings-daemon --debug --sync &> /home/sanjeev/Desktop/test.txt '"(a opção --sync foi usada conforme recomendado por alguns sites)

PS: Mais testes mostram que realmente existem duas instâncias em execução que devem ser executadas uma após a outra.

Embora o método 'sleep' possa funcionar, aqui está uma solução mais 'tecnicamente correta', se eu puder, para o problema. Eu tentei com 6 reinicializações e o seguinte parece funcionar:

Etapa 1: Crie um script (chamei-o de gnome-settings-daemon-fix.sh) em / etc / xdg / autostart com o seguinte:

#!/bin/bash
# gnome-settings-daemon-fix.sh

pid=`pgrep gnome-settings-`
wait pid

exit 0

Etapa 2: Edite 'gnome-settings-daemon.desktop' na entrada 'Exec =' e substitua-o por:

Exec=bash -c 'bash /etc/xdg/autostart/gnome-settings-daemon-fix.sh ;/usr/lib/gnome-settings-daemon/gnome-settings-daemon'

Tudo está feito. Basicamente, o que estamos fazendo é aguardar a saída da primeira instância antes do lançamento da segunda. Alguém poderia notificar se isso resolveu o problema?

Sanjeev
fonte
Isso está próximo, mas não funciona muito bem por alguns motivos. O maior problema, porém, é que o comando wait não funcionará em outro processo.
TM.
1

Eu também tive o problema muito semelhante. Isso ocorreu após uma atualização (parcial do IIRC) do meu Natty Narwhal, pois estava no estado alfa 3. No meu caso, o arquivo ~ / michael / .nautilus / browser.xml parecia estar corrompido. Depois de experimentar algumas das sugestões deste site parcial, simplesmente apaguei este arquivo, reiniciei o meu PC e todos os meus temas estavam de volta e permaneciam estáveis. Eu acho que você pode tentar resolver seu problema como eu.

Michael Staengl
fonte
1

Ocasionalmente, isso acontece comigo com o 11.04 Unity 3D e cada vez que eu o apago abrindo Aparência, botão Personalizar, guia Ícone e clicando no meu conjunto de ícones escolhido, mesmo que tenha sido indicado como em uso. No meu caso, isso seria Faenza-Dark. Isso acontece com pouca frequência que ainda não identifiquei nenhuma sequência de eventos que cause isso.

fragos
fonte
1

Isso só funcionou para mim em uma janela de terminal:

echo "PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games\"" | tee -a ~/.profile
Jorge Castro
fonte
1

Aqui está uma solução rápida, acesse seu console virtual, pare o gdm, inicie o servidor X

  1. pressione "Ctrl + F1 à direita" (Ctrl + Alt + F1 é uma combinação para instalações não virtualizadas)
  2. Conecte-se
  3. tipo: sudo /etc/init.d/gdm stop
  4. tipo: startx

já que este é meu primeiro post, tive que colocar imagens como esta:

http://imgur.com/a/bi0xm#0

nidla
fonte
1

Isso aconteceu comigo também e, no meu caso, tive que destruir meu diretório pessoal inteiro e depois restaurar os bits, conforme a resposta aqui . Se você estiver executando os scripts de cronometragem para o gnome-settings-daemon, veja se você pode fazê-lo funcionar corretamente criando outra conta e efetuando login como essa conta. No meu caso, a segunda conta não teve o problema não inicial e, portanto, apliquei a correção no link.

mfisch
fonte
0

Por favor, tente isso e reinicie! :)

gconftool-2 --shutdown        
rm -rf ~/.gconf/apps/panel       
pkill gnome-panel        
Iván Stojanovic
fonte
Obrigado pela sugestão, Iván, mas sem banana. Digitei as instruções acima e reiniciei. O sistema voltou com um painel recém-configurado, mas ainda com o esquema de cores cinza suave e um fundo branco nas janelas do meu Terminal.
Marcelo Cantos
0

Eu acho que existem muitas pessoas com a idéia certa.

Meu palpite é que, após certas atualizações (novos kernels, etc), o ureadahead é reprofilizado. É aqui que acho que o problema acontece. O gnome-settings-daemon é chamado muito cedo.

Excluí todos os arquivos com 'pacote' (pacote, home.pack, boot.pack, run.pack) no nome da pasta / var / lib / ureadahead / para forçar um re-perfil. Tudo ficou ótimo depois disso.

Ao redefinir o perfil, exclua os arquivos acima, reinicie e efetue login rapidamente assim que aparecer a tela de login. Aguarde cerca de 30 segundos ou quando a unidade parar de girar antes de fazer qualquer coisa. Deixe terminar seus negócios. Sua janela do nautilus deve ficar bem agora.

Talvez um bug deva ser arquivado no ureadahead para colocar o gnome-settings-daemon fora de ordem.

user32089
fonte