harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

bash CentOS command GNU/Linux メモ

サーバー構築をする時のミクロな悩み:環境変数

投稿日:2012年7月6日

Last Updated on 2021年7月4日 by かんりにん

※RedHat、CentOSでのbash環境での話です。

サーバー構築をする時、定石として一番悩ましいのが”環境変数をどこに明示するか?”なのですが
いろいろ悩んだ末の結論としては、”/etc/profile.d/以下に個別にファイルを作成・編集して読ませる”に
してます(***.shとか***.cshとか)。

[pukiwiki]
*目的:
・使用する環境変数ごとに、全ユーザーに共通で設定するものはファイルに明示的に記述する
・サーバーで使用する場合はユーザのホームにある”.bashrc”や”/etc/bashrc”などではなく
 /etc以下のファイルにユーザー環境に依存しない設定を行う
 →その一方で、デーモン実行ユーザーだけに設定する方法もあり
  不要なユーザーには

*個人的なやりかた:

1./etc/profile.d/以下に***.shや***.cshを作成
2.sourceコマンドで適用→有効に!

*意見が分かれそうな部分:

設定するパラメータや目的により、ケースバイケースではありますが
このあたりは人それぞれ、見解が分かれる部分かなと思います。

***ユーザーのログインシェルの”.bashrc”や”.bash_profile”に書くべきか?
-複数の開発者がシェアするシステムなら個別の変数設定はごく普通だけど、サーバーとしてはどうか?
-実行ユーザーにより通すべきPATH、通したくないPATHがある場合は
この方法はあり(oracleユーザーにのみORACLE関連の変数を設定するなど)。
個人的にはあまり意味が感じられないのですが、サーバー1台でDBやアプリ、Webサーバーなど
サービスをまとめて運用する場合は個別の設定はありかなとも思います。

*考え方:

変数が有効ならどこに書いてもいいじゃん!という姿勢はアレなので
いろいろなパターンに応じて適切な方法を考えていますが、単なるこだわりに過ぎない気もしてます。

-ログインユーザーに対してのみ変数を適用するか?
/path/to/homedir/.bash_profile
-デーモン実行ユーザーに対しても変数を適用するか?
/path/to/homedir/.bashrc
-ユーザー横断的に変数を適用するか?
/etc/bashrcや/etc/profile
-ユーザーではなく、サービス視点で変数を設定するか?
/etc/profile.d/****.sh、****.csh
-あるいはデーモン起動時にexportするか?
→起動スクリプトがあれば、そこに書く

[/pukiwiki]

もっともトラディショナルなやり方がベストだと思うので、もっとよい設定を知っている方が通りがかりましたら
ご教授ください…という未熟なサーバー大工のつぶやきでした。
つくづく勉強不足だなぁ。
 

-bash, CentOS, command, GNU/Linux, メモ

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

postfix + MailScanner

[pukiwiki] #contents *MailScannerインストール [#u6675e2d] MailScannerを試す。 これでウィルス/スパムを同時にスキャンできる。 【本家サイト】 …

[PHP] RedHat/CentOSのcurlで”SSL Connection Errorが発生しちゃった件

モバイルサイトのキャリア通信にて、ユーザー認証の部分でcurlを使っているが アプリサーバーのOSをCentOS5から6へ上げて検証していたところ、開発チームから“SSL Connecti …

nagiosgraph​/3.グラフ設定追加

  [pukiwiki] *nagiosgraphへのグラフ設定追加 [#if03e7ea] nagiosgraphは監視対象のホストにプラグインを追加すると、プロセス再起動時に認識し 追加したプラグ …

no image

script​/標準入力の判定(case文)

[pukiwiki] ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。 ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出 …

no image

snmpwalk利用時のtip/MIB出力時にOIDを見たいとき

  ※ホントにただのメモ。 MIB出力時にOIDを見たいときは、 オプション”-On”を付ける。 1.通常のsnmpwalk実行時 実行例 # snmpwalk -v 1 -c …