반응형

 

  • 필요한 파일들
    - Subversion소스 파일.
    - Subversion 의존성 파일.
    - Berkeley DB(4.3.29 설치).
    - OpenSSL.
    - Apache(httpd-2.0.59 버전으로 설치함)
  • 디렉토리 정보
    - 다운 로드 디렉토리 : /home/k2/data/.
    - 설치 디렉토리 : /home/k2/server.
  • 운영 환경 .
    - Linux(OS:AS300)
    - 설치시 계정은 ROOT가 아닌 일반 이용자 계정으로 설치하는 것을 원칙으로 함.
  • OpenSSL 파일 설치하기
    - cd /home/k2/data/
    - tar -xvzf openssl-0.9.8e.tar.gz
    - cd openssl-0.9.8e
    - ./configure -prefix=/home/k2/server/openssl-0.9.8e;make;make install
    - 특이사항 : configure 실행시 특정 디렉토리에 설치를 원하면 -prefix를 준다. 위에서 /home/k2/server/openssl-0.9.8e로 준다.
  • Berkeley DB 설치(ROOT 계정으로 설치)
    - cd /home/k2/data/
    - tar -xvzf db-4.3.29.tar.gz
    - cd db-4.3.29
    - ../dist/configure;make;make install
    - echo "/usr/local/BerkeleyDB.4.3/lib" >> /etc/ld.so.conf
    - ldconfig
  • Apache 설치
    - Apache가 있을 경우 재설치함
    - cd /home/k2/data/httpd-2.0.59
    - vi configure.sh
    ./configure --prefix=/home/k2/server/httpd-2.0.59 \
    --enable-nonportable-atomics=yes \
    --enable-headers \
    --enable-vhost-alias \
    --with-mpm=prefork \
    --enable-rewrite \
    --enable-expires \
    --enable-so \
    --enable-suexec \
    --with-suexec-caller=bin \
    --enable-ssl \
    --with-ssl=/home/k2/server/openssl-0.9.8e \
    --enable-cache \
    --enable-ext-filter \
    --with-z=/usr/include \
    --enable-dav \
    --with-dbm=db4 \
    --with-berkeley-db=/usr/local/BerkeleyDB.4.3
    - ./configure.sh;make;make install
  • Subversion 설치
    - cd /home/k2/data
    - tar -xvzf subversion-1.4.3.tar.gz
    - tar -xvzf subversion-deps-1.4.3.tar.gz
    - cd subversion-1.4.3
    - vi configure.sh
    ./configure \
    --prefix=/home/k2/server/subversion-1.4.3 \
    --with-zlib \
    --with-apxs=/home/k2/server/httpd-2.0.59/bin/apxs \
    --with-apr=/home/k2/server/httpd-2.0.59/bin/apr-config \
    --with-apr-util=/home/k2/server/httpd-2.0.59/bin/apu-config \
    --with-berkeley-db=/usr/local/BerkeleyDB.4.3
    - 주의 사항 --with-apr, --with-apr-util을 지정해 주어야 Berkeley DB나 혹은 APT-UTIL라이브러리 구버젼 오류가 나지 않음.
    - ./configure.sh;make;make install
  • 소스 저장소 만들기(ROOT 계정)
    - mkdir /home/svn
    - cd /home/cvs
    - svnadmin create --fs-type bdb sample
    - chmod -R k2.KPCT sample(Apache에서 접근 가능하도록 Apache의 계정,그룹을 접근 가능하게 해줌)
  • Apache 설정
    - cd /home/k2/server/httpd-2.0.59/conf
    - vi httpd.conf
    - subversion 설치되면서 아래 설정이 추가됨
    LoadModule dav_svn_module     modules/mod_dav_svn.so
    LoadModule authz_svn_module   modules/mod_authz_svn.so
    - 아래 내용 conf파일 맨끝에 저장
    <Location /svn/sample>
        DAV svn
        SVNPath /home/svn/sample
        AuthType Basic
        AuthName "Mimul's Repository"
        AuthUserFile /home/k2/server/httpd-2.0.59/conf/passwd
        Require valid-user
    </Location>
    - ../bin/htpasswd -c passwd mimuluser 엔터
    - New Password : 입력
    - Re-type new password : 입력
    - http://www.mimul.com/svn/sample 엔터 후 아이디와 패스워드 인증을 통해 접근하면 아래와 같은 메세지 나옴
    Revision 0:/
  • 에디터 지정(svn 커맨드 사용을 위해서)
    SVN_EDITOR=/usr/bin/vim
    export SVN_EDITOR
  • 기본 디렉토리 만들기
    - svn mkdir http://www.mimul.com/svn/sample/trunk 엔터 후 다음과 같은 화면 나타남.
    --This line, and those below, will be ignored--
    A    http://www.mimul.com/svn/sample/trunk
    - :q! 빠져 나옴
    - c를 누른다음 사용자 계정 인증하게 되면 Committed revision 1. 이라는 메세지와 함께 디렉토리가 만들어 짐.
    - branches, tags 디렉토리도 같은 방법으로 생성함.
    - svn list http://www.mimul.com/svn/sample 엔터
    branches/
    tags/
    trunk/

반응형

'오픈소스SW' 카테고리의 다른 글

웹 기반의 무료 Visio 툴  (0) 2008.12.26
Web-Based WYSIWYG editor 비교  (0) 2008.12.26
James Server 활용  (0) 2008.12.26
Ajax기반의 Webmail 소개  (0) 2008.12.26
JSCalendar를 활용한 일자 조회  (0) 2008.12.26
반응형

 

1. root권한으로 sendmail이 SMTP 포트를 점유해서 바인딩 에러 조치
 - #vi /etc/sysconfig/sendmail  -> DAEMON=no로 수정
 -#/etc/rc.d/init.d/sendmail restart 처리하면 25 port Listen하지 않음

2. james-2.3.1 다운
 - #wget http://apache.tt.co.kr/james/server/binaries/james-binary-2.3.1.tar.gz

3. #cd /home/k2/server/james-2.3.1
 - #chmod 755 run.sh phoenix.sh
 - #./run.sh(root) or ./phoenix.sh start &
   Using PHOENIX_HOME:   /home/k2/server/james-2.3.1
   Using PHOENIX_TMPDIR: /home/k2/server/james-2.3.1/temp
   Using JAVA_HOME:      /home/k2/jdk1.5.0_01
   Running Phoenix:

   Phoenix 4.2

   James Mail Server 2.3.1
   Remote Manager Service started plain:4555
   POP3 Service started plain:110
   SMTP Service started plain:25
   NNTP Service started plain:119
   FetchMail Disabled

4. 설정 추가
 - #/home/k2/server/james-2.3.1/apps/james/SAR-INF/config.xml
  : <servername>mimul.com</servername>
  : <server>211.1.111.11</server>

5. 유저 생성
  #/home/k2/server/james-2.3.1/bin> telnet localhost 4555
  Trying 211.245.104.40...
  Connected to kth (211.245.104.40).
  Escape character is '^]'.
  JAMES Remote Administration Tool 2.3.1
  Please enter your login and password
  Login id:
  root
  Password:
  root
  Welcome root. HELP for a list of commands
  adduser pepsi password
  User pepsi added
  quit
  Bye
  Connection closed by foreign host.

6. 메일 발송
  #/home/k2/server/james-2.3.1/bin> telnet mimul.com 25
  Trying 211.245.104.40...
  Connected to sss (211.245.104.40).
  Escape character is '^]'.
  220 sss SMTP Server (JAMES SMTP Server 2.3.1) ready Wed, 12 Sep 2007 23:54:53 +0900 (KST)
  ehlo mimul.com
  250-sss Hello mimul.com (sss [211.245.104.40])
  mail from: <pepsi@mimul.com>
  250 2.1.0 Sender <pepsi@mimul.com> OK
  rcpt to: <pepsi@mimul.com>
  250 2.1.5 Recipient <pepsi@mimul.com> OK
  data
  354 Ok Send data ending with <CRLF>.<CRLF>
  subject: test to pepsi@mimul.com
  test
  .
  250 2.6.0 Message received
  quit
  221 2.0.0 sss Service closing transmission channel

7. 메일 확인
 - #/home/k2/server/james-2.3.1/apps/james/var/mail/inboxes/pepsi> more 4D61696C313138393630393138383933372D30.Repository.FileStreamStore
Return-Path: <pepsi@mimul.com>
Message-ID: <29215192.01189609188977.JavaMail.root@sss>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Delivered-To: pepsi@mimul.com
Received: from sss ([211.245.104.40])
          by kth (JAMES SMTP Server 2.3.1) with SMTP ID 92
          for <pepsi@mimul.com>;
          Wed, 12 Sep 2007 23:59:47 +0900 (KST)
Date: Wed, 12 Sep 2007 23:59:47 +0900 (KST)
From: pepsi@mimul.com
subject: test to pepsi@mimul.com
test

반응형

'오픈소스SW' 카테고리의 다른 글

Web-Based WYSIWYG editor 비교  (0) 2008.12.26
Subversion 설치하기  (0) 2008.12.26
Ajax기반의 Webmail 소개  (0) 2008.12.26
JSCalendar를 활용한 일자 조회  (0) 2008.12.26
Open Source 기반의 차트 프로그램  (0) 2008.12.26
반응형

 

Claros의 inTouch 소개

Ajax기반의 웹 메일 오픈 소스를 하나 소개하겠습니다. James와 구성하여 자체 웹 메일 서비스 기능 구현을 해도 손색이 없을 것 같네요. 그리고 다양한 채팅이나 주소록을 지원하기 때문에 개인 커뮤니티 서비스로도 가능할 듯 합니다.

inTouch

1. 주요 기능들

  • Ajax Webmail
     - Ajax기반의 웹 메일을 임. po3나 imap 지원되는 메일 서버로 접근하여 메일을 가져옴
  • Bayesian Spam Protection
     - 스팸 필터링 기능 제공
  • MIME Compatible
     - 마임 타입 지원
  • RSS Reader
     - 탑 사이트에서 RSS지원(하나의 사이트만)
  • Multi-language
     - 다양한 언어 지원
  • Instant Messenger
     - 구글 메신저와 통신 가능
  • Multi-protocol Supports
     - Pop3, IMAP 지원
  • Contacts
     - 주소록 지원
  • Post-it Notes
     - 포스트잇 지원

2. 설치 방법

  • Install the Java 2 SDK, version 1.5 or 이상의 버젼을 설치한다.
  • Install Tomcat 5.x, 6.x 설치를 한다.
  • Install MySQL후 intouch-mysql.sql을 intouch 데이터 베이스 생성후에 실행한다.
  • intouch2.war파일을 CATALINA_HOME/webapps 에 카피해서 디플로이한다.
  • CATALINA_HOME/webapps/intouch2/WEB-INF/config/config.xml 파일을 수정한다.
     - /tmp 디렉토리 지정, 메일 서버 셋팅, mysql 데이터 베이스 설정
  • Tomcat 리스타트
반응형

'오픈소스SW' 카테고리의 다른 글

Subversion 설치하기  (0) 2008.12.26
James Server 활용  (0) 2008.12.26
JSCalendar를 활용한 일자 조회  (0) 2008.12.26
Open Source 기반의 차트 프로그램  (0) 2008.12.26
Ajax Scripts  (0) 2008.12.26
반응형

 

JSCalendar 1.0을 기반으로 하여 생년월일이나 일자등을 UI에서 선택할 수 있도록 해주는 Javascript입니다.
다운 사이트는 dynarch이며 jscalendar-1.0다운 받아서 카피한 다음에 필요한 js와 css를 삽입하여 원하는 화면을 구성할 수 있습니다.

1. 화면 UI

2. 사용 방법

<!-- main calendar program -->
<script type="text/javascript" src="/calendar.js"></script>
<!-- language for the calendar -->
<script type="text/javascript" src="/lang/calendar-ko.js"></script>
<!-- the following script defines the Calendar.setup helper function,
which makes adding a calendar a matter of 1 or 2 lines of code. -->
<script type="text/javascript" src="/calendar-setup.js"></script>
<!-- calendar stylesheet -->
<link rel="stylesheet" type="text/css" media="all"
href="/calendar-white.css" title="white" />
.........
 <td><input type="text" name="dob" id="dob" readonly="1" /></td>
 <td><img src="img.gif" id="f_trigger_c"
style="cursor: pointer; border: 1px solid red;" title="Date selector"
      onmouseover="this.style.background='red';"
onmouseout="this.style.background=''" /></td>
<script type="text/javascript">
    Calendar.setup({
        inputField     :    "dob",     // id of the input field
        ifFormat       :    "%Y-%m-%d", // format of the input field
        button         :    "f_trigger_c",// trigger for the calendar(button ID)
        align          :    "Tl",       // alignment (defaults to "Bl")
        singleClick    :    true
    });
</script>

반응형

'오픈소스SW' 카테고리의 다른 글

James Server 활용  (0) 2008.12.26
Ajax기반의 Webmail 소개  (0) 2008.12.26
Open Source 기반의 차트 프로그램  (0) 2008.12.26
Ajax Scripts  (0) 2008.12.26
Web-Based HTML Editor 비교 및 미리보기  (0) 2008.12.02
반응형

 

1. JFreeChart
 - 지원 기능 : pie charts (2D and 3D), bar charts (horizontal and vertical, regular and stacked), line charts, scatter plots, time series charts, high-low-open-close charts, candlestick plots, Gantt charts, combined plots, thermometers
 - 지원 언어 : Java 지원
 - 예제 사이트 : http://www.jfree.org/jfreechart/samples.html

2. Cewolf
 - 지원 기능 : Line [XY], [3D] Pie, [3D] Horizonal Bar, [3D] Vertical [XY] Bar, [3D] Stacked Vertical Bar, Area [XY], Scatter Plot, Candlestick, High Low, Gantt, Overlaid, Combined
 - 지원 언어 : Java 지원
 - 예제 사이트 : http://cewolf.sourceforge.net/new/demo.html

3. PHP/SWF Charts
 - 지원 기능 : Line, Column, Stacked column,  Floating column, 3D column, Stacked 3D column, Parallel 3D column, Pie, 3D Pie, Bar, Stacked bar,  Floating bar, Area, Stacked area, Candlestick, Scatter, Polar, Mixed, Composite, Joined
 - 지원 언어 : PHP + Flash (swf), SP, CFML, Perl언어에서도 지원
 - 예제 사이트 : http://www.maani.us/charts/index.php?menu=Gallery

4. Open Flash Chart(플래시 기반)
 - 지원 기능 : Data Lines, Bar Chart, 3D Bar Chart, Glass Bar Chart, Fade Bar Chart, Sketch Bars, Area Chart, Bars + Lines, Pie Chart, Pie Chart Links, Scatter Chart, Mixed Scatter, High Low Close, Candle
 - 지원 언어 : 플래시 기반으로 Java, Perl, Python, Ruby and Rails, php, .net 지원
 - 예제 사이트 : http://teethgrinder.co.uk/open-flash-chart/index.php

5. AmCharts(플래시 기반)
 -  지원 기능 : Animated or static, Value axis, Linear, logarithmic value axis scale, bullets, Clickable columns/bars, Gradient fills, plot area Axis
 - 지원 언어 :  플래시 기반으로 PHP, .NET, Java, Ruby on Rails, Perl, ColdFusion 언어 지원
 - 예제 사이트 : http://www.amcharts.com/column

6. FusionCharts(플래시 기반)
 - 지원 기능 : 다양한 기능 지원함
 - 지원 언어 : cross-browser, cross-platform flash chart로서 ASP.NET, ASP, PHP, JSP, ColdFusion, Ruby on Rails, simple HTML pages 지원
 - 예제 사이트 : http://www.fusioncharts.com/Free/Gallery.asp?gMenuItemId=3

7. Flot
 - 지원 기능 : Line 기능 등 기본적인 기능에 줌 등 다양한 옵션을 줄 수 있음
 - 지원 언어 : Javascript + jQuery로 구성되어 있어 웹기반 언어는 모두 지원, Cross Browser지원
 - 예제 사이트 : http://people.iola.dk/olau/flot/examples/

8. Flotr
 - 지원 기능 : Basic Axis, Basic Bar, Basic Legend, Mouse Track, Mouse Zoom, JSON Data
 - 지원 언어 : Javascript + Prototype 1.6.0.2로 구성되어 있어 웹기반 언어는 모두 지원, Cross Browser지원
 - 예제 사이트 : http://www.solutoire.com/experiments/flotr/examples/basic.html

9. PlotKit
 - 지원 기능 : HTML Canvas: Safari 2+, Opera 9+, Firefox 1.5+, IE 6 (in emulated mode), SVG: Opera 9+, Firefox 1.5+ (see note), IE6 with Adobe SVG
 - 지원 언어 : Javascript + MochiKit 1.3로 구성되어 있어 웹기반 언어는 모두 지원, Cross Browser지원
 - 예제 사이트 : http://media.liquidx.net/js/plotkit-tests/svg-sweet.html

10. Emprise JavaScript Charts
 - 지원 기능 : Interactive, Axis Scaling, Auto Zooming, Scrolling, Stackable Series, Multiple Chart Types, Ajax-Driven Data, Compatible, Plugin Free, Customizable
 - 지원 언어 : Javascript로 구현되어 있고 Cross Browser지원
 - 예제 사이트 : http://www.ejschart.com/examples/index.php

11. Visifire
 - 지원 기능 : 실버 라이트 설치되면 다양한 차트 기능이 지원됨
 - 지원 언어 : Silverlight Charts
 - 예제 사이트 : http://www.visifire.com/silverlight_charts_gallery.php
반응형

'오픈소스SW' 카테고리의 다른 글

Ajax기반의 Webmail 소개  (0) 2008.12.26
JSCalendar를 활용한 일자 조회  (0) 2008.12.26
Ajax Scripts  (0) 2008.12.26
Web-Based HTML Editor 비교 및 미리보기  (0) 2008.12.02
core file 분석  (0) 2008.04.17
반응형

1. jqac
 - jQuery를 활용한 Auto-complete/suggest javascript 라이브러리
 - 다운로드 : http://code.google.com/p/jqac/downloads/list
 - 데모 : http://www.cs.bgu.ac.il/~ygleyzer/files/utils/jqac/jqac_example.html

2. AutoComplete 1.2
 - prototype과 scriptaculous를 활용한 Auto-complete javascript 라이브러리
 - 다운로드 : http://www.beauscott.com/examples/autocomplete/autocomplete.zip
 - 데모 : http://www.beauscott.com/examples/autocomplete/doc/examples.html
 
3. AutoCompleter(mootools)
 - MooTools를 활용한 Auto-complete javascript 라이브러리
 - 다운로드 : http://digitarald.de/project/autocompleter/#download
 - 데모 : http://digitarald.de/project/autocompleter/1-1/showcase/delicious-tags/, http://digitarald.de/project/autocompleter/1-1/showcase/local/

4. AJAX AutoComplete
 - Jim Roos가 자체로 만든 Ajax framework
 - 다운로드 : http://jimroos.com/AutoComplete.zip
 - 데모 : http://www.jimroos.com/2007/05/ajax-autocomplete.html

5. YUI Autocomplete
 - Yahoo! UI Library로 만든 Auto-complete
 - 다운로드 : http://brandspankingnew.net/download.php?file=autosuggest_v2.zip
 - 데모 : http://developer.yahoo.com/yui/examples/autocomplete/index.html

6. AutoSuggest
 - 심플한 Javascript를 활용한 Auto-complete
 - 다운로드 : http://www.brandspankingnew.net/specials/ajax_autosuggest/ajax_autosuggest_autocomplete.html
 - 데모 : http://www.brandspankingnew.net/specials/ajax_autosuggest/ajax_autosuggest_autocomplete.html

7. dhtmlxCombo
 - 콤보형 Auto-complete
 - 다운로드 : http://www.dhtmlx.com/docs/download/dhtmlxCombo.zip
 - 데모 : http://dhtmlx.com/docs/products/dhtmlxCombo/index.shtml

8. AutoComplete (mootools)
 - scriptaculous를 활용한 Auto-complete
 - 다운로드 : http://script.aculo.us/
 - 데모 : http://demo.script.aculo.us/ajax/autocompleter
반응형
반응형
Web-Based HTML Editor 비교 및 미리보기

웹개발시 종종 필요로 하는 웹기반 HTML에디터..

Sourceforge에 등록되어 있는 오픈소스 웹기반 HTML 에디터의 종류와 기능비교  및 미리보기

순서는 Sourceforge의 Activity 순

 

- FCKeditor (http://sourceforge.net/projects/fckeditor/)
  * IE의 Editor Object 를 이용하여 제작
  * jsp, php, asp에 대응하는 이미지 업로드 및, 브라우징 기능
  * 미리 정의된 3가지 형태의 툴바 형태제공
  * 간편하게 기존 소스에 추가 가능
  * 테이블 편집 기능 지원
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요
  * 다양한 언어 지원(한글포함)

  * 완성도 높음.. 강추!
  * sample -
http://pistos.pe.kr/FCKeditor/_test/test.php

- HTMLarea (http://sourceforge.net/projects/itools-htmlarea)
  * 이미지 업로드 지원 안함
  * 풀스크린 편집 지원
  * 영문메뉴만 지원
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요 없음  
  * PHP Image Editor 지원 (
http://sourceforge.net/projects/imgmngedt/)

  * 한글화 및 이미지업로드만 커스터마이징하면 FCK에 떨어지지 않을듯
  * sample -
http://pistos.pe.kr/htmlArea/examples/full-page.html

 

- SPAW web-based WYSIWYG editor control (http://sourceforge.net/projects/spaw/)
  * 예쁜 디자인
  * 이미지 라이브러리 기능
  * 이미지 업로드 지원 안함  
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요 없음

  * 디자인만 놓고 보면 최고! 그러나 이미지삽입부분이 맘에 들지 않고, 사소한 버그가 좀 있는듯.
  * sample -
http://pistos.pe.kr/spaw/test.php

 

- hypertextarea (http://sourceforge.net/projects/hypertextarea/)
  * 기본적인 기능만 제공
  * 이미지 업로드 지원 안함
  * 심플한 디자인
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요 없음

  * 바로 갖다 쓰기엔 스크립트에러의 압박이 심함..
  * sample -
http://pistos.pe.kr/hypertextarea/javascript/demo.html

 

- RichText-editor (http://sourceforge.net/projects/richtext/)
  * 브라우저 언어설정이 한글인경우 문제있음(한글지원 커스터마이징 필요)
  * 이미지 업로드 지원 안함
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요 없음

  * 한때는 꽤 잘나가는 녀석이었는데... 이제는 경쟁력이 떨어짐.. 가져다 쓰려면 고쳐야 할것도 많음.
  * sample -
http://pistos.pe.kr/richtext/editor/rte/richedit.html

 

- aynHTML (http://sourceforge.net/projects/aynhtml/)
  * 이미지업로드 지원
  * 이미지 저장소 지원
  * 깔끔한 디자인
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요 없음

  * 나름대로 깔끔함.. 소스보기시 컬러링도 해주고.. 간단히 쓰기엔 좋을듯
  * sample -
http://pistos.pe.kr/aynHTML/

 

- XsDhtmlEditor (http://sourceforge.net/projects/xsdheditor/)
  * 심플한 디자인
  * 이미지 업로드 지원
  * 타 사이트 내용 copy&paste시 이미지 경로 변경 필요 없음

  * 바로 쓰기에는 버그가 좀 있음..
  * sample -
http://pistos.pe.kr/XsDhtmlEditor/

 

- bpEditor ( http://sourceforge.net/projects/bpeditor/)
  * 만들다 만듯..ㅡㅡ
  * sample -
http://pistos.pe.kr/bpShitEditor/bpShitEditor.php

반응형

'오픈소스SW' 카테고리의 다른 글

Open Source 기반의 차트 프로그램  (0) 2008.12.26
Ajax Scripts  (0) 2008.12.26
core file 분석  (0) 2008.04.17
탭 방식으로 html에 옷을 입혀주는 css  (0) 2008.02.02
공개웹방화벽을 이용한 보안대응  (0) 2008.01.11
반응형

제가 주로 쓰는 방법을 말씀드리자면


먼저 gdb <실행화일> -c <core 화일> 하여 디버거를 실행시킨후
아래와 같이 bt(backtrace)명령어로 어떤 함수를 부르다 죽었는지
확인합니다.


(gdb) bt
#0 0xef663628 in fprintf () from /usr/lib/libc.so.1
#1 0x15b0c in fxRslt (gubun=0x56bf0 "1", from=0x57070 "010305",
    to=0x574f0 "010305", loginid=0x57970 "TEST001")
    at /fxMain/SRC/fxWeb/cgi/rslt.c:50
#2 0x1597c in main (argc=1, argv=0xeffff964)
    at /fxMain/SRC/fxWeb/cgi/fxrslt.c:85
(gdb)


보니까 main->fxRslt->fprintf 하다가 죽었군요. 장소는 rslt.c 에 50번째 줄.
이제 frame 명령어로 해당 스택으로 이동합니다. 이후 list 명령어로
소스파일을 확인해봅니다.


(gdb) frame 1
#1 0x15b0c in fxRslt (gubun=0x56bf0 "1", from=0x57070 "010305",
    to=0x574f0 "010305", loginid=0x57970 "TEST001")
    at /fxMain/SRC/fxWeb/cgi/rslt.c:50
50 fprintf(logfile,"GUBUN:[%c] FROM:[%s] TO:[%s] LOGIN:[%s]\n",
(gdb) list
45 loginid[i] = '\0';
46 strcpy(audit_id, loginid);
47
48
sprintf(logfname,"%s/%s.log",FXRSLT_LOGDIR,RSLT_LOGINIT,loginid);
49 logfile = fopen(logfname, "w");
50 fprintf(logfile,"GUBUN:[%c] FROM:[%s] TO:[%s] LOGIN:[%s]\n",
51 gubun[0],from,to,loginid);
52
53 if (ChkDate(from,to)==0) {
54 fprintf(logfile,"Error in ChkDate\n");
(gdb)


그담엔 print명령어등으로 각 변수값을 조사하여 NULL이 있는지 체크해보면
됩니다.
----------------
[스크랩] Java VM Core Dump 분석   조회(41)
 
java 프로그램 | 2005/01/02 (일) 16:17   공감하기(0)  | 스크랩하기(0) 
 
 

대부분의 문제 발생 원인(리스트는 우선 순위가 아닙니다.)
 
1.       해당 어플리케이션이 사용하는 Native 코드 사용시 발생
 
2.       모든 Type 2 JDBC 드라이버는 native DBMS 라이브러리를 사용하므로 이러한 유형의 오류가 발생할 수 있습니다.  이 드라이버가 문제의 원인인지 판별하려면 pure java(Type 4) JDBC 드라이버로 전환합니다.
 
3.       JNI 호출을 사용하여 액세스하는 모든 native 라이브러리도 이러한 유형의 오류가 발생할 수 있습니다.  응용 프로그램에서 이러한 라이브러리를 사용하는 경우 신중하게 조사해야 합니다.  보통 이러한 라이브러리는 응용 프로그램에서 해당 기능을 필요로 하기 때문에 제외시키기 어렵습니다.
 
4.       JVM 자체도 native 프로그램이며 이러한 오류가 발생할 수 있습니다.  JVM이 의심스러운 경우 인증된 다른 JVM 또는 상위 버전을 사용하여 JVM 버그가 오류의 원인인지 파악합니다.  많은 JVM 버그는 JIT 컴파일러 사용과 관련이 있으며 종종 이 기능을 해제하면 이러한 유형의 문제가 해결되기도 합니다.  이 기능을 해제하려면 대개 -Djava.compiler=none 명령 옵션을 사용합니다. 
 
위와 같은 원인 이외에도 발생 원인은 많습니다. Core file이 생성되면 이 Core file을 분석하여 발생원인의 범위를 좁혀 가야 합니다.(발생원인을 좁혀가는 거지 발생원인을 정확히 집어내기는 어렵습니다. – 능력이 출중한 사람은 되겠지요.)
이 문서에서는 Core file 분석 Tool인 dbx나 gdb을 사용하지 않고 각 OS에서 제공하는 Core File분석 툴을 사용 하여 분석하는 방법에 관하여 알아봅니다.
 
참고 : 다음과 같은 경우 Core File이 생성되지 않을 수도 있습니다.
 
•        시스템 또는 사용자 별 ulimit -c(코어 파일의 설정된 크기)를 검사합니다.
•        사용 가능한 사용자 디스크 공간을 검사합니다(예: 디스크 할당량이 있습니까?)
•        Solaris에서는 /etc/system 파일에 다음 매개변수가 있는데 이 값에 따라 코어 파일이 생성되지 않을 수 있습니다. set sys:coredumpsize=0
•        Linux에서는 기본적으로 코더 덤프가 오프로 있습니다.  RedHat Advanced Server 2.1에서는 구성 정보 파일이 /etc/security에 있습니다.  limits.conf라는 파일에서 설정 사항을 확인할 수 있습니다. "core"라는 단어를 찾아보십시오.  0으로 설정되어 있으면 coredump를 만들 수 없습니다.
•        HP OS 설정 커널 매개변수 maxdsiz(max_per_proc_data_size는 사용자 프로세스의 데이터 세그멘트 크기를 늘림) 64M에서 134M 이상으로 변경합니다. 

 
Core File 분석 Tool
다음은 각 OS에서 사용하는 분석 툴입니다.
분석을 위해서는 statck분석 툴과 map분석 툴을 사용합니다.
    Solaris:
        stack 명령 = pstack
        map 명령 = pmap
    IBM의 추가 기능이 있는 AIX 5.2 이상(이전 버전에서는 사용할 수 없음)
        stack 명령 = procstack
        map 명령 = procmap
        참고: http://www-106.ibm.com/developerworks/eserver/articles/AIX5.2PerfTools.html
 
    Linux:
        stack = lsstack
        map = pmap
 
참고: http://sourceforge.net/projects/lsstack/에서 lsstack을 가져와서 Linux 플랫폼에서 빌드할 수 있습니다.
이 명령은 Solaris의 pstack에 해당합니다.
 
http://web.hexapodia.org/~adi/pmap.c에서 pmap 소스를 가져와서 Linux 플랫폼에서 빌드할 수 있습니다.
 
HPUX: 기본 제공 툴은 없으며, GDB, ADB을 사용함.
 
명령어 사용
 
각 명령어의 보다 자세한 옵션 사항은 명령어의 Help을 참조하십시오.
 
Solaris 예
 
/usr/bin/pstack [-F] [pid | core] > [분석내용저장파일명]
 
ex) pstack core2004-10-29 > coreStack.txt
 
/usr/bin/pmap [ -rslF ]  [ pid | core ] > [분석내용저장파일명]
 
Ex) pmap core2004-10-29 > coreMap.txt
 
 
분석
 
coreStack.txt 내용
core 'core' of 20956:   /wwsl/sharedInstalls/solaris/wls70sp2/jdk131_06/bin/../bin/sparc/nativ
-----------------  lwp# 14 / thread# 25  --------------------
 ff369764 __sigprocmask (ff36bf60, 0, 0, e6181d70, ff37e000, 0) + 8
 ff35e110 _sigon   (e6181d70, ff385930, 6, e6180114, e6181d70, 6) + d0
 ff361150 _thrp_kill (0, 19, 6, ff37e000, 19, ff2c0450) + f8
 ff24b900 raise    (6, 0, 0, ffffffff, ff2c03bc, 4) + 40
 ff2358ec abort    (ff2bc000, e6180268, 0, fffffff8, 4, e6180289) + 100
 fe3c68fc __1cCosFabort6Fl_v_ (1, fe4c8000, 1, e61802e8, 0, e9f90420) + b8
 fe3c59f0 __1cCosbBhandle_unexpected_exception6FpnGThread_ipCpv_v_ (ff2c02ac, fe53895c, fe4dc164, fe470ab4, fe4c8000, e6180308) + 254
 fe20a8b4 JVM_handle_solaris_signal (0, 25d5b8, e6180d90, fe4c8000, b, e6181048) + 8ec
 ff36b824 __sighndlr (b, e6181048, e6180d90, fe20a8cc, e6181e14, e6181e04) + c
 ff3684d8 sigacthandler (b, e6181d70, 0, 0, 0, ff37e000) + 708
 --- called from signal handler with signal 11 (SIGSEGV) ---
 e9f90420 Java_HelloWorld_displayHelloWorld (25d644, e6181224, e61819b8, 0, 2, 0) + 30
 00090ae4 ???????? (e6181224, e61819b8, 25d5b8, fe4c8000, 0, 109a0)
 0008dc4c ???????? (e61812c4, ffffffff, ffffffff, 97400, 4, e61811b8)
 0008dc4c ???????? (e618135c, e61819b8, fe4c8000, 99600, c, e6181250)
 0008dc4c ???????? (e61813ec, f76a2f90, e618147c, 99600, c, e61812f8)
 0008ddb4 ???????? (e618147c, f68578b8, 0, 99974, c, e6181388)
 0008ddd8 ???????? (e618154c, e61815c8, e61815cc, 99974, 4, e6181410)

 
굵은 부분이 오류가 발생한 부분을 나타낸다. “--- called from signal handler with signal“을 찾으면 된다. 이 오류가 발생한 메모리 영역이 “e9f90420“ 이다. coreMap.txt 파일에서 이 주소값이 포함되는 범위를 찾아본다.
 
coreMap.txt 내용
E9500000   1184K read
E9680000   1392K read
E9800000   4608K read
E9F60000    136K read/write/exec
E9F90000      8K read/exec         /home/usera/wls70/solaris/projectWork/lib/libhello.so
E9FA0000      8K read/write/exec   /home/usera/wls70/solaris/projectWork/lib/libhello.so
E9FB4000      8K read/write/exec
E9FC0000    120K read/exec         /usr/lib/libelf.so.1
E9FEE000      8K read/write/exec   /usr/lib/libelf.so.1

 
“e9f90420“ 가 포함된 범위에서 사용되는 라이블러리는 “libhello.so“ 임을 알 수 있다.
Core 발생은 주 원인은 “libhello.so“ 일 가능성으로 추측할 수 있다. 
 


반응형
반응형
http://clagnut.com/sandbox/csstabs/?writingtext=csstabs

The HTML:

<ul id="globalnav">
<li><a href="#">Home</a></li>
<li><a href="#" class="here">About</a>
<ul>
<li><a href="#">Vision</a></li>
<li><a href="#">Team</a></li>
<li><a href="#">Culture</a></li>
<li><a href="#">Careers</a></li>
<li><a href="#" class="here">History</a></li>
<li><a href="#">Sponsorship</a></li>
</ul>
</li>
<li><a href="#">News</a></li>
<li><a href="#">Proof</a></li>
<li><a href="#">Process</a></li>
<li><a href="#">Expertise</a></li>
<li><a href="#">Help</a></li>
</ul>


The CSS:

/*globalnav*/

#globalnav {
position:relative;
float:left;
width:100%;
padding:0 0 1.75em 1em;
margin:0;
list-style:none;
line-height:1em;
}

#globalnav LI {
float:left;
margin:0;
padding:0;
}

#globalnav A {
display:block;
color:#444;
text-decoration:none;
font-weight:bold;
background:#ddd;
margin:0;
padding:0.25em 1em;
border-left:1px solid #fff;
border-top:1px solid #fff;
border-right:1px solid #aaa;
}

#globalnav A:hover,
#globalnav A:active,
#globalnav A.here:link,
#globalnav A.here:visited {
background:#bbb;
}

#globalnav A.here:link,
#globalnav A.here:visited {
position:relative;
z-index:102;
}

/*subnav*/

#globalnav UL {
position:absolute;
left:0;
top:1.5em;
float:left;
background:#bbb;
width:100%;
margin:0;
padding:0.25em 0.25em 0.25em 1em;
list-style:none;
border-top:1px solid #fff;
}

#globalnav UL LI {
float:left;
display:block;
margin-top:1px;
}

#globalnav UL A {
background:#bbb;
color:#fff;
display:inline;
margin:0;
padding:0 1em;
border:0
}

#globalnav UL A:hover,
#globalnav UL A:active,
#globalnav UL A.here:link,
#globalnav UL A.here:visited {
color:#444;
}

반응형
반응형
http://www.krcert.or.kr/firewall2/index.jsp


  WebKnight

       AQTRONIX사에서 개발한 IIS 웹서버용 공개 웹방화벽으로 SQL Injection 공격 등 IIS 웹서버의 주요 공격 차단 가능
       홈페이지 : http://www.aqtronix.com/?PageID=99

  ModSecurity

       Ivan Ristic이 개발한 Apache 웹서버용 공개 웹방화격으로 PHP Injection 공격 등 Apache 웹서버의 주요 공격 차단 가능
       홈페이지 : http://www.modsecurity.org




http://www.boho.or.kr/index.html
반응형

+ Recent posts