Think Simple Enjoy Life

/etc/profile.d/ってどんなディレクトリ?使いみちは?

Unix/Linux系のOSでは、ユーザー設定をテキストファイルに記述して、ログイン時に自動的に読み込みを行います。 また、ログインするシェル(bashやzsh)によって、読み込むファイルが変わってきます。

そういうことをわかってきた今日このごろ、/etc/profile.d/ というディレクトリに遭遇しました。

これ一体なんなのでしょうか。使い方(用途)を調べたのでメモしておきます。

/etc/profile.d/とは

サーバ共通の環境変数を設定するファイル置き場です。

ユーザがサーバーにログインすると、配下のshellファイル一覧、つまり /etc/profile.d/*.sh が自動的に読み込み、実行されます。[1]

/etc/profile.d/配下に置くファイルの例

アプリケーション毎の設定(環境変数・変数など)を記述します。例えば、nodebrewをインストールするときに、nodebrewのrootパスやpathへの情報追記を行います。

export NODEBREW_ROOT=/usr/local/bin/.nodebrew
PATH=$NODEBREW_ROOT/current/bin:$PATH

こういったファイルを置いておくことで、どのユーザがログインしても環境変数を設定することができるので、どのユーザからもアプリケーションを呼び出すことが可能になります。 システムワイドにソフトウェアをインストールする際などに利用します。

脚注
  1. ログインシェルが、bashの場合 ↩︎