블로그 이미지
BJcomm
bjcomm

공지사항

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

calendar

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
11-21 20:00

Trac 설치 및 설정 메뉴얼

2014. 11. 25. 17:49 | Posted by bjcomm

Trac 설치 및 설정 메뉴얼

1. 머신 기본 세팅상태

1.1 버전

  • 모든 기본 세팅은 apt-get로 설치함.
  • Apache2 : 2.2.9-7 ubuntu3
  • Mysql-server : 5.0.67-0 ubuntu6 (나중을 위해서 미리 설치됨)
  • php5 : 5.2.6-2 ubuntu4 (나중을 위해서 미리 설치됨)
  • Python : 2.5.2-1 ubuntu1 (apache 연동 및 인증 모듈도 추가)
  • Subversion : 1.5.1 dfsg1-1 ubuntu
  • OpenSSL : 0.9.8g10.1 ubuntu

1.2 경로 확인

  • Subversion : /home/svn
  • Trac : /home/trac
  • apache2 : /etc/apache2

2. Trac 설치

2.1 Easy_install과 ClearSilver 설치

  • apt-get install python-setuptools
  • apt-get install clearsilver*

2.2 Trac 설치

2.3 Trac Plugin 설치

2.3.1 SVN에서 Plugin 익스포트

2.3.1.1 trac_release 구성

util 플러그인 설치전에 설치할 유틸
Plugin 순수 플러그인
Externals 커스터마이징한 플러그인
MovePlugin /home/trac/sample/plugin쪽에 복사하면 설치되는 플러그인
config 복사할 trac.ini svnAccess.conf 파일
Install_Plugin.sh Plugin과 Externals 자동설치 스크립트

2.3.2 util 설치

  • easy_install trac_release/util/pyExcelerator-0.6.3a
  • easy_install trac_release/util/xlrd-0.7.0
2.3.2.1 screenshot util 설치
  • mkdir /usr/lib/python2.4/Extensions
  • cd /usr/lib/python2.4/Extensions
  • wget http://effbot.org/downloads/Imaging-1.1.6.tar.gz
  • apt-get install libjpeg*
  • apt-get install zlib*
  • apt-get install freetype*
  • cd Imaging-1.1.6/
  • python setup.py build_ext -i
  • python selftest.py
  • python setup.py install
2.3.2.2 graphvis util 설치
  • apt-get install graphviz
  • apt-get install librsvg2-2 librsvg2-bin librsvg2-common librsvg2-dev
  • apt-get install gsfonts
  • apt-get install msttcorefonts
  • cd /usr/share/fonts/truetype/msttcorefonts/
  • wget ftp://ftp.mizi.com/pub/baekmuk/baekmuk-ttf-2.1.tar.gz
  • tar -zxvf baekmuk-ttf-2.1.tar.gz

2.3.3 Plugin 및 Externals 설치

2.3.3.1 수동 설치
  • trac_release/Plugin/WebAdminPlugin # 1순위 설치
  • mv /usr/lib/python2.5/site-packages/Trac-0.11.3-py2.5.egg/trac /usr/lib/python2.5/site-packages/Trac-0.11.3-py2.5.egg/trac_ori
  • cp -rf trac_release/Externals/trac /usr/lib/python2.5/site-packages/Trac-0.11.3-py2.5.egg/ # 소스 수정된 trac으로 변경
  • 나머지는 순서 제한 없이 설치
  • ex) 해당 플러그인 폴더에 들어가 setup.py가 있는 위치에서 easy_install . # 모두 0.11폴더임
2.3.3.2 자동 설치
  • Install_Plugin.sh 실행 # 설치 후 Install_Plugin.log 생성
  • log파일 확인 # 설치 실패한 경우 [Install Failed]

2.3.4 MovePlugin 설치

  • MovePlugin 폴더에 파일 전부를 /home/trac/sample/plugins/ 에 복사

2.3.5 config 복사

2.3.5.1 trac.ini 복사
  • config 폴더에 있는 trac.ini 파일을 /home/trac/sample/conf/ 에 복사
2.3.5.2 svnAccess.conf 복사
  • config 폴더에 있는 svnAccess.conf 파일을 /home/trac/ 에 복사

3. SVN Repository 및 Trac Project 생성

3.1 Subversion Repository 생성

  • svnadmin create --fs-type /home/svn/sample # Repository 생성
  • chown -R www-data /home/svn # Apache로 권한 설정
  • chmod -R g+w /home/svn # 쓰기모드 추가

3.2 Trac Project 생성

  • trac-admin /home/trac/sample initenv # Trac Project 생성
    Subversion 경로 적어주는 부분은 /home/svn/sample로 지정.
    나머지는 엔터처리.
  • chown -R www-data /home/trac # Apche로 권한 설정

5. Apache2

5.1 LDAP 설정

  • ln -s /etc/apache2/mods-available/authnz_ldap.load /etc/apache2/mods-enabled/ # 모듈 사용을 위한 심볼릭 링크 생성
  • ln -s /etc/apache2/mods-available/ldap.load /etc/apache2/mods-enabled/ # 모듈 사용을 위한 심볼릭 링크 생성

5.2 Trac 및 SSL 설정

  • ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled/ # 모듈 사용을 위한 심볼릭 링크 생성
  • ln -s /etc/apache2/mods-available/ssl.conf /etc/apache2/mods-enabled/ # 모듈 사용을 위한 심볼릭 링크 생성
  • mkdir /etc/apache2/ssl
  • openssl req -new -x509 -nodes -out /etc/apache2/ssl/server.crt -keyout /etc/apache2/ssl/server.key # Private Key와 인증서 생성 <PRE class=wiki>Country Name (2 letter code) [AU]:KRState or Province Name (full name) [Some-State]:SeoulLocality Name (eg, city) []:SeoulOrganization Name (eg, company) [Internet Widgits Pty Ltd]:InfrawareOrganizational Unit Name (eg, section) []:TeamNameCommon Name (eg, YOUR name) []:TeamName.infraware.netEmail Address []:admin_id@infraware.co.kr</PRE>
  • chmod 600 /etc/apache2/ssl/server.key # Private Key 모드 수정
  • cp /etc/apache2/sites-available/default-ssl /etc/apache2/sites-available/ssl # 모듈 사용을 위한 심볼릭 링크 생성
  • vi /etc/apache2/sites-available/ssl <PRE class=wiki><Location /Projects> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /home/trac PythonOption TracUriRoot /Projects AuthType Basic AuthName "TeamName Track" AuthBasicProvider ldap AuthLDAPURL "ldap://ldap.infraware.net:389/ou=People,dc=ldap,dc=infraware,dc=net" AuthzLDAPAuthoritative Off Require valid-user</Location></PRE>
  • ln -s /etc/apache2/sites-available/ssl /etc/apache2/sites-enabled/

5.3 Subversion 설정

  • vi /etc/apache2/mods-available/subversion.conf <PRE class=wiki><Location /svn> DAV svn SVNListParentPath on SVNParentPath /home/svn SSLRequireSSL AuthType Basic AuthName "TeamNAme Subversion" AuthBasicProvider ldap AuthLDAPURL "ldap://ldap.infraware.net:389/ou=People,dc=ldap,dc=infraware,dc=net" AuthzLDAPAuthoritative Off Require valid-user</Location></PRE>
  • ln -s /etc/apache2/mods-available/subversion.conf /etc/apache2/mods-enabled/ # 모듈 사용을 위한 심볼릭 링크 생성

5.4 Apache2 재시작

  • service apache2 restart

6. 최종테스트