기본 콘텐츠로 건너뛰기

Ubuntu – Service(e. Tomcat) 등록 및 삭제

새로 시작하는 서비스를 등록하기 위해 스크립트 작성과 서비스 등록법을 설명한다.
해당 자료는 askubuntu.com에서 참조하였다.
Init 스크립트
#!/bin/bash

### BEGIN INIT INFO
# Provides:        tomcat7
# Required-Start:  $network
# Required-Stop:   $network
# Default-Start:   2 3 4 5
# Default-Stop:    0 1 6
# Short-Description: Start/Stop Tomcat server
### END INIT INFO

PATH=/sbin:/bin:/usr/sbin:/usr/bin

start() {
 sh /usr/share/tomcat7/bin/startup.sh
}

stop() {
 sh /usr/share/tomcat7/bin/shutdown.sh
}

case $1 in
  start|stop) $1;;
  restart) stop; start;;
  *) echo "Run as $0 "; exit 1;;
esac
위 스크립트 작성 후 /etc/init.d/에 위치시킨다.
chmod 755 /etc/init.d/tomcat7
update-rc.d tomcat7 defaults
등록 후
service tomcat7 [start|stop|restart]
로 사용이 가능하다.
그럼 update-rc.d는 무엇일까? 우분투는 부팅시 서비스를 등록 할 수 있다. 그 때 이 명령어를 이용한다.
방법은 위와 동일하다.
1. /etc/init.d/ 위치에 스크립트 생성
2. chmod를 이용하여 권한 부여
3. update-rc.d를 이용하여 서비스를 등록 한다.
삭제 법은 아래와 같다
update-rc.d -f ‘service name’ remove
아래는 런레벨에 대해서 설명하고 있다.
레벨설명
0시스템 정지
1단일 사용자 모드
2~5다중 사용자 모드
6시스템 재가동
update-rc.d 명령은 /etc/init.d/와 rcN.d 디렉토리의 파일 사이에 연결을 만든다.
그 연결 파일의 명칭은 ‘S’, ‘K’로 시작, 그 뒤로 두자리 숫자와 등록된 스크립트 파일명으로 구성된다. 각 rcN.d 는 N에 해당하는 런레벨으로 실행 될 때 ‘S’로 시작되는 스크립트들이 실행되고, ‘K’는 해당 런레벨 N을 빠져 나올 때 실행되게 된다. ‘S’, ‘K’ 뒤에 숫자는 실행 순서를 나타내게 된다.

현재 등록된 update-rc.d 시작 프로그램의 리스트를 확인하기

명령어를 친다.
ls /etc/rc?.d

다음과 같이 나온다.
Screen Shot 2014 01 05 at 5 20 36

나는 시작프로그램은 jong-blahblah 와 같은 형식으로 만들었다.

grep 검색어로 지정해서 찾는다.
ls /etc/rc?.d | grep jong-

Screen Shot 2014 01 05 at 5 21 00

ls /etc/rc0.d 로 확인해 보는 게 더 깔끔하겠다.

다음과 같이 나온다.

댓글

이 블로그의 인기 게시물

톰캣 세션 타임 아웃 설정

web.xml 파일이 있습니다. 이 파일을 열어서 session이라고 검색해 보십시오. <session-config>   <session-timeout>360</session-timeout> </session-config> 위 단락을 찾을 수 있습니다. session-timeout 시간 360이 바로 자동로그아웃 세션 시간입니다.  단위는 분이고요. 30분으로 하고 싶으시면 30으로 바꿔서 저장해주시면 되는 것이죠~ Tomcat 내에서 Session Timeout 를 설정하는 우선 순위가 존재 한다. session.setMaxInactiveInterval() 프로그램내에서 time out 를 설정했을 경우 Web application 내의 WEB-INF/web.xml Tomcat 내의 conf/web.xml 실제로 Tomcat(conf/web.xml)내에 Default 로 설정되어 있는 것은 다음과 같다. < HttpSession 메서드 > getCreationTime() - 세션 생성 시간 getLastAccessedTime() - 마지막 요청 시간 setMaxInactiveInterval() - 최대허용시간 설정 (초) getMaxInactiveInterval() - 최대허용시간 invalidate() - 세션 제거 < 타임아웃 설정하기 > - 일정 시간 동안 요청이 없으면 세션을 제거한다  1. DD에서 전체 세션 타임아웃 설정       web.xml 1. DD에서 전체 세션 타임아웃 설정       web.xml <web-app ... >     <servlet>        ...

java 특정 디렉토리에 있는 파일 목록을 읽어내기, 정렬해서 가져오기

폴더 리스트 가져오기 String path="C:\"; File dirFile=new File(path); File []fileList=dirFile.listFiles(); for(File tempFile : fileList) {   if(tempFile.isFile()) {     String tempPath=tempFile.getParent();     String tempFileName=tempFile.getName();     System.out.println("Path="+tempPath);     System.out.println("FileName="+tempFileName);     /*** Do something withd tempPath and temp FileName ^^; ***/   } } 정렬해서 가져오기 import java.io.FileFilter; import java.io.IOException; import java.util.Arrays; import java.util.Date; import org.apache.commons.io.comparator.LastModifiedFileComparator; import org.apache.commons.io.filefilter.FileFileFilter; public class LastModifiedFileComparatorTest { public static void main(String[] args) throws IOException { File directory = new File("."); // get just files, not directories File[] files = directory.listFiles((FileFilter) FileFileFilter.FILE); System.out.println("Defaul...

dmesg 메시지 실시간으로 보기

참조사이트 http://imitator.kr/Linux/556 # tail -f /var/log/messages # tail -f |dmesg //기본 2초 단위로 갱신 된다. # watch "dmesg | tail -f" //1초 단위로 갱신하면서 보여준다. # watch -n 1 "dmesg | tail -f" // 보여주는 줄을 20으로 늘린다. (기본 10줄) # watch -n 1 "dmesg | tail -f -n 20"