/etc/profile:ログインで全ユーザー共通の初期設定ベース

/etc/profile

/etc/profileについての概要と詳細

/etc/profileとは

/etc/profile は、すべてのユーザーに共通するログインシェル環境を設定するためのグローバル設定ファイルです。
このファイルは、ユーザーが bash や sh などのログインシェルを起動したときに最初に実行され、PATH や環境変数の設定、メッセージ表示、プロンプトのカスタマイズなどが行われます。

主な役割

  • 環境変数(PATHLANG など)の初期設定
  • システム全体で使用するエイリアスやシェル関数の定義
  • /etc/profile.d/ 以下のスクリプトを読み込む設定
  • ユーザーのプロファイルファイル(例:~/.bash_profile)が読み込まれる前に処理される

読み込まれるタイミング

/etc/profile は、bashやshがログインシェルとして起動された場合に読み込まれます。たとえば、次のような状況です:

  • コンソールログイン時
  • SSHログイン時
  • su - ユーザー名bash --login などで明示的にログインシェルを開始したとき

内容の例

# /etc/profile の一部例

# システム全体の PATH を定義
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
export PATH

# 環境変数の初期化
export LANG=ja_JP.UTF-8

# /etc/profile.d/*.sh を読み込む
for file in /etc/profile.d/*.sh; do
  [ -r "$file" ] && . "$file"
done

/etc/profile.d/ との関係

/etc/profile の最後のほうでは、多くの場合 /etc/profile.d/ ディレクトリ内にあるシェルスクリプトが読み込まれるようになっています。
この仕組みにより、特定のアプリケーションやパッケージが独自の環境設定をシステムに追加しやすくなっています。

編集の注意点

  • 全ユーザーに影響するため、編集時は慎重に。
  • 誤った記述は、全ユーザーのログイン環境に問題を引き起こす可能性があります。
  • 変更後は、新しいログインセッションで動作を確認しましょう。

まとめ

/etc/profile は、Linuxシステムにおけるグローバルなログインシェル設定の中心的なファイルです。
ユーザー全体に影響する環境変数や初期設定を定義するため、システム管理者にとって重要な役割を持つ設定ファイルです。