Fedoraというか、Redhat系のお話
.bashrcをGithubで共有するようにしてからしばらく経って、新しいPCにFedoraを入れた。 最初は特にターミナルとかも普通だったのだけど、ひと通り確認終わってからgit cloneしてきた.bashrcに置き換えると、表示が完全に変になった。 ぱっと見てわかる症状は、
-
プロンプトが表示されない(というか、bashのバージョンが出る)
-
カラースキームが変(エディタもそうだし、普通の状態も変)
-
でもなんか.bashrcの内容は反映されてる
って感じ。 一番悩んだのは、.bashrcで設定しているPATHとかAliasとかは反映されているので、どうも.bashrcのエラーって感じではなさそうということ。 だが、新しいPCを買ったのは2月で、2月は地獄のように忙しい毎日を過ごし、3月も別の趣味に一ヶ月を投じてしまったので、ほとんど ターミナルを触ることなく、放置してしまった。
今週に入り、やっとコードを書く時間を取り返したので、いろいろ調べたり人に聞いたりしてみて、解決策を探した。 友人の言っていた、「OSのデフォルトの設定ファイルが読み込まれてないんじゃないの?」という意見が最も近い気がして、Linuxのbashrcファイルの扱いを調べていくと、次の情報にいきあたった。
曰く、Redhat系は、次の順序でbashの設定ファイルを読むらしい
-
/etc/profile
-
~/.bash_profile, ~/.bash_login, ~/.profile の順に検索し、最初に見つかったもの
-
~/.bashrc (~/.bash_profileの中に書かれている)
-
/etc/bashrc (~/.bashrcの中に書かれている)
なるほど、/etc/bashrcが読み込まれてねえ、と気づいた。 というか、デフォルトで読み込んで欲しいのだが、どうも.bashrcの中に書かなくてはいけないようだ。 最近はもっぱらMacだったので、全く気づいていなかった。
というわけで、次の記述を.bashrcの中に書くことで解決した。
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
Githubの方にもコミット済み。
こんどは、/etc/bashrcの中身もちゃんと読んでみよう。