일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 제주도
- 조경철천문대
- 괌자유여행
- 포천온천
- wp-900
- 서원힐스
- 제주도눈
- 파주골프장
- 포천투어
- 제주도눈썰매
- 제주도설경
- 개복숭아판매
- 충주골프장
- LGG6
- 한라산
- 개복숭아
- 괌
- 잠실수영장
- 야생개복숭아 판매
- 덕소골프샵
- 태안수영장펜션
- 야생개복숭아
- 휘닉스파크
- 자연산 개복숭아
- 자연산개복숭아
- 개복숭아 판매
- 포천수영장
- 돌복숭아
- 포천가볼만한곳
- 경기북부골프장
- Today
- Total
Live Brilliant
Cent Os 5.5 설치 본문
CentOS 5.5 APM설치 운영
* gcc 컴파일러 설치 확인 *
소스 컴파일시 필요한 gcc 관련 패키지들은 yum을 사용하여 원격 설치할 수 있다.
# yum install yum-fastestmirror -y
# yum install gcc gcc-c++ make automake autoconf -y
추가적인 yum 명령어 사용법은 아래 링크를 참고한다.
http://www.lug.or.kr/home/bbs/board.php?bo_table=centos_book&wr_id=93&page=2#bbs
좀더 자세한 내용은 맨페이지를 참고한다.
# man yum
=======================
* yum을 사용하여 개발 패키지 그룹들을 설치해 둔다. *
rpmforge.net 저장소 사용하기 :
(옵션임 : CentOS에서 제공하지 않는 패키지들도 rpm으로 제공한다.)
RHEL5 / CentOS-5
i386용 다운로드 : http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
x86_64용 다운로드 : http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
# lftpget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
개발관련 패키지 그룹 설치하기
# yum groupinstall "Development Libraries"
# yum groupinstall "Development Tools"
# yum groupinstall "Legacy Software Development"
=======================
기존 APM RPM 삭제
mysql 삭제
rpm -e dovecot-1.0-0.beta2.7.i386 (의존성)
rpm -e mysql-5.0.18-2.1
apache 삭제
rpm -e system-config-httpd-1.3.3-1.1.noarch (의존성)
rpm -e httpd-2.2.0-5.1.2
rpm -e php
* 의존성 무시 삭제 : --nodeps 옵션 추가.
■ 필요한 라이브러리 설치
* 라이브러리 없을시 설치
yum install libjpeg-devel libpng-devel libXpm-devel freetype-devel gd-devel libc-client libc-client-devel net-snmp-devel libmcrypt libmcrypt-devel -y
■ A.P.M 설치하기
■ 다운로드
- Apache 2.2.15
- PHP 5.2.13
- mysql 5.0.67
1. mysql 설치
[] Mysql 4.0.x 버전 설치시 configuer 할때 마지막에 오류발생 linuxthreads 를 못찾을경우
echo '/* Linuxthreads */' >> /usr/include/pthread.h
(1) mysql 설치
mysql 설치경로 : /usr/local/mysql
mysql 유저
useradd -M -s /bin/false mysql
*아래 컴파일에서 --with-readline 옵션이 있어야만 ssh 원격접속(putty, utf-8) 콘솔에서 한글 입력이 가능하다.
*아래 옵션에서 -enable-thread-safe-client 옵션은 아파치(httpd)를 쓰레드로 운영(--with-mpm=worker)할때 필요한 옵션)
tar xvfz mysql-5.0.67.tar.gz
cd mysql-5.0.67./configure \
--prefix=/usr/local/mysql \
--localstatedir=/usr/local/mysql/data \
--disable-shared \
--enable-assembler \
--with-mysqld-user="mysql" \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--with-readline \
--without-debug \
--without-docs \
--without-bench \
--with-charset=euckr \
--with-extra-charsets=allmake && make install
*주의* MySQL 4.1.X 이하 에서는 --with-charset=euc-kr 으로 해야 합니다.
UTF-8 로 설치시는 --width-charset=utf8
(2) 설정 파일 복사
메모리에 따라서 환경 설정 파일들을 복사해 줍니다.
my-huge.cnf 1~2G
my-large.cnf 512M
my-medium.cnf 128M~ 256M
my-small.cnf 64M 이하
위와같이 나와있지만 위 설정은 db 서버 전용으로 사용했을 때 설정입니다.
기본적을 my-medium.cnf를 복사한 다음 시스템에 맞게 설정해서 사용해야 합니다 .
(모든게 그렇듯 절대적인 것이 아닙니다.)
cp support-files/my-huge.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 24 mysqld off
(3) mysql 데이터베이스 초기화 및 디렉토리 퍼미션 설정
cd /usr/local/mysql/chown -R mysql.mysql .
./bin/mysql_install_db --user=mysql
(4) 아무곳에서나 mysql 및 mysqldump 명령어를 실행가능하게 심볼릭 링크를 걸어줍니다.
(5) mysql 데몬을 실행시킵니다.ln -s /usr/local/mysql/bin/mysql /usr/bin/
ln -s /usr/local/mysql/bin/mysqldump /usr/bin/
/usr/local/mysql/bin/mysqld_safe &
(8) mysql root 비밀번호를 설정합니다.
/usr/local/mysql/bin/mysqladmin -u root password "암호"
(9) root패스워드 분실시
- mysql root 비밀번호 잊어 먹었을 때
killall mysqld
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
mysql
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2 to server version: 4.0.20-log
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql> use mysql
Database changed
mysql> update user set password=password('비밀번호') where user='root';
Query OK, 2 rows affected (0.02 sec)
Rows matched: 2 Changed: 2 Warnings: 0
mysql> exit
Bye
killall mysqld
/usr/local/mysql/bin/mysqld_safe &
2. Apache 설치
압축풀기
tar xvfz httpd-2.2.15.tar.gz
(1) 튜닝
** MaxClient 값 튜닝( 최대 256이지만 이상으로 올려줍니다== > 1280)
vi server/mpm/prefork/prefork.c
파일에서
#define DEFAULT_SERVER_LIMIT 256 부분을 찾아서
#define DEFAULT_SERVER_LIMIT 1280 으로 수정해 줍니다.
vi server/mpm/worker/worker.c
파일에서
#define DEFAULT_SERVER_LIMIT 16 부분을 찾아서 ( 16 * 16 = 1024)
#define DEFAULT_SERVER_LIMIT 20 이렇게 수정해 줍니다. (20 * 64 = 1280)
./configure --prefix=/usr/local/apache2 \--enable-mods-shared=all \
--enable-so \--enable-rewrite \
--enable-modules=ssl \
--with-ssl=/usr \
--enable-ssl
make && make install
* openssl 은 RPM 설치
3. PHP 설치
(1) 환경설정
tar xvfz php-5.2.13.tar.gz
cd php-5.2.13./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql \
--enable-magic-quotes \
--enable-mod-charset \
--enable-mbstring \
--enable-sigchild \
--enable-safe-mode \
--enable-bcmath \
--enable-calendar \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--enable-ftp \
--with-snmp \
--with-zlib \
--with-zlib-dir \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-gd \
--enable-gd-native-ttf \
--with-ttf \
--with-gettext \
--enable-exif \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-curl \
--with-ncurses \
--enable-sqlite-utf8 \
--with-regex=php \
--with-bz2 \
--with-mcrypt \
--with-iconv \
--disable-debug \
--enable-inline-optimization \
--enable-maintainer-zts \
--with-openssl
make && make install
(3) 환경파일 복사
# cp php.ini-dist /etc/php.ini
- php.ini 파일을 복사 해 줍니다.
4. Apache 환경설정
(1) 아파치 설정파일(/usr/local/apache/conf/httpd.conf) 다루기
아파치 설정파일을 다룹니다. 변경후에는 꼭 아파치를 재시작하시기 바랍니다.
- .php 파일 및 html 파일에서 php 코드 실행되게 설정하려면
AddType application/x-httpd-php .php .phtml .php3 .html .htm
AddType application/x-httpd-php-source .phps
위 내용을 추가해 줍니다. 추가 하게 되면 위 파일들에 있는 php 코드는 실행하게 됩니다.
- index.php를 기본으로 실행하게 설정
아파치는 기본적으로 DirectoryIndex index.html index.html.var 이렇게 설정 되어 있어 index.html 파일을 기본으로 읽습니다. 조금 바꾸어 주어 index.php 파일 및 기타 파일들도 기본으로 읽게 설정합니다.
DirectoryIndex index.html index.htm index.php index.php3 index.cgi
- 그림 파일 및 프래쉬 파일 로그 남기지 않게 설정
방문자 수가 많아지면 웹로그가 엄청 쌓이게 되고, 그 로그는 크기가 2G를 넘게 되면 웹페이지에 이상현상이 생깁니다. 그렇다고 로그를 안 남길 수는 없는 것이고, 이미지 파일들은 로그남기는 것에서 제외합니다.
CustomLog logs/access_log common 이렇게 되어 있는 것을 ..
SetEnvIfNoCase Request_URI (gif|png|jpg|css|js|bmp|jpeg|swf)$ IMAGE=1CustomLog /usr/local/apache/logs/access_log common env=!IMAGE
이렇게 바꾸면^^; 쉽게 가능합니다.
5. Zend Optimizer
php의 성능을 최대화 해 준다는 Zend Optimizer를 설치합니다.
Zend 홈페이지에 가보면 성능을 40% 향상시킨다고 합니다. ^^;
검증은 못했지만 말이죠~~ Zend는 컴파일 할 필요없이 받아서 설치하면 됩니다.^^;
(1) 설치
php 5.1.x 용
wget http://downloads.zend.com/optimizer/3.0.1/ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
php 5.2 용
wget http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
tar xvfz ZendOptimizer-3.3.3-linux-glibc21-i386.tar.gz
cd ZendOptimizer-3.3.3-linux-glibc21-i386
./install.sh
- 위 명령을 실행시키면 다음과 같은 화면들이 주루룩~~ 나옵니다. 무조건 OK~ 또는 YES~^&^
하면 끝납니다.&&;
6.1. MySQL 자동실행 설정
먼저 /usr/local/mysql/share/mysql/mysql.server 파일을 /etc/init.d 디렉토리에 복사한다.
# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
다음과 같이 chkconfig 명령어를 이용하여 mysqld 의 자동 실행을 등록한다.
# chkconfig --add mysqld
6.2. Apache 자동실행 설정
MySQL 과 같이 /usr/local/apache/bin/apachectl 자동실행 스크립트를 /etc/init.d 디렉토리에 복사한다.
# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
Apache 의 자동 실행 스크립트 파일은 chkconfig 명령어를 이용하여 등록할 수 없다. chkconfig 명령어를 사용하기 위해서 다음과 같은 내용을 스크립트 파일의 주석부분에 추가한다.
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 90 90
# description: A very fast and reliable WebServer engine.
MySQL 과 같이 chkconfig 명령어를 이용하여 httpd 의 자동 실행을 등록한다.
# chkconfig --add httpd
6.3. 자동 실행 설정 확인
다음과 같이 chkconfig 명령어를 사용하여 설정사항을 확인할 수 있다.
'개발은 핵찜이야 > 리눅스' 카테고리의 다른 글
mysql 한글입력 안되는 문제 (0) | 2012.04.13 |
---|---|
[쉘스크립트] 백업 쉘 (0) | 2012.04.13 |
리눅스 메일서버 설치 (0) | 2012.04.13 |
cron 설정 (0) | 2012.04.13 |
리눅스 cp 활용 (0) | 2012.04.13 |