#navi(../)
* プロセスIDによりプロセスごとの環境変数を確認する方法 [#u94803d8]
稼働しているプロセスの環境変数を確認する方法を記します。

#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* /proc/[PID]/environ により確認できる [#w9a650c8]
proc周りの/proc/プロセスID/environで稼働中プロセスの環境変数の値などを確認することができます。~
 cat /proc/プロセスID/environ

以下、CentOS5上で稼働中のPostgreSQLの環境変数を確認してみます。

** 例)PostgreSQLの環境変数を確認してみる [#e21fa2c4]
以下にPostgreSQL(postmaster)の環境変数を確認する手順を記します。
+ psコマンドとgrepコマンドでpostmasterのPIDを調べます。
 [sakura@centos ~]$ ps aux | grep postmaster | grep -v grep
 postgres  3746  0.0  0.0 154152  5160 ?        S    May31   0:00 /usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data
#br
+上記の操作によりこの場合、PDが3746であることが確認できます。
#br
+ /proc/プロセスID/environをcatしてみる
+ 一般ユーザーではアクセスできない旨のメッセージが表示されました。(Permission denied)
 [sakura@centos ~]$ cat /proc/3746/environ
 cat: /proc/3746/environ: Permission denied
+ rootユーザにsu(スイッチユーザー)する。
 [sakura@centos ~]$ su -
 Password:
+ rootユーザーにて/proc/プロセスID/environを再度catしてみる
 [root@centos ~]# cat /proc/3746/environ
 HOSTNAME=centosSHELL=/bin/bashTERM=linuxHISTSIZE=1000USER=postgresLS_COLORS=no=
 00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;3
 7;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.
 bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;3
 1:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31
 :*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=
 01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:MAIL=/var/spool/mail/postgresPATH=/us
 r/kerberos/bin:/usr/local/bin:/bin:/usr/binINPUTRC=/etc/inputrcPWD=/var/lib/pgs
 qlLANG=en_US.UTF-8SHLVL=1HOME=/var/lib/pgsqlLOGNAME=postgresCVS_RSH=sshPGDATA=/
 var/lib/pgsql/dataLESSOPEN=|/usr/bin/lesspipe.sh %sG_BROKEN_FILENAMES=1_=/usr/b
 in/postmaster
 [root@centos ~]#

以上、稼働中プロセスの環境変数を確認する方法でした。

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS