[Memo2014][ITPASS]パスの設定
[ITPASSサーバ構築・運用ドキュメント へ戻る]
概要
- 注意: この作業は各プログラムの設定の中で, パスを設定する必要があるときに行うため, この時点で特に作業は行わなかった.
環境変数 PATH や man に関する環境変数 (MANDATORY_MANPATH, MANPATH_MAP, MANDB_MAP) に関して, システム側でデフォルト値を設定する方法について記す.
注意: このページは各プログラムの設定の中で, パスを設定する必要があるときに参照すること.
環境変数 PATH は, 使用するシェル毎に異なった設定ファイルから読み込まれる.
なお, ITPASS サーバでは管理者アカウントを利用する際に, sudo を 用いることを前提としているため, 多少冗長に設定を行っている部分がある.
各シェルの設定
以下の文章に従い, <一般ユーザ用コマンドのパス>, <システム管理用コマンドのパス> の部分に PATH に追加したいパスを書き加えること.
sh, bash
/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
もし zsh が入っていない場合は apt-get で install しておく.
/etc/zsh/zshenv (デフォルトでこのファイルが無ければ作成する)に以下のように書き込む
# # This file should contain commands to set the command # search path, plus other important environment variables. # This file should not contain commands that produce # output or assume the shell is attached to a tty. # # Global Order: zshenv, zprofile, zshrc, zlogin if [[ -z "$PATH" || "$PATH" == "/bin:/usr/bin" ]] then export PATH="/usr/local/bin:/usr/bin:/bin:/usr/games" fi # 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
[ITPASSサーバ構築・運用ドキュメント へ戻る]
Keyword(s):
References:[[ITPASS2014]2014年度サーバ構築ログ]