/usr/local/etc/profileはどこで入手できますか? .bash_profile または /etc/profile?

/usr/local/etc/profileはどこで入手できますか? .bash_profile または /etc/profile?

基本的にbash/etc/profileはと~/.bash_profile

それでは、マシン固有のプロファイルコマンドもあるとしましょう/usr/local/etc/profile(この内容はで説明されているので、このコマンドで汚染したく/usr/localありません)。/etc

私の質問:購入に対する責任は誰にありますか/usr/local/etc/profile?これはから始まる~/.bash_profileか、次の行から始める必要があります。

if [ -f /usr/local/etc/profile ]; then
    . /usr/local/etc/profile
fi

しなければならない実際には、実際に/etc/profileコンピュータに何があるかに関係なく、ディストリビューションのインストールに有効なので?

答え1

通常、システム固有のログイン時間の初期化を配置する正しい場所はです/etc/profile/usr/local/etcとにかく、多くのUnixの亜種はまったく気にしません。

GUI ログインの場合、profileファイルを直接読み取ることはできません。ただし、多くのX11ディストリビューションは、/etc/profileXセッションの初期化でソースコードを読み取るように構成されています。/usr/local/etc/profile古典的な場所ではなく、ソースは提供されません。

多くのディストリビューションにはディレクトリがあり、ここ/etc/profile.dにコードを入れて/etc/profileファイルをインポートします/etc/profile.d。ディストリビューションでこれを行った場合、システム固有のコンテンツに最適な場所です/etc/profile.d

最新の* BSDは、/usr/localローカルインストールではなくパッケージソフトウェア、/usr/local/etcおよびパッケージまたはその構成に付属のファイルに適用されます。/etcとの違いは、/usr/local/etc構成が基本システム用であるか特定のプログラム用かどうかです。/etc/profileシステム全体の構成です。ログインシェルがサードパーティパッケージの場合、その構成はにある必要がありますが、特定のシェルに/usr/local/etc限定profileされず、/bin/sh基本システムの一部に適用可能であると想定できます。 (FreeBSDは一貫性がないようです。bashパッケージは読みます/usr/local/etc/profileが、zshパッケージは読みます/etc/zprofile。)

管理者として、ユーザーが自分のファイルから別のファイルをインポートできるようにする場合は、そのファイルのカスタマイズがすべての.profile人に適しているわけではなく、特別な要件を持つユーザーにのみ適していることを示します。

答え2

ソースは誰の責任ですか/usr/local/etc/profile

すべてのユーザーが利用可能な場合に入手できます/etc/profile。すでに述べた次の行を追加してください。/etc/profile

[ -f /usr/local/etc/profile ] && source /usr/local/etc/profile

関連情報