我有一点问题:我的/etc/profile或/etc/environment在登录时都没有获得来源!
即:启动后,我设置的全局变量/etc/profile(/etc/profile.d/*.sh因此)或/etc/environment不被其他 GUI 应用程序或终端上的bash识别。
请注意,我正在运行 Linux Mint 17 Cinnamon 版本,默认情况下,它确实提供了该/etc/profile文件的来源。
文件权限适用-rw-r--r-- 1 root root于所有相关文件。
可能是什么问题呢?
小智 5
使用 Debian Jessie + Cinnamon + lightdm 遇到了这个问题。
回到 wheezy,我发现 /etc/profile 和 ~/.profile 来自 /etc/gdm/Xsession。在“这个”jessie 设置中似乎完全没有这种逻辑。所以我抓住了这段代码并复制到 jessie 中的一个新文件中:
/etc/X11/Xsession.d/70fix_lightdm_gpv
graeme@jessie:~/Desktop$ cat /etc/X11/Xsession.d/70fix_lightdm_gpv
# GPV: 2-May-2015, lightdm + cinnamon forgets to source ANY profiles!!
# First read /etc/profile and .profile
test -f /etc/profile && . /etc/profile
test -f "$HOME/.profile" && . "$HOME/.profile"
# Second read /etc/xprofile and .xprofile for X specific setup
test -f /etc/xprofile && . /etc/xprofile
test -f "$HOME/.xprofile" && . "$HOME/.xprofile"
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# indent-tabs-mode: nil
# End:
# vim:set ai et sts=2 sw=2 tw=80:
Run Code Online (Sandbox Code Playgroud)
我通过将以下代码添加到显示管理器加载脚本中解决了这个问题 ( /etc/init.d/mdm)
if [ -f /etc/profile ]; then
. /etc/profile
fi
Run Code Online (Sandbox Code Playgroud)
现在,一旦显示管理器完全加载,我就加载了所有配置。
谢谢您的意见。