2013년 1월 14일 월요일

[CentOS]bitnami Redmine 설치

OS : CentOS 6
Redmine : 2.2.0-0


  • bitnami-redmine-2.2.0-0 다운로드
    # wget http://downloads.bitnami.org/files/stacks/redmine/2.2.0-0/bitnami-redmine-2.2.0-0-linux-x64-installer.run
    
  • bitnami-redmine-2.2.0-0 설치
    # chmod 777 bitnami-redmine-2.2.0-0-linux-x64-installer.run
    # ./bitnami-redmine-2.2.0-0-linux-x64-installer.run
    
    • 설치시 한국어 선택
    • 설치 폴더는 알아서 세팅
    • 관리자의 사용자 정보를 올바로 입력
  • bitnami-redmine 정상 설치 확인
  • 브라우저에서 http://localhost:8080 으로 접속하여 redmine 관련 정보가 뜨는지 확인

2013년 1월 9일 수요일

[CentOS] 6.x 64bit 버전 APM 소스 설치 및 openssl 연동


설치 환경
CentOS 6.3 64bit
MySQL 5.5.28
Apache 2.4.3
PHP 5.4.8

APM설치를 위한 사전 요구사항

필수 패키지 설치

# yum -y install pcre-devel lua-devel libxml2-devel ncurses-devel zlib zlib-devel curl openssl openssl-devel libtermcap-devel libc-client-devel bison gcc g++ cpp gcc-c++ freetype freetype-devel freetype-utils gd gd-devel libjpeg libjpeg-devel libpng libpng-devel curl curl-devel flex php-mbstring libexif-devel cmake

Apache 설치를 위한 패키지 설치

1) APR (소스 설치)
 * Apache 2.4.X 는 APR 1.4 이상을 필요로 합니다. CentOS 6.x  yum에서는 1.3.9 패키지를 사용함으로 소스를 컴파일해서 설치.

# cd /usr/local/src

# wget http://mirror.apache-kr.org//apr/apr-1.4.6.tar.gz
# tar xvfz apr-1.4.6.tar.gz
# cd apr-1.4.6
# ./configure --prefix=/usr/local/apr-1.4.6


[./configure 시 에러출력]
config.status: executing libtool commands
rm: cannot remove `libtoolT': No such file or directory
config.status: executing default commands
config.status: include/apr.h is unchanged
config.status: include/arch/unix/apr_private.h is unchanged

위와 같은 에러 출력시 아래처럼 파일을 복사해주고 진행을 계속 합니다.
# cp -arp libtool libtoolT


# make && make install


[make시 에러 출력]
make[1]: Entering directory `/usr/local/src/APM_setup/apr-1.4.2'
/bin/sh /libtool --silent --mode=compile gcc -g -O2 -pthread   -DHAVE_CONFIG_H -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE   -I./include -I/usr/local/src/APM_setup/apr-1.4.2/include/arch/unix -I./include/arch/unix -I/usr/local/src/APM_setup/apr-1.4.2/include/arch/unix -I/usr/local/src/APM_setup/apr-1.4.2/include  -o passwd/apr_getpass.lo -c passwd/apr_getpass.c && touch passwd/apr_getpass.lo
/bin/sh: /libtool: No such file or directory
make[1]: *** [passwd/apr_getpass.lo] Error 127
make[1]: Leaving directory `/usr/local/src/APM_setup/apr-1.4.2'
make: *** [all-recursive] Error 1

위와 같은 에러가 나온다면 아래처럼 심볼릭 링크를 걸어주고 진행을 계속 합니다.
# ln -s /usr/bin/libtool /
# make clean



# wget http://mirror.apache-kr.org//apr/apr-util-1.4.1.tar.gz
# tar xvfz apr-util-1.4.1.tar.gz
# cd apr-util-1.4.1
# ./configure --prefix=/usr/local/apr-util-1.4.1 --with-apr=/usr/local/apr-1.4.6
# make && make install





MySQL 설치 (cmake 설치)

 - 설치 위치 : /usr/local/mysql-5.5.28
 - 데이타 위치 : /mysql/data

1. MySQL (http://www.mysql.com/downloads/mysql/)
  # cd /usr/local/src/
  # tar xvfz mysql-5.5.28.tar.gz

2. User 및 디렉토리 생성
  # adduser -M -s /bin/false mysql
  # mkdir -p /mysql/data /mysql/log
  # chown mysql.mysql data
  # chown mysql.mysql log

3. 소스 컴파일
  - 운영상의 편의성을 위해 설치 경로명에 버전을 같이 명기
  - 설치 옵션은 http://dev.mysql.com/doc/mysql-sourcebuild-excerpt/5.5/en/source-configuration-options.html 참조
  - CharSet 관련 설정은 http://dev.mysql.com/doc/refman/5.5/en/extended-show.html 참조

  # cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.28 -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=euckr \
  -DDEFAULT_COLLATION=euckr_korean_ci -DWITH_EXTRA_CHARSETS=all
  # make && make install

  (UTF8 설정시 옵션)
  -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

4. 심볼릭 링크 생성
  # ln -s /usr/local/mysql-5.5.28 /usr/local/mysql

5. 환경 설정
  1) 권한 설정
  # cd /usr/local
  # chown -R mysql.mysql ./mysql-5.5.28
  # chown -R mysql.mysql /mysql

  2) 스크립트 구동
  # cd /usr/local/mysql
  # ./scripts/mysql_install_db --user=mysql --datadir=/mysql/data

6. my.cnf
  1) 시스템 메모 크기에 따른 /usr/local/mysql/support-file 밑에 아래 설정 화일을 /etc/my.cnf 로 복사합니다.
  - 64M 이하 : my-small.cnf
  - 65M ~ 256M : my-medium.cnf
  - 512M : my-large.cnf
  - 1G ~ 2G : my-huge.cnf

  2) my.cnf를 시스템에 맞게 설정합니다.

7. 구동
  1) MySQL server 구동
  # cp -av /usr/local/mysql-5.5.28/support-files/mysql.server /etc/init.d/mysqld
  # /etc/init.d/mysqld start

*구동시 아래 에러 발생시 조치방법*

 증상) MySQL: Starting MySQL….. ERROR! The server quit without updating PID file
 해결방안) http://icesquare.com/wordpress/mysql-starting-mysql-error-the-server-quit-without-updating-pid-file/ 사이트 참조


  2) 암호 설정
  # ./bin/mysqladmin -u root password <new-password> (<- 괄호없이 비번만 입력)

  3) 접속 테스트
  # mysql -p mysql
  mysql> 나오면 성공

8.  자동 구동 설정
  # vi /etc/rc.d/init.d/mysqld
  - 아래 부분 수정
  basedir=/usr/local/mysql
  datadir=/mysql/data

  # chkconfig --add mysqld



Apache 설치

1. Apache (http://httpd.apache.org/download.cgi)
  # cd /usr/local/src/httpd-2.4.3
  # ./configure --prefix=/usr/local/httpd-2.4.3 --enable-so --with-mpm=worker --enable-cache --with-apr=/usr/local/apr-1.4.6 --with-apr-util=/usr/local/apr-util-1.4.1 --enable-ssl --with-ssl=/usr --enable-rewrite

   - 여기 사용된 옵션은 아파치 웹 서버의 성능을 높히기 위한 것으로써 아래 문서를 참고.
    http://httpd.apache.org/docs/2.4/mod/worker.html
    http://httpd.apache.org/docs/2.4/mod/mod_cache.html

  # make && make install
  # ln -s /usr/local/httpd-2.4.3 /usr/local/apache2


PHP 설치
  # wget http://kr1.php.net/get/php-5.4.8.tar.gz/from/this/mirror
  # tar xvfz php-5.4.8.tar.gz
  # cd php-5.4.8.tar.gz
  # ./configure --prefix=/usr/local/php-5.4.8 --with-apxs2=/usr/local/httpd-2.4.3/bin/apxs --with-mysql=/usr/local/mysql-5.5.28 --with-config-file-path=/usr/local/httpd-2.4.3/conf --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib=/usr --enable-mbstring --enable-exif
  # make && make install



apache 추가 환경설정
  # vi httpd.conf
  - 아래 부분 삽입
   <IfModule dir_module>
      DirectoryIndex index.html index.htm index.php
  </IfModule>

- 아래 주석 해제 및 삽입
  <IfModule mime_module>
      AddType application/x-httpd-php .php .htm .html .inc .php4 .php3
      AddType application/x-httpd-php-source .phps
  </IfModule>



PHP 환경설정
  # cd /usr/local/src/php-5.4.8
  # cp php.ini-production /usr/local/httpd-2.4.3/conf/php.ini
  # cd /usr/local/httpd-2.4.3/conf
  # vi php.ini


openssl 환경 설정
   # vi ./conf/httpd.conf

  #ServerName www.example.com:80 의 아래에
ServerName 127.0.0.1 을 입력한다.
DocumentRoot "설치된경로/htdocs" 라고 되어있는 부분에 웹서비스할 디렉토리 경로를 입력하자.
LoadModule ssl_module modules/mod_ssl.so 가 있는지 확인하자. 없다면 SSL이 활성화되지 않은 것이다.
활성화 부분이 주석처리 되어 있다면 주석을 제거하자. ( # 으로 시작하는 라인은 주석이다. #을 제거 )
#include conf/extra/httpd-ssl.conf 부분을 찾아 # 를 제거하자. SSL 설정파일이다.


   # vi ./conf/extra/httpd-ssl.conf

Listen 443 은 httpd.conf 의 Listen 80 과 같은 내용이다.
http 는 80번 포트로, https 는 443 포트로 접속된다. 방화벽 설정이 되어있다면 443 포트를 열어주자.

<VirtualHost_default_:433> 안 에 있는 설정들을 수정해야한다.
DocumentRoot 는 httpd.conf 와 같으면 된다.
ServerName 에는 127.0.0.1:443 으로 해주자.
SSLCertificateFile 에는 우리가 생성했던 인증서를 연결시켜줘야한다.
예) SSLCertificateFile "/web/ssl-key/ssl2010.crt"
SSLCertificateKeyFile 은 암호키
예) SSLCertificateKeyFile "/web/ssl-key/ssl2010.key"

그외...
Jk (mod-jk.so) 를 이용하여 Tomcat 과 연동하는 경우는
<VirtualHost_default_:433> 안 에도 JkMount 를 써주면 되겠다.
예)  JkMount /- ajp13





Apache 자동 구동 설정
   # cd /usr/local/httpd-2.4.3/bin
   # cp apachectl /etc/rc.d/init.d/httpd

  - Apache Config test
  # /etc/rc.d/init.d/httpd configtest

  - Apache Start
  # /etc/rc.d/init.d/httpd start




2013년 1월 1일 화요일

MongoDB 설치 (CentOS 기준)

# cd /usr/local/src
# wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.2.1.tgz
# tar zxvf mongodb-linux-i686-2.2.1.tgz 
# cp -Rf mongodb-linux-i686-2.2.1/ /usr/local/mongodb 
# cd ../mongodb
# ll
total 72
-rw------- 1 root root 34520 11?? 17 21:00 GNU-AGPL-3.0
-rw------- 1 root root  1359 11?? 17 21:00 README
-rw------- 1 root root 11527 11?? 17 21:00 THIRD-PARTY-NOTICES
drwxr-xr-x 2 root root  4096 11?? 17 21:00 bin
# mkdir -p /data/mongodb
# mkdir -p /log/mongodb
# vi mongodb.conf
dbpath=/data/mongodb
logpath=/log/mongodb/mongodb.log
logappend=true
verbose=true
#bind_ip=127.0.0.1
port=27017
fork=true
# rest 옵션은 브라우저에서 접속할건지 여부, 브라우저포트는 port로 잡은 거에 +1000 한 값 (28017)
rest=true
#auth=true
#noauth=true

MONGODB_HOME 설정
# vi /etc/profile
MONGODB_HOME=/usr/local/mongodb
export MONGODB
PATH=$PATH:$MONGODB_HOME/bin
export PATH
# source /etc/profile

몽고디비 실행
# mongod --config /usr/local/mongodb/mongodb.conf

몽고디비 클라이언트 접속
# mongo localhost:27017
MongoDB shell version: 2.2.1
connecting to: localhost:27017/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
>

브라우저에서 확인하기
http://192.168.0.205:28017/