什么是.Xauthority文件?


45

我有一个问题,我无法通过Ubuntu 12.04的登录屏幕。即使我输入了正确的用户名和密码,它仍然会返回登录屏幕。我找到了一种解决方案,其中更改了.Xauthority主文件夹中的所有权。

这些是我使用的步骤:

  1. Ctrl+ Alt+ F1当我在登录屏幕。
  2. .Xauthority通过执行以下命令来更改其先前由ROOT拥有的所有权:

    chown username:username .Xauthority
    

.Xauthority文件首先是什么?为什么更改文件的所有权可以解决无法登录的问题?


sudo -H nautilus不适用于17.10。希望有一个真正的答案,当不存在时如何创建.Xauthority。
vidiman '18

Answers:


49

可以在每个用户主目录中找到.Xauthority(不是.xAuthority)文件,该文件用于将凭据存储在用于xauthX会话身份验证的cookie中。一旦启动X会话,该cookie将用于验证与该特定显示器的连接。您可以在xauth手册页(man xauth在终端中输入)中找到有关X身份验证和X授权的更多信息。

因此,如果您不是该文件的所有者,则无法登录,因为您无法在其中存储凭据。

当您通过键入使用root权限执行GUI应用程序(例如nautilus)时,通常会出现这种情况sudo nautilus。您可以通过使用gksudo nautilus或在任何版本中使用调用应用程序来避免使用(对于12.10及更早版本)sudo -H nautilus


感谢您的解释。非常感激。如果我没有记错的话,gksudo是调用命令的首选,它可能会打开需要图形界面的程序。以哪种方式执行sudo而不是gksudo对您的系统不利?
chanHXC

是的,再次感谢。我已经标记了答案。:)
chanHXC
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.