プログラマーのメモ書き

伊勢在住のプログラマーが気になることを気ままにメモったブログです

ログイン環境設定

本サイトはさくらインターネットのレンタルサーバ上に構築しています。

さくらインターネットのデフォルトのシェル環境はcshなので、使い慣れたbashに変更します。シェルの変更だけであれば、コマンドを実行するだけで、すぐに完了するので大きな問題はないと思います。

まず、シェルの環境設定は、次のように行われます。(お使いのOSやbashのバージョンにより変わるかもしれません)


ログインシェルで実行されるスクリプト

/etc/profile

(以下のスクリプトファイルは、上からの優先順位でひとつだけ実行されます)

~/.bash_profile
~/.bash_login
~/.profile

ログインシェル以外の対話シェルで実行されるスクリプト

~/.bashrc

非対話シェルで実行されるスクリプト

BASH_ENV 環境変数に指定されたファイル

ログインシェルでは、.bashrcは自動的に実行されませんので、実行したい場合はスクリプト内から実行する必要があります。


今回行った変更手順は以下のとおりです。

(1) 変更したいシェルが使えるか確認します。

$ cat /etc/shells

(2) bashがあることを確認しておきます。

もし、変更したいシェルが含まれていない場合は、管理者に相談となります。レンタルサーバの場合は、あきらめることになると思います。

(3) シェルを変更します。

$ chsh -s /usr/local/bin/bash

(4) 一度ログアウトし、再度ログインするとシェルが変わっています。

(5) ログイン時の環境を設定します。

私がレンタルサーバを使いはじめた時点ではホームディレクトリに、~/.profile, ~/.shrc がありました。これを元にして、~/.bash_profile, ~/.bashrc を作成しました。

$ cp -p .profile .bash_profile
$ cp -p .shrc .bashrc

(エディタで編集する)

.bash_profile, .bashrcの内容はそれぞれの方の好みでかまわないと思います。ここでは、.bashrcを確実に実行するために、.bash_profileに追加したコマンドを載せておきます。

BASH_ENV=$HOME/.bashrc
export BASH_ENV
if [ -f ~/.bashrc ]
then
. ~/.bashrc
fi

(6) 一旦ログアウトし、再度ログインしなおして、~/.bash_profile, ~/bashrc が正しく実行されていることを確認します。


(参考にしたサイト)
http://ishijima.blog97.fc2.com/blog-entry-29.html#more