[EPA2008b]パスの設定

[EPAサーバ構築ドキュメント へ戻る]

環境変数 PATH や man に関する環境変数 (MANDATORY_MANPATH, MANPATH_MAP, MANDB_MAP) に関して, システム側でデフォルト値を設定する方法について記す.

注意: このページは各プログラムの設定の中で, パスを設定する必要があるときに参照すること.

PATH の設定

環境変数 PATH は, 使用するシェル毎に設定するファイルが異なる. ここでは, sh, bash, csh, tcsh, zsh について記す.

なお, EPA サーバでは管理者アカウントを利用する際に, sudo を 用いることを前提としているため, 多少冗長に設定を行っている 部分がある.

sh, bash

/etc/profile の末尾に以下の記述を追記する.

if [ -f /etc/bash.bashrc ]; then
    . /etc/bash.bashrc
fi

/etc/bash.bashrc の冒頭に以下の記述を追加する.

# add PATH for local installed softwares
PATH="${PATH}:<一般ユーザ用コマンドのパス>"

# add PATH for local installed softwares (for root)
if [ "`id -u`" -eq 0 ]; then
  PATH="${PATH}:<システム管理用コマンドのパス>"
fi

export PATH

csh, tcsh

/etc/csh.cshrc の冒頭に以下の記述を追加.

# add PATH for local installed softwares
set path = ($path /usr/local/bin /usr/bin /bin <一般ユーザ用コマンドのパス>)

# add PATH for local installed softwares (for root)
if ( "`id -u`" == 0 ) then
        set path = ($path /usr/local/sbin /usr/sbin /sbin <システム管理用コマンドのパス>)
endif

zsh

/etc/zsh/zshenv の 末尾 に以下の記述を追加.

# add PATH for local installed softwares
export PATH=<一般ユーザ用コマンドのパス>:$PATH

# add PATH for local installed softwares (for root)
if [ "`id -u`" -eq 0 ]; then
        export PATH=<システム管理用コマンドのパス>:$PATH
fi

# delete duplicated path setting
typeset -U path

man 関連のパスの設定

man に関連するパスの設定は /etc/manpath.config にて行う. 設定する 環境変数としては,

  • MANDATORY_MANPATH
  • MANPATH_MAP
  • MANDB_MAP

があり, 以下のように設定値を記述する (manpath.config ファイルの 冒頭部参照).

MANDATORY_MANPATH                     manpath_element
MANPATH_MAP           path_element    manpath_element
MANDB_MAP             global_manpath  [relative_catpath]

例えば, Apache2 に関する man 形式のマニュアルが以下のように配置されて いたとする.

$ tree /usr/local/apache2/man/

/usr/local/apache2/man/
|-- man1/
|   |-- dbmmanage.1
|   |-- htdbm.1
|   |-- htdigest.1
|   `-- htpasswd.1
`-- man8/
    |-- ab.8
    |-- apachectl.8
    |-- apxs.8
    |-- htcacheclean.8
    |-- httpd.8
    |-- logresolve.8
    |-- rotatelogs.8
    `-- suexec.8

この場合, それぞれの環境変数に関して, 以下のような記述を /etc/manpath.config に記述すると良い.

MANDATORY_MANPATH                          /usr/local/apache2/man
MANPATH_MAP        /usr/local/apache2/bin  /usr/local/apache2/man
MANDB_MAP          /usr/local/apache2/man  /usr/local/apache2/man

[EPAサーバ構築ドキュメント へ戻る]