RaspbianのLXDEの$ PATHは変更されていません。

RaspbianのLXDEの$ PATHは変更されていません。

home / piにbinディレクトリがあります。 .profileを介してログインすると$ PATHに追加されますが、LXDEに移動してLXTerminalを使用すると、binディレクトリは$ PATHに追加されなくなります。

答え1

ほとんどの設定で~/.profileログイン時に読む環境変数を設定する一般的な場所です。残念ながら、ディストリビューション、ディスプレイマネージャ(グラフィックログイン方法)、およびデスクトップ環境のいくつかの組み合わせでは、このファイルはスキップされます。使用しているディスプレイマネージャ(lxdm?)を指定していませんが、~/.profileXセッションの開始時に読み取りをスケジュールしないようです。

私はRaspbianがそれをサポートすると信じています~/.pam_environment。各ログイン方法はpam_envアンティークではなくこのファイルを読み取ります。ポリアクリルアミド認証またはセッション部分。私はこれがRaspbianの場合だと思います(言及されている行を確認するか/etc/pam.d/common-session含めてください)。で環境変数を定義できますが、可能性はより制限的です。書き込みのみ可能で、他の変数を使用したり、変数の既存の値に追加したりすることはできません。したがって、inのように書くことはできず、スペルを書く必要があります。/etc/pam.d/lxdmpam_env.so~/.pam_environment~/.profileVARIABLE=VALUEPATH=$HOME/bin:$PATH~/.profile

PATH=/home/pi/bin:/usr/local/bin:/usr/bin:/bin

環境変数を設定しないことをお勧めします。.bashrc。サブシェルを起動するたびに既存の値が上書きされ、変数は端末でシェルを介して起動されたプログラムでのみ定義されます。GUIから直接起動されたプログラムにはありません

答え2

からman bash

bashを次のように使用するときインタラクティブログインシェル、または--loginオプションを使用して、最初に/ etc / profileファイル(ファイルがある場合)からコマンドを読み込んで実行する非対話型シェルとして使用します。ファイルを読んだ後、~/.bash_profile、~/.bash_login、~/.プロフィール、その順序で存在して読み取ることができる最初のコマンドからコマンドを読み取り、実行します。この動作は、シェルの起動時に --noprofile オプションを使用して無効にできます。

いつログインシェル終了すると、bash は ~/.bash_logout および /etc/bash.bash_logout ファイルがある場合、そのファイルからコマンドを読み取り、実行します。

いつ インタラクティブシェルこれはログインではありませんシェル起動後、bashはコマンドを読み込み、実行します。~/.bashrc、ファイルが存在する場合。

「対話型シェル」は、端末の前景で実行されるシェルですが、必ずしもそうする必要はありません。ログインシェル。

ログインシェルパラメータ0の最初の文字は-または--loginオプションで始まります。

GUI端末はこれを行いません。

そのため、通常、ソースに.profile必要な内容を含めることができます.bashrc.bashrcみんなシェルと.profileログインシェルに過ぎないすべて。場合によっては、(対話型プロンプト)が定義されていることを.profile確認して、対話型プロンプトのみが含まれるように制限します。 1つの理由は、非対話型(スクリプト実行など)シェルで特定のエイリアスを使用しないためです。$PS1.bashrc

したがって、$ PATH定義を入れて、それがまたは~/.bashrcから派生していることを確認してください。~/.profile~/bash_profile

関連情報