図示
bash_profileやらbashrcやらややこしかったので起動順を図示してみた。
- ログイン起動:CUIモードやsshでログインした時
- 対話起動:GUIからターミナルを開いた時や、bashをコマンドで直接実行した時
絶対こうだよと断言するほど自身はないんだけど、概ね次の理解で良さそう
-
/etc
系はマシン固有の環境(ユーザにかかわらない)設定を記述 -
~/
系はユーザ固有の設定を記述 - → root以外のユーザが触るのは基本ここ
-
profile
系はbash環境にログインした時に実行される -
rc
系はbashを起動した時に実行される - →
/etc/bash.bashrc
は例外だが今はほぼ使われて無い?
その他
- cシェルには
.login
というファイルがあるらしい。~/.bash_login
はそれに由来するファイル - → どっちを使ってもいいけど普通は
.bash_profile
を使っとけということ? -
~/.profile
はbashじゃない環境でも実行される可能性がある模様 - → bashに依存した設定は入れるなってことかな?