.profile은 Debian Wheezy LXDE에서 시작되지 않습니다.

.profile은 Debian Wheezy LXDE에서 시작되지 않습니다.

from $HOME/bin에 추가했는데 로그인 시 가져오지 않는 것 같습니다. 저는 로그인 관리자를 사용하고 있습니다 . 대신에 . 나는 이것이 스크립트가 실행되는 데 중요하다는 것을 알고 있습니다.$PATH~/.profilelxdmstartx

이를 설명하려면 명시적으로 소스를 가져온 후 $HOME/bin추가하는 방법을 참조하세요 ~/.profile. 하지만 그래픽 로그인 중에 획득하면 안 되나요?

sashoalm@aspire:~$ echo $PATH 
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
sashoalm@aspire:~$ source ~/.profile 
sashoalm@aspire:~$ echo $PATH 
/home/sashoalm/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
sashoalm@aspire:~$ 

답변1

하지만 그래픽 로그인 중에 획득하면 안 되나요?

일부 그래픽 로그인이 취하는 특이한 입장에 대해 작은 논쟁이 있습니다.

~/.profile의 $HOME/bin을 $PATH에 추가했습니다. 그러나 로그인 중에는 가져오지 않는 것 같습니다. 로그인 관리자를 사용하는 것 같습니다 - lxdm

옳은. 대부분의 DM은 ~/.profile로그인할 때 읽습니다. 그러나 ~/.profile전통적으로 소스가 다음과 같기 때문에 이를 명시적으로 수행해야 합니다.로그인 쉘DM(GUI 로그인)은 쉘이 아닙니다!

이것이 내가 시작한 것입니다.lightdm사람들을 위한아니요명시적 소싱 ~/.profile- DM은 쉘이 아니기 때문입니다.

~/.profile다음부터 ~/.xsession시작할 수 있습니다 .이봐.

답변2

대부분 @goldilocks에 동의합니다. 소스 스크립트가 가 아닌 ~/.profile이라는 점을 추가하고 싶었습니다 .~/.xsessionrc~/.xsession

이유는 다음과 같습니다.

qxu@debian:/etc/X11/Xsession.d$ cat 40x11-common_xsessionrc
# This file is sourced by Xsession(5), not executed.

#Source user defined xsessionrc (locales and other environment variables)
if [ -r "$USERXSESSIONRC" ]; then
  . "$USERXSESSIONRC"
fi

qxu@debian:/etc/X11$ grep USERXSESSIONRC Xsession
USERXSESSIONRC=$HOME/.xsessionrc

답변3

bash가 로그인 셸인 경우 다음 순서로 시도됩니다 ~/.bash_profile. 그러나 그것은~/.bash_login~/.profile멈추다처음 발견한 것에서.

소스가 없다면 ~/.profile디렉토리에 다른 두 개(아마도 두 개) 중 하나가 있다는 의미입니다 HOME. 어느 것을 확인하고 PATH첫 번째 문에 새 문을 넣어야 할까요?

답변4

Bash가 대화형 로그인 셸 또는 options 가 포함된 비대화형 셸로 호출되면 --login먼저 파일 /etc/profile(파일이 존재하는 경우)에서 명령을 읽고 실행합니다. 파일을 읽은 후 ~/.bash_profile, ~/.bash_login, 를 순서대로 찾아 존재 ~/.profile하고 읽을 수 있는 첫 번째 파일부터 명령을 읽고 실행합니다.

따라서 ~/.bash_profile존재 하는 경우에는 ~/.profile읽혀지지 않습니다.

관련 정보