什么是.Xauthority文件?

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

这些是我使用的步骤:

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

     chown username:username .Xauthority 

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

.Xauthority (非.xAuthority )文件可以在每个用户主目录中找到,用于在xauth用于对X会话进行身份validation的cookie中存储凭据。 启动X会话后,cookie将用于validation与该特定显示的连接。 您可以在xauth手册页中找到有关X身份validation和X权限的更多信息(在终端中键入man xauth )。

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

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