设置 XAUTHORITY 环境变量的正确位置是什么?

设置 XAUTHORITY 环境变量的正确位置是什么?

我正在尝试删除主目录中的 .Xauthority 文件。

arch wiki 建议定义

export XAUTHORITY="$XDG_RUNTIME_DIR"/Xauthority

但不要把这一行放在 .profile 中,也不要添加

XAUTHORITY DEFAULT=${XDG_RUNTIME_DIR}/Xauthority

.pam_environment 可以解决问题:

  • 使用 .profile 后,登录停止工作并且我返回到登录屏幕。
  • 使用 .pam_environment,环境变量似乎没有设置,因为echo $XAUTHORITY返回/home/user/.Xauthority

请注意,其ICEAUTHORITY DEFAULT=${XDG_RUNTIME_DIR}/ICEauthority工作如预期。

答案1

XAUTHORITY看起来好像 LightDM通过设置其自身的值来干扰环境变量。

虽然我没有找到防止这种情况发生的方法,但我通过添加

[LightDM]
user-authority-in-system-dir=true

/etc/lightdm/lightdm.conf

此后,环境变量的值发生了变化

$ echo $XAUTHORITY 
/var/run/lightdm/user/xauthority

从而解决了原来摆脱的问题$HOME/.Xauthority

答案2

在 Raspbian(Raspberry Pi)中,编辑 lightdm.conf 没有帮助,所以我只是创建了一个符号链接:

cd ~
ln -s /tmp/.Xauthority .Xauthority

看起来效果不错。

相关内容