登录时未获取 /etc/profile

Aym*_*ine 5 linux bash

我有一点问题:我的/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)


Aym*_*ine 0

我通过将以下代码添加到显示管理器加载脚本中解决了这个问题 ( /etc/init.d/mdm)


if [ -f /etc/profile ]; then
    . /etc/profile
fi
Run Code Online (Sandbox Code Playgroud)

现在,一旦显示管理器完全加载,我就加载了所有配置。
谢谢您的意见。