Cent OS 6.5 ÀÚ¹Ùµ¥¸ó ½ÇÇ๮Á¦

   Á¶È¸ 2438   Ãßõ 0    

1. nohup java -Djava.awt.headless=true -mx2048m -cp .:/home/ab/GIS/mapservice/server/gms-5a-19.2.25.jar:/home/ab/GIS/mapservice/server/lib/log4j-1.2.16.jar:/home/ab/GIS/mapservice/server/lib/netty-all-4.1.31.Final.jar:/home/ab/GIS/mapservice/server/lib/commons-pool-1.6.jar:/home/ansim/GIS/mapservice/server/lib/mariadb-java-client-1.7.1.jar:/home/ab/GIS/mapservice/server/lib/mybatis-3.4.5.jar abc.MapService &

이러한 형식으로 여러 jar 파일을 실행하는 데몬이 있습니다.

그냥 sh 나 ./로 실행하면 실행이 가능한데 rc.local에 등록하여도 하드웨어 재시작시 이 데몬만 올라오지 않습니다. 권한은 777로 주어봐도 같습니다.


2. 또한 이러한 형식으로 모니터링 프로그램용 스크립트를 만들어서 ./xx.sh start 할경우 PID는 echo 되는데 실행은 되지 않습니다.

#!/bin/bash

export JAVA_HOME=/usr/local/java/jdk1.8.0_161

export PATH="$PATH:$JAVA_HOME/bin"

export CATALINA_HOME=/home/ab/GIS/mapservice/server

export PATH="$PATH:$CATALINA_HOME"

export nowDate=`date +%Y-%m-%d%t%H:%M:%S`

pName="MapService"

pCount=$(ps -ef | grep $pName | grep -v grep | grep -v $pName.sh | wc -l)

PID=$(ps -ef | grep $pName | grep -v grep | grep -v $pName.sh | awk '{print $2}')

PID_FILE='/home/ab/GIS/mapservice/server/pid/MapService.pid'

PATH_TO_JAR='/home/ab/GIS/mapservice/server/gms-5a-18.5.16.jar:/home/ab/GIS/mapservice/server/lib/log4j-1.2.16.jar:/home/ab/GIS/mapservice/server/lib/netty-3.9.0.Final.jar:/home/ab/GIS/mapservice/server/lib/commons-pool-1.6.jar:/home/ab/GIS/mapservice/server/lib/mariadb-java-client-1.7.1.jar:/home/ab/GIS/mapservice/server/lib/mybatis-3.4.5.jar abc.MapService &'

JAVA_OPT="-mx2048m"

 

if [ "$1" = start ]

then

        echo "start"

touch $PID_FILE

echo "Starting ansim with PID $PID"

echo $PID > $PID_FILE

        if [ "$pCount" -eq 0 ]

then

echo "$nowDate"

echo "start MapService"

 sh $CATALINA_HOME/startservice.sh > /dev/null 2>&1

 rm -f $CATALINA_HOME/pid/$pName.pid

ps -ef | grep $pName | grep -v grep | grep -v $pNamae.sh | awk '{print $2}' >> $CATALINA_HOME/pid/$pName.pid

fi

elif [ "$1" = stop ]

then

        echo "stop"

kill -9 `ps -ef | grep $pName | grep -v grep | grep -v $pName.sh | awk '{print $2}'`

else

        echo 'must input a valid parameter.'

        echo 'Usage: NT_callProcessd.sh {start|stop}'


재부팅 시 , 혹은 셸로 작성하였을 때만 실행이 안되는 이유가 무었인지 너무나 궁금합니다.

짐작가는 의견 있으시면 부탁드려보겠습니다..

감사합니다.

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¹Ú¿ì¿­ 2019-04
½©À» ¸¸µå¼Å¼­ ÀçºÎÆÃÇغ¸½Ã°í ·Î±×¸¦ È®ÀÎÇغ¸½Ã±â ¹Ù¶ø´Ï´Ù.
µð¹ö±ëÀ» À§ÇØ ½© »ó´ÜÀº "#!/bin/bash" -> "#!/bin/bash -x" ·Î º¯°æÇϽñ¸¿ä.
½©ÀÇ ´ëºÎºÐÀº Æнº°¡ ¹®Á¦°¡ µÇ¾î ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù.

¿¹) test.sh

sh test.sh > /tmp/test.out 2>&1
     
²¨²Ù¸®1 2019-04
´äº¯ °¨»çÇÕ´Ï´Ù. ¼±»ý´Ô
online9 2019-04
1.
-cp .:
ÀÌ·¸°Ô µÇ¾î Àִµ¥ ÇöÀç µð·ºÅ丮¿¡ º°µµÀÇ Å¬·¡½º ÆÄÀÏÀÌ Ãß°¡·Î Á¸ÀçÇϳª¿ä?
Á¸ÀçÇÏ°í ±× µð·ºÅ丮°¡ ÇöÀç »ç¿ëÀÚ µð·ºÅ丮¶ó °¡Á¤Çϸé
cd /home/myuser
nohup java -Djava.awt . . .
ÀÌ·¸°Ô Çϰųª ¾Æ´Ï¸é ¾Æ·¡¿Í °°ÀÌ
nohup java -Djava.awt.headless=true -mx2048m -cp /home/myuser:/home/ab/GIS/mapservice/server/gms-5a- ...
ÇؾߵÇÁö ¾ÊÀ»±î¿ä

2.
sh $CATALINA_HOME/startservice.sh > /dev/null 2>&1
shellÀ» ½ÇÇàÇÒ¶§µµ nohupÀ» ÇÏ°í ¸¶Áö¸·¿¡ &¸¦ Ãß°¡ÇØ¾ß ¼¼¼ÇÀÌ Á¾·áµÇ¾îµµ ¹é±×¶ó¿îµå¿¡¼­ ½ÇÇàÀÌ µË´Ï´Ù.
±×¸®°í JAVA_OPT="-mx2048m" -Xmx ¿É¼ÇÀ¸·Î ¾Ð´Ï´Ù.
     
²¨²Ù¸®1 2019-04
´äº¯ °¨»çÇÕ´Ï´Ù.  ¼±»ý´Ô


QnA
Á¦¸ñPage 3011/5684
2014-05   4958471   Á¤ÀºÁØ1
2015-12   1494901   ¹é¸Þ°¡
2018-02   3984   Doker
2020-06   2461   Àü¼³¼ÓÀǹ̡¦
2013-03   6918   ¿¡¾Æºü
2016-01   4604   ´Ù¿Â
2018-02   3641   ¿å½ÉÀïe
2021-11   1525   µðÁöÀ¯
2016-01   3683   ¶ó±à
2020-06   3182   ÆÃÆÃÅÊÅÊÅÊ
2014-09   12768   ¸¶Àå±â½Å
2020-06   5815   ¼öÆÛ½ÎÀ̾ð
2016-12   4747   ¸®¿À
2019-04   2439   ²¨²Ù¸®1
2014-10   3812   ´ëÇѹα¹
2020-07   3411   AplPEC
2010-03   11757   starcontrol
2014-10   3479   À嵿°Ç2014
2013-04   10323   ¹éµÎ¼º
2010-03   8011   ´Ù¿Â¾ÆÀÌ
2013-04   5687   ¿ÀÁØÈ£5
2010-04   9287   À̼ºÈÆ