Solarisでコマンドパスを追加する

echo $PATHしてみると、/usr/binだけだった。さみしい。

Solarisサーバの構築直後には、作業環境を整えるべくコマンドパスを追加しておく。

最終的に、gnuのgcc, gtar, gmakeをcc, tar, makeとして使えるようにする。 

 

■コマンドパスを追加する

<コマンドパスを追加するファイル> 

/etc/profile  sh、bashを利用する全ユーザが対象の場合、最初に実行されるのでこれを編集する。

$HOME/.profile  ユーザがログインしたときに実行されるので、個別対応のときに編集する。

/etc/skel/local.profile  今後追加するユーザの$HOME/.profileとしてコピーされる。

/etc/skel/local/cshrc   csh用。

 

<追加するパス> 

/usr/sbin   システム、ネットワーク関連のコマンド

/usr/local/bin   独自にインストールするコマンド

/usr/sfw/sbin   Companion CDからインストールしたsmb、tcpd、mysqlなど。

/usr/sfw/bin   Companion CDからインストールしたgcc、gtar、wgetなど。

/usr/ccs/bin   makeなどコンパイルに必要なコマンド

 

 

</etc/profileの最後に追加>

PATH=/usr/local/krb5/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:
/usr/sfw/sbin:/usr/sfw/bin:/opt/SUNWvts/bin:/usr/local/bin:
/usr/openwin/bin:/usr/ccs/bin:/usr/ucb:/usr/lib/vxvm/bin
export PATH

 

sh, bash を使う場合は以上で作業完了。ユーザ個別に対応したり、 きめ細かく設定したり、cshを使うときは以下の作業を行う。

 

■コマンドパスを削除する

$HOME/.profileに以下の記述があったら削除しておくと安心。 

.   カレントパス。操作防止のため

/etc  現在のSolarisには実行ファイルは含まれていないため 

 

■環境設定の実行順序(sh、bashおよびksh)

  1. /etc/profile
  2. $HOME/.profile 

この順序で実行されるので、 

全ユーザ共通で指定したい場合: /etc/profileを変更すると便利。

各ユーザ個別で指定したい場合: $HOME/.profileを変更するとよい。

 

■環境設定の実行順序(csh)

  1. /etc/.login
  2. $HOME/.cshrc   シェル実行時に実行される。シェル変数を設定するために使う。
  3. $HOME/.login    ログイン時に一回実行される。環境変数を設定するために使う。

 

■.profile、.cshrc、.loginファイルは誰が作るか?

ユーザ環境設定ファイル .profile、.cshrc、.login はユーザ作成時に

/etc/skel/local.profile 

/etc/skel/local.cshrc

/etc/skel/local.login

の3つのファイルが$HOMEにドットファイルとしてリネーム&コピーされる。

$HOME/.profile

$HOME/.cshrc

$HOME/.login

 

ただし、useradd -mで、ホームディレクトリを作成を指示した場合は local.* のままコピーされるので、自分でドットファイルにリネームすること。

 

ユーザをたくさん登録するときは、ドットファイルをコピーしておくと便利。local.*ファイルは削除しない。(useradd -m指定しないときのために)

# cd /etc/skel/
# cp local.profile .profile
# cp local.cshrc .cshrc
# cp local.login .login

 

■.profile を変更する例

$HOME/.profile または、/etc/skel/local.profile を変更する。

(変更前)

PATH=/usr/bin:/usr/ucb:/etc:.
export PATH

(変更後の例)

PATH=/usr/bin:/usr/ucb
PATH=/usr/local/krb5/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:/opt/SUNWvts/b
in:/usr/local/bin:/usr/openwin/bin:/usr/ccs/bin:/usr/ucb:/usr/lib/vxvm/bin:$PATH

export PATH

最初のPATHの/etcと.(ドット)を削除して、追加したいパスを次の行で指定した。

 

■gtar, gcc, gmakeを使えるようにする

Solarisのtarではなく、GNUのtarを常時使いたい。同様にgcc, gmakeも。

# cd /usr/local/bin/
# ln -s /usr/sfw/gtar tar
# ln -s /usr/sfw/gcc gcc
# ln -s /usr/sfw/bin/gmake make

which tar したときに/usr/bin/tar, /usr/sbin/tar等が存在している場合は、リネームしておく。

# cd /usr/sbin/
# mv tar tar_