O que é o arquivo .Xauthority?

45

Eu tive um problema em que não conseguia passar da tela de login no Ubuntu 12.04. Embora eu tenha fornecido o nome de usuário e a senha corretos, ele ainda voltou à tela de login. Encontrei uma solução em que alterei a propriedade do .Xauthorityna minha pasta pessoal.

Estas são as etapas que eu usei:

  1. Ctrl+ Alt+ F1quando estou na tela de login.
  2. Altere a propriedade da .Xauthorityqual o ROOT pertencia anteriormente, executando:

    chown username:username .Xauthority
    

O que é esse .Xauthorityarquivo em primeiro lugar? Por que alterar a propriedade do arquivo corrige meu problema de não conseguir fazer login?

chanHXC
fonte
sudo -H nautilus não funciona com 17.10. Gostaria que houvesse uma resposta real como criar .Xauthority quando não existir.
Vidiman

Respostas:

49

O arquivo .Xauthority(not .xAuthority) pode ser encontrado em cada diretório inicial do usuário e é usado para armazenar credenciais em cookies usados ​​por xauthpara autenticação de sessões X. Depois que uma sessão X é iniciada, o cookie é usado para autenticar conexões com essa exibição específica. Você pode encontrar mais informações sobre autenticação e autoridade X nas xauthpáginas de manual (digite man xauthum terminal).

Portanto, se você não é o proprietário desse arquivo, não poderá fazer login, pois não poderá armazenar suas credenciais lá.

Essa situação geralmente ocorre quando você executa um aplicativo GUI (por exemplo, nautilus ) com permissões de root digitando sudo nautilus. Você pode evitá-lo (para versões 12.10 e anteriores) invocando o aplicativo com gksudo nautilusou em qualquer versão usando sudo -H nautilus.

Radu Rădeanu
fonte
obrigada pelo esclarecimento. Muito apreciado. se não me engano, o gksudo é muito preferido para chamar um comando que provavelmente abre um programa que requer uma interface gráfica. De que maneira a execução do sudo em vez do gksudo faz mal ao seu sistema?
ChanHXC
sim obrigado novamente. Eu já marquei a resposta. :)
chanHXC