Não é possível iniciar o kde

2

Reiniciando meu laptop depois de alguns dias de atividade (por isso não sei o que poderia ter acionado o problema) Descobri que não consigo fazer login no lightdm. Minha senha é aceita e os campos desaparecem, mas estou preso ao papel de parede lightdm e ao meu cursor (móvel). Eu posso no entanto

  • faça o login como convidado
  • startx de um tty

Se eu tentar do kdm, a mesma coisa acontece.

Se eu tentar iniciar o projeto-neon, a barra de progresso da área de trabalho aparecerá, mas voltarei ao papel de parede lightdm quando terminar de carregar, também apareceu um prompt para a senha do keyring e depois de inseri-la, a área de trabalho pisca brevemente.

.xsession diz que o processo de pré-início do dbus terminou com o status 2. Não sei se é relevante.

Edit: Eu posso lançar o lxde sem problemas. Eu tentei plasma-ativo, eu tenho os mesmos sintomas que com o projeto de néon tão claramente este é um problema de kde / plasma. Mas, desde o início do startx, o problema parece estar nas interações lightdm / kdm-kde. Existe uma maneira de rastrear como o lightdm inicia o kde (kwin, plasma)?

Além disso, o problema não é com o login, a sessão gráfica aparece em who e dm-tool list-seats mostra um Session0 com meu nome de usuário.

Edit: Eu tentei mais algumas coisas. Eu mencionei uma solicitação de senha em neon de projeto. Se eu deixar ficar por um momento, a área de trabalho eventualmente aparecerá e funcionará.

Eu também tentei adicionar saídas de depuração a startkde e startactive . Aqueles em startactive trabalham, mas não aqueles em startkde (ao iniciar em lightdm ou kdm, mas funciona em xinit /usr/bin/startkde ), então pode ser que lightdm nem sequer inicie startkde , embora isso ocorra de acordo com lightdm.log .

    
por Evpok 10.05.2014 / 00:58

2 respostas

3

TL; DR houve um problema de permissão com ~/.cache/upstart/dbus-session , rm -rf .cache/upstart e uma reinicialização resolveu o problema.

Novas informações de depuração para futuros leitores (o que pode muito bem incluir-me).

A mensagem ~/.xsession que mencionei na pergunta, nos termos de

init: dbus pre-start process (PID XXXX) terminated with status 2

foi realmente muito importante. Eu aprendi o que isso significava enquanto investigava, eu achei assim

  • Primeiro, achei que o problema era com o kde, então tentei descobrir como o lightdm começou o kde
  • Tentei pesquisar /etc/lightdm/ (conforme sugerido por man lightdm ), mas os arquivos de configuração lightdm não estavam aqui, mas (encontrei pesquisando /var/log/lightdm.log ) em /usr/share/lightdm/lightdm.conf.d , onde encontrei o arquivo relevante arquivo /usr/share/lightdm/lightdm.conf.d/40-kde-plasma.conf
  • De acordo com ele, o que o lightdm iniciou para o kde era o script /usr/bin/startkde , então incluí algumas linhas debug echo 'startkde is at line ##' > /home/evpok/delog nele para ver onde ele falhou, mas nenhuma delas foi executada.
  • verificando novamente /var/log/lightdm.log vi a linha
    Running command /usr/sbin/lightdm-session /usr/bin/startkde
    então eu olhei para usr/sbin/lightdm-session , para o qual eu novamente adicionei depuração echo linhas
  • Depois de alguns problemas, descobri que o problema era carregar um script Xsession: /etc/X11/Xsession.d/99x11-common_start . Então eu olhei para aquele. Parecia carregar normalmente e tinha apenas uma linha exec $STARTUP . Adicionando um echo para ver o que estava em $STARTUP , achei que era init --user . Agora eu não queria mexer com init , então eu apenas tracei suas saídas comentando essa linha e adicionando, em vez disso, exec init -v --user > /home/evpok/initlog 2> /home/evpok/initerrlog
  • Olhando para esses registros, vi esta mensagem em initerrlog

    dbus pre-start process (PID XXXX) terminated with status 2
    mas eu ainda não sabia o que fazer com isso, então eu olhei para initlog e vi que Loading configuration from /usr/share/upstart/sessions

  • Eu olhei para esse diretório, onde vi um startkde.conf . Depois de alguns olhar para a documentação de confs de trabalho iniciante, vi que tinha start on started dbus and xsession SESSION=kde-plasma
    obviamente foi por isso que startkde não começou. Ele precisava dbus, que tinha um erro, então eu olhei em dbus.conf
  • Lá, houve uma estrofe pre-start script , ei! Isso é o que está no errlog do init e no .xsession-errors . Então, para eu adicionei novamente alguns ecos, para descobrir que o problema estava na linha de echo "DBUS_SESSION_BUS_ADDRESS=${DBUS_SESSION_BUS_ADDRESS}" >$HOME/.cache/upstart/dbus-session (não um dos meus ecos de depuração)
  • Depois de algumas reclamações, descobri que não consegui tocar no arquivo inexistente ~/.cache/upstart/debus-session devido a um problema de permissão. Eu tentei criá-lo em sudo e chown-lo para mim com as permissões apropriadas, mas não funcionou. Então eu só rm -rf 'ed .cache/upstart .
  • Após a reinicialização, tudo funcionou como esperado.

Afinal, eu só precisava parar de ter medo dos internos e sujar as mãos.

    
por Evpok 12.05.2014 / 16:17
1

Eu tive o mesmo problema após a atualização do Ubuntu 13.10 para o Ubuntu 14.04. Eu também tinha no arquivo .xsession-errors a última linha de leitura:

init: dbus pre-start process (PID XXXX) terminated with status 2

O problema também estava no diretório .cache/upstart . Ele tinha permissões drw------- - então eu nem fui capaz de entrar nisso. Acabei de adicionar um bit de execução, reiniciei o X e agora funciona.

    
por user3497625 19.05.2014 / 17:00