tl; dr : Meu problema específico foi que em um momento eu coloquei exec /bin/zsh em ~/.bashrc (sem memória de por que fiz isso). strace não foi capaz de rastrear isso, mas fatrace foi porque ele pôde rastrear acessos para todo o sistema, não apenas para uma subárvore do processo.
Provavelmente detalhes chatos : eu tinha certeza de que meu problema tinha algo a ver com o diretório principal de meus usuários primários, já que eu tinha outro usuário que podia fazer o login corretamente. Do meu strace ing, eu suspeitava que o processo que fazia o acesso ao arquivo não estava na mesma subárvore como lightdm , pois eu tinha strace d recursivamente. Então, procurei maneiras de rastrear todo o meu sistema para tentar descobrir quais acessos ao sistema de arquivos eram diferentes quando cada usuário fazia o login.
eu encontrei
Como faço para registrar o sistema de arquivos? escreve por nome de arquivo no Linux? e Como faço para strace o sistema inteiro? Primeiro, eu tentei systemtap , mas isso ficou preso em um erro interno em ld . Eventualmente, encontrei fatrace . Como strace , isso não inclui muito acesso ao meu diretório inicial, mas tinha essa linha (perfeitamente normal):
lightdm-session(11474): O /home/dmcc/.bashrc
Uma vez que eu olhei para .bashrc , eu vi onde uma vez eu tinha mexido com isso. Quando eu comentei a instrução exec , o login foi bem-sucedido. Ainda não está claro para mim por que não encontrei isso antes ou por que meu .bashrc deve ser importante ao iniciar o X11 , mesmo que meu shell padrão seja zsh .