LINUX
2016.04.27 08:29

OpenGrok 설치 빨리하기

조회 수 10523 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
Skip to end of metadata
Go to start of metadata

0. 설치환경 : Ubuntu 12.04


 

1. 필요한 Package


 

$ sudo apt-get install tomcat6 tomcat6-admin exuberant-ctags

Tomcat등의 필요한 package들을 설치하고 OpenGrok을 download 받아서 압축을 푼다.

2. 실행환경 만들기


OpenGrok은 설치 환경이 /var/opengrok directory 아래에 구성되어 있다고 가정한다. 이를 위해 압축을 해제한 OpenGrok file들을 /var/opengrok 으로 옮긴다.

$ sudo mv ./opengrok-0.11.1 /var/opengrok

3. SRC_ROOT 변경


/var/opengrok/bin/OpenGrok file을 열어서 SRC_ROOT를 source 들이 있는 곳으로 변경한다. 기본 설정대로 /var/opengrok/src 아래에 source file을 두려면 이 설정은 건너 뛰고 src directory만 만들어 주면 된다.

    # REQUIRED: Source Code/Repository Root

    #           (your source code or the root of all repositories)

    #SRC_ROOT="${OPENGROK_INSTANCE_BASE}/src"

    SRC_ROOT="<YOUR_SOURCE_REPOSITORY_TOP>"

 

OpenGrok script의 실행경로 변경하기

OpenGrok script는 /var/opengrok directory아래에 bin, data, ext, src가 있는 것을 가정하고 작성되어 있다. Source 경로는 별도의 directory에 보관하고 있는 것을 그대로 사용하고, bin, data, ext는 home directory에 opengrok directory 아래에 있는 것을 사용하므로, OpenGrok script를 열어서 관련 부분을 수정해 준다.

1. OPENGROK_INSTANCE_BASE

: 이 값을 기준으로 bin, data, ext, src의 경로가 기본값으로 설정되어 있으므로, 원하는 경로로 이 값을 바꾼다.

    #OPENGROK_INSTANCE_BASE="${OPENGROK_INSTANCE_BASE:-/var/opengrok}"
    OPENGROK_INSTANCE_BASE="${OPENGROK_INSTANCE_BASE:-/<YOUR_HOME_DIRECTORY>/opengrok}"

2. SRC_ROOT

: Source code는 다른경로에 있는 것을 사용하므로, SRC_ROOT를 변경한다.

    # REQUIRED: Source Code/Repository Root
    #           (your source code or the root of all repositories)
    #SRC_ROOT="${OPENGROK_INSTANCE_BASE}/src"
    SRC_ROOT="<YOUR_SOURCE_REPOSITORY_TOP>"

configuration.xml 위치 변경

web.xml에서 configuration.xml 생성위치를 변경해준다. 이 파일은 source.war안에 들어 있으므로 압축을 해제한 후 수정하고 재 압축하는 다소 번거로운 절차를 따라야 한다.

1. 먼저 source.war file의 압축을 푼다.

$ unzip opengrok/lib/source.war -d opengrok/lib/source

2. web.xml을 수정한다.

: opengrok/lib/source/WEB-INF/web.xml file을 열어서 CONFIGURATION 부분의 <param-value> 값을 우리가 사용할 etc 위치로 변경해 준다. (Line 9)

$ vi opengrok/lib/source/WEB-INF/web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
  <display-name>OpenGrok</display-name>
  <description>A wicked fast source browser</description>
  <context-param>
    <param-name>CONFIGURATION</param-name>
    <!-- <param-value>/var/opengrok/etc/configuration.xml</param-value> -->
    <param-value><YOUR_HOME_DIRECTORY>/opengrok/etc/configuration.xml</param-value>
    <description>Full path to the configuration file where OpenGrok can read it's configuration</description>
  </context-param>

3. 다시 zip으로 압축한다.

$ zip -u opengrok/lib/source.war opengrok/lib/source/WEB-INF/web.xml 
  adding: opengrok/lib/source/WEB-INF/web.xml (deflated 80%)

4. 설치 및 indexing


모든 설정이 끝났으니 deploy하고 indexing을 시작한다.

$ sudo /var/opengrok/bin/OpenGrok deploy

$ sudo /var/opengrok/bin/OpenGrok index

http://<IP Address>:8080/source 접속하면 opengrok 화면이 보인다.

5. Source Sync 및 자동 indexing


root 권한으로 작업한다.

crontab에서 자동으로 돌릴 시간과 script 파일명을 추가한다. (data_capa_check.sh 참고)

     $vi /etc/crontab

script 파일은 매시/매일/주/월 단위로 실행 가능하며 /etc 밑의 원하는 폴더에 넣으면 된다.

     cron.hourly / cron.daily / cron.weekly / cron.monthly

실행시킬 script 파일을 미리 실행시켜서 원하는 cmd가 제대로 실행되는지 확인한다.

  • gna server 경우, 아래의 shell script를 수행하여 OpenGrok 파일을 update 하도록 하였다.
    /etc/cron.weekly/opengrok_src_update.sh 

Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
30 LINUX 내 .bashrc 설정 secret 2015.08.31 0 0
29 LINUX 커맨드라인에서 url 접근 - wget 사용법 2015.09.30 12067 0
28 LINUX 리눅스 부팅시 명령스크립트 실행하기 2015.09.30 10398 0
27 LINUX 리눅스 시스템 시작시에 자동 실행할 파일 등록하기 2015.09.30 10140 0
26 LINUX iptables 명령어 - 방화벽 설정 2016.02.01 12712 0
25 LINUX 삼바(SAMBA)를 이용한 윈도우 접근 가능 공유폴더 만들기 2016.02.23 17876 0
24 LINUX 리눅스 그룹관리 (groupadd, groupmod, groupdel) 2016.02.23 8327 0
23 LINUX 우분투(Ubuntu) 설치된 패키지 목록 확인하기 2016.03.17 6684 0
22 LINUX 우분투(Ubuntu)에서 APM 웹서버 구축하기 2016.03.17 7416 0
21 LINUX 리눅스 계정 목록 보기 2016.03.21 7380 0
20 LINUX 리눅스 파일시스템 체크 하기 fsck(e2fsck) 사용법 2016.04.15 39754 0
» LINUX OpenGrok 설치 빨리하기 2016.04.27 10523 0
18 LINUX [Shell Script] Bash 실행결과를 변수에 담기 2017.05.16 13448 0
17 LINUX [Shell Script] Bash 파일 유무 체크하는 방법과 파일 존재 검사 옵션 2017.05.16 21309 0
16 LINUX 블루투스 사용하기 hci tool 2017.05.24 11901 0
목록
Board Pagination ‹ Prev 1 2 3 4 5 Next ›
/ 5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5