본문 바로가기

운영체제/Unix & Linux

프로세스 모든 인자(argument) 표시 - solaris

반응형

개요

솔라리스의 기본 /usr/bin/ps명령어는 프로세스의 인자(argument)가 모두 표시가 되지 않는다. 프로세스의 모든 인자(argument)를 표시 하는 방법에 대해서 알아 본다.


1. 기본 ps 명령어(/usr/bin/ps)

아래 예처름 프로세스의 앞 부분만 표시되고 뒷 부분은 잘려서 표시 안됨

shell> ps -ef | grep 803 
noaccess   803     1   0 19:49:49 ?           4:06 /usr/java/bin/java -server -Xmx128m -XX:+UseParallelGC -XX:ParallelGCThreads=4

2. pargs 명령어는 프로세스로 전달 되는 모든 인자를 표시해준다. 

 - 단 프로세스의 소유자만이 pargs 명령어를 실행할수 있다.

syntax) pargs 프로세스_ID

shell> pargs 803
803:    /usr/java/bin/java -server -Xmx128m -XX:+UseParallelGC -XX:ParallelGCThreads=4
argv[0]: /usr/java/bin/java
argv[1]: -server
argv[2]: -Xmx128m
argv[3]: -XX:+UseParallelGC
argv[4]: -XX:ParallelGCThreads=4
argv[5]: -classpath
argv[6]: /usr/share/webconsole/private/container/bin/bootstrap.jar:/usr/share/webconsole/private/container/bin/commons-logging.jar:/usr/share/webconsole/private/container/bin/log4j.jar:/usr/java/lib/tools.jar:/usr/java/jre/lib/jsse.jar
argv[7]: -Djava.security.manager
argv[8]: -Djava.security.policy==/var/webconsole/domains/console/conf/console.policy
argv[9]: -Djavax.net.ssl.trustStore=/var/webconsole/domains/console/conf/keystore.jks
argv[10]: -Djava.security.auth.login.config=/var/webconsole/domains/console/conf/consolelogin.conf
argv[11]: -Dcatalina.home=/usr/share/webconsole/private/container
argv[12]: -Dcatalina.base=/var/webconsole/domains/console
argv[13]: -Dcom.sun.web.console.home=/usr/share/webconsole
argv[14]: -Dcom.sun.web.console.conf=/etc/webconsole/console
argv[15]: -Dcom.sun.web.console.base=/var/webconsole/domains/console
argv[16]: -Dcom.sun.web.console.logdir=/var/log/webconsole/console
argv[17]: -Dcom.sun.web.console.native=/usr/lib/webconsole
argv[18]: -Dcom.sun.web.console.appbase=/var/webconsole/domains/console/webapps
argv[19]: -Dcom.sun.web.console.secureport=6789
argv[20]: -Dcom.sun.web.console.unsecureport=6788
argv[21]: -Dcom.sun.web.console.unsecurehost=127.0.0.1
argv[22]: -Dwebconsole.default.file=/etc/webconsole/console/default.properties
argv[23]: -Dwebconsole.config.file=/etc/webconsole/console/service.properties
argv[24]: -Dcom.sun.web.console.startfile=/var/webconsole/tmp/console_start.tmp
argv[25]: -Djava.awt.headless=true
argv[26]: -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
argv[27]: org.apache.catalina.startup.Bootstrap
argv[28]: start
#

참고) pargs 명령어는 프로세스와 연관된 환경 변수도 출력 가능

syntax) pargs -e 프로세스ID

shell> pargs -e 823
823:    ora_pmon_sol11g
envp[0]: SKGP_SPAWN_DIAG_PRE_EXEC_TS=
envp[1]: SKGP_HIDDEN_ARGS=
envp[2]: SKGP_SPAWN_DIAG_POST_FORK_TS=
envp[3]: SKGP_SPAWN_DIAG_PRE_FORK_TS=
envp[4]: ORACLE_SPAWNED_PROCESS=1
envp[5]: HZ=
envp[6]: SHELL=/bin/bash
envp[7]: TERM=xterm
envp[8]: NLS_LANG=KOREAN_KOREA.KO16MSWIN949
envp[9]: ORACLE_SID=sol11g
envp[10]: ORACLE_BASE=/app/oracle
envp[11]: MAIL=/var/mail/oracle
envp[12]: PATH=
envp[13]: PWD=/app/oracle
envp[14]: LANG=ko
envp[15]: TZ=ROK
envp[16]: SHLVL=1
envp[17]: HOME=/app/oracle
envp[18]: LOGNAME=oracle
envp[19]: ORACLE_HOME=/app/oracle/product/11.2.0/dbhome_1
envp[20]: _=/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus
envp[21]: ORA_NET2_DESC=13,16
shell>


3.
/usr/ucb/ps 명령어를 이용한 프로세스의 모든 인자 표시

shell> /usr/ucb/ps auxww | grep 803
noaccess   803  0.3  1.5165516123316 ?        S 19:49:48  4:51 /usr/java/bin/java -server -Xmx128m -XX:+UseParallelGC -XX:ParallelGCThreads=4 -classpath /usr/share/webconsole/private/container/bin/bootstrap.jar:/usr/share/webconsole/private/container/bin/commons-logging.jar:/usr/share/webconsole/private/container/bin/log4j.jar:/usr/java/lib/tools.jar:/usr/java/jre/lib/jsse.jar -Djava.security.manager -Djava.security.policy==/var/webconsole/domains/console/conf/console.policy -Djavax.net.ssl.trustStore=/var/webconsole/domains/console/conf/keystore.jks -Djava.security.auth.login.config=/var/webconsole/domains/console/conf/consolelogin.conf -Dcatalina.home=/usr/share/webconsole/private/container -Dcatalina.base=/var/webconsole/domains/console -Dcom.sun.web.console.home=/usr/share/webconsole -Dcom.sun.web.console.conf=/etc/webconsole/console -Dcom.sun.web.console.base=/var/webconsole/domains/console -Dcom.sun.web.console.logdir=/var/log/webconsole/console -Dcom.sun.web.console.native=/usr/lib/webconsole -Dcom.sun.web.console.appbase=/var/webconsole/domains/console/webapps -Dcom.sun.web.console.secureport=6789 -Dcom.sun.web.console.unsecureport=6788 -Dcom.sun.web.console.unsecurehost=127.0.0.1 -Dwebconsole.default.file=/etc/webconsole/console/default.properties -Dwebconsole.config.file=/etc/webconsole/console/service.properties -Dcom.sun.web.console.startfile=/var/webconsole/tmp/console_start.tmp -Djava.awt.headless=true -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog org.apache.catalina.startup.Bootstrap start
#
반응형