한국어

tc_backup

UNIX 2007/01/26 00:14
이번에 회사에서 새 서버들을 구매해서 IDC에 들어왔습니다. Dell PowerEdge SC1435로 AMD기반 옵테론 CPU라서 FreeBSD보다는 Linux가 좋을거 같더군요. 전에도 델서버 들어왔었는데 FreeBSD에서 네트워크 디바이스가 정상적으로 동작을 안하더군요. 델서비스에 연락했더니 Redhat Enterprise Linux(RHEL)구해서 설치하라고 해서 설치했었는데 네트워크 드라이버를 따로 구해서 설치해야되더군요. 서버에는 원래 엑스를 설치를 잘 안해서 고생했습니다. 일단 이미 설치된 다른 서버에 X 설치하고 웹에서 다운로드하는데 문서가 exe 파일이더군요! 황당 --; 집으로 VNC로 연결하여 실행하여 풀어보니 별거 없더군요 --; 설치했던 서버는 PE2950이었습니다. 다행히 USB 메모리가 있어서 네트워크를 잡을수 있었습니다...  그때 RHEL4를 받아서 설치했었는데 유료사용자가 아니면 업그레이드가 안되더군요. 그래서 이번에는 RHEL 소스를 이용하여 바이너리 호환이 되는 CentOS (Community Enterprise OS) AMD64 버전을 받아서 설치했습니다.

서버 여러대 설치하느라 시간이 좀 남아서(DVD 한장만 궈서갔음) FreeBSD 6.2(AMD64)도 설치해봤는데 별 이상없이 깔리더군요. 근데 SC1435에 PS/2 포트가 없어서 USB포트로 키보드와 마우스를 연결(Y케이블 이용해서 PS/2 키보드와 마우스연결)했는데 뺐다가 끼면 키보드와 마우스가 인식이 안되더군요.. 관리편의상 동시에 들어오는 서버는 같은 OS를 설치하는게 편하기 때문에 다시 밀고 CentOS를 설치하고, 업데이트까지 무사히 마치고 왔습니다. 업데이트는 정말 편하더군요. (#yum update) 그리고 네트워크 드라이버도 추가 설치없이 바로 잡히더군요.

이제 CentOS(AMD64)에서 lighttpd와 친구들 설치 방법에 대해서 설명드릴께요^^

AMD64의 php는 fastcgi가 컴파일안되어 있어서 lighttpd와 php를 fastcgi와 연결하기 위해서 php를 컴파일했습니다.


# cd /opt
# wget http://isoredirect.centos.org/centos/4/os/SRPMS/php-4.3.9-3.15.src.rpm
# rpm -i php-4.3.9-3.15.src.rpm
# vi /usr/src/redhat/SPECS/php.spec
      --enable-force-cgi-redirect \
     앞줄에
      --enable-fastcgi \
     를 넣어줍니다.


# rpmbuild --rebuild /opt/php-4.3.9-3.15.src.rpm

이때 필요한 패키지를 설치하고 해야할수도 있습니다. 오류에 뭐가 필요하다고 나옵니다.
 ( # yum update aspell-devel httpd-devel pcre-devel ...)
컴파일 완료되면 /usr/src/redhat/RPMS/x86_64 (또는 i386)에 바이너리 rpm이 생깁니다.

컴파일후 원하는 패키지를 업데이트 합니다. 버전번호 때문에 업그레이드가 안되면 --force를 이용해서 강제로 업데이트하면 됩니다.


lighttpd는 src rpm을 받아서 컴파일 합니다.


# wget http://www.lighttpd.net/download/lighttpd-1.4.13-1.src.rpm
# rpmbuild --rebuild lighttpd-1.3.15-1.src.rpm


xcache 역시 src rpm을 받아서 설치합니다.

# wget http://www.jasonlitka.com/media/files/SRPMS/php-xcache-1.2.0_0.2.src.rpm
# rpmbuild --rebuild php-xcache-1.2.0_0.2.src.rpm

rpm 바이너리 파일은 /usr/src/redhat/RPMS/x86_64 나 i386 등에 생깁니다. 적당히 원하는 패키지를 설치해주면 됩니다. 5대 서버에 설치하느라 한곳에서 컴파일하고 다음 스크립트를 이용하여 여러서버에 설치하였습니다.


#!/bin/sh
# install_lighttpd.sh

/usr/sbin/apachectl stop

rpm -ivh lighttpd-1.4.13-1.x86_64.rpm
rpm -Uvh --force php-4.3.9-3.15.x86_64.rpm php-devel-4.3.9-3.15.x86_64.rpm  php-pear-4.3.9-3.15.x86_64.rpm php-ldap-4.3.9-3.15.x86_64.rpm  php-mysql-4.3.9-3.15.x86_64.rpm
rpm -ivh php-xcache-4.3.9_1.2.0-0.2.x86_64.rpm

mkdir -p /etc/lighttpd
cp ./lighttpd.conf /etc/lighttpd
adduser -s /sbin/nologin www
/sbin/chkconfig httpd off
/sbin/chkconfig --add lighttpd
/sbin/chkconfig lighttpd on

touch /var/log/lighttpd.access.log
touch /var/log/lighttpd.error.log

chown www:www /var/log/lighttpd.access.log
chown www:www /var/log/lighttpd.error.log

/etc/init.d/lighttpd start

lighttpd.conf는 freebsd에서 사용하던걸 그대로 가져와서 server.event-handler 등 몇가지만 바꿨습니다. 주석등의 라인은 삭제했습니다.


# lighttpd.conf
server.modules              = (
                              "mod_redirect",
                              "mod_alias",
                              "mod_access",
                             "mod_status",
                             "mod_fastcgi",
                             "mod_userdir",
                              "mod_accesslog" )
server.document-root = "/var/www/html/"
accesslog.filename          = "/var/log/lighttpd.access.log"
server.errorlog             = "/var/log/lighttpd.error.log"
index-file.names            = ( "index.php", "index.html",
                              "index.htm", "default.htm" )
server.event-handler = "linux-sysepoll"
mimetype.assign             = (
 생략...
)

userdir.path = "public_html"
url.access-deny             = ( "~", ".inc" )
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
server.pid-file            = "/var/run/lighttpd.pid"
server.username            = "www"
server.groupname           = "www"
fastcgi.server              = ( ".php" =>
                              ( "localhost" =>
                                (
                                 "socket" => "/tmp/php-fastcgi.socket",
                                 "bin-path" => "/usr/bin/php",
                                 "min-procs" => 1,
                                 "max-procs" => 2,
                                 "max-load-per-proc" => 4,
                                 "idle-timeout" => 10,
                                 "bin-environment" => ( "PHP_FCGI_CHILDREN" => "16",
                                                        "PHP_FCGI_MAX_REQUESTS" => "2000" )
                                )
                             )
                            )

server.max-fds = 4096

그리고 로그가 계속 쌓이지 않도록 /etc/logrotate.d/lighttpd 파일을 만들었습니다.

/var/log/lighttpd.*.log {
 rotate 30
 daily
 missingok
 notifempty
 compress
 sharedscripts
 postrotate
      touch /var/log/lighttpd.access.log
      touch /var/log/lighttpd.error.log
      chown www:www /var/log/lighttpd.access.log
      chown www:www /var/log/lighttpd.error.log
      /bin/kill -HUP `cat /var/run/lighttpd.pid 2>/dev/null` 2> /dev/null || true
 endscript
}


참고 URL:
http://www.cyberciti.biz/tips/redhat-enterprise-linux-lighttpd-fastcgi-php.html
http://www.jasonlitka.com/2006/12/20/php-caching-and-acceleration-with-xcache/

http://www.82i.com/@/zboard.php?id=faq&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=39

분류 :
Linux
태그 :
조회 수 :
16902
등록일 :
2008.04.06
21:46:33 (*.234.246.12)
엮인글 :
http://www.rain9.com/xe/tc_backup/2332/f11/trackback
게시글 주소 :
http://www.rain9.com/xe/tc_backup/2332
List of Articles
번호 제목 글쓴이 조회 수sort 추천 수 날짜
180 Programming Tomcat 5.5.27 설치 엔신 18150   2009-05-28
서블릿과 JSP를 다루기 위해 웹서버인 Tomcat을 설치하여야 한다. 윈도우 기준으로 설명한다. 1. 다운로드 톰캣 사이트에서 Tomcat 5.5.27을 다운로드 받을수 있다. 톰캣을 설치하기 위해서는 JRE 또는 JDK가 설치되어 있어야 한다. 설치형이 아니므로 C드라이...  
179 DBMS show variables 변경하기 5.0 기준 서버 변수 변경하기 엔신 18042   2008-03-21
Variable Name Value Type Type autocommit boolean SESSION big_tables boolean SESSION binlog_cache_size numeric GLOBAL bulk_insert_buffer_size numeric GLOBAL | SESSION character_set_client string GLOBAL | SESSION character_set_connection stri...  
178 쉘 계정 제한하기 엔신 17736   2013-07-02
ssht라는 계정에 제한을 걸어서 쉘 접속은 가능하되 임의의 행동을 하지 못하도록 제한 mkdir /usr/ssht_rbin ln /bin/ls /usr/ssht_rbin ln /bin/date /usr/ssht_rbin ln /usr/bin/vi /usr/ssht_rbin ln /bin/cat /usr/ssht_rbin ln /usr/bin/rz /usr/ssht_rb...  
177 ubuntu APM(apache2 php mysql) 설치 방법 엔신 17617   2012-06-11
wiki는 버린다. 데이터는 남겨둔다. ubuntu APM(apache2 php mysql) 설치 방법기본적인 설치 방법 기본적인 설치 방법$sudo apt-get install apache2 $sudo apt-get install php5 libapache2-mod-php5 $sudo apt-get install mysql-server $sudo apt-get insta...  
176 Security Kismet.conf 설정 [2] file 엔신 17128   2009-05-26
 
175 Linux 리눅스_커널(The_Linux_Kernel_한글번역판).pdf 엔신 17038   2007-01-31
리눅스 커널 한글 번역판 오른쪽 버튼 눌러서 다른이름으로 저장 http://home.megapass.co.kr/~darkhi/리눅스_커널(The_Linux_Kernel_한글번역판).pdf  
» Linux CentOS (Redhat Enterprise)에서 lighttpd 설치 엔신 16902   2008-04-06
UNIX 2007/01/26 00:14 이번에 회사에서 새 서버들을 구매해서 IDC에 들어왔습니다. Dell PowerEdge SC1435로 AMD기반 옵테론 CPU라서 FreeBSD보다는 Linux가 좋을거 같더군요. 전에도 델서버 들어왔었는데 FreeBSD에서 네트워크 디바이스가 정상적으로 동작을...  
173 ETC 의자 파손 ㅜㅜ file 엔신 16666   2010-01-08
 
172 [iphone] decrypt 도구 file 엔신 16587   2012-06-11
 
171 Ambiguous 싸이월드 창 닫힘(닫히는, 꺼지는, 꺼짐) 현상 해결 [1] 엔신 16459   2007-03-06
컴퓨터 새로 사고 윈도우를 최적화 시디로 깔았더니 쾌적한 환경을 구축해줬다 그러나, 싸이월드에서 사진 올리기,기타 등등 에서 익스플로러 창이 다 꺼지는 현상이 발생하였다 바탕화면에 오류 메시지 파일이 생겼는데 거기엔 JVM 오류라고 다시 설치하라고 ...  
170 Ambiguous MBR 디스크와 GPT 디스크 엔신 16443   2008-06-20
윈도즈 비스타에서는 MBR 디스크와 GPT 디스크라는 2가지 파티션 테이블 스키마(partition table Scheme)가 제공된다. 이는 일반 사용자들도 지금보다 한층 고용량화된 하드디스크를 사용하게 될 것을 대비, 2,000Gbyte(2Tbyte) 이상 용량의 하드디스크를 자...  
169 ETC [시외버스] 부천, 안양 <-> 속초,양양 시간표 [1] file 엔신 16397   2009-01-16
 
168 Linux 사이트 비밀번호 입력하기 엔신 15697   2008-05-02
노출이 되서는 안되는 페이지라면 아래 php 구문으로 비밀번호를 입력하게끔 설정한다. 소스에서 가장 상단에 php 내용 삽입해주면 된다.(존재한다면 사이에 넣어주면됨) 로그인하는 페이지라면 상단에 삽입하여 서로 다른 아이디와 비밀번호로 이중 비밀번호...  
167 charset configuration 엔신 15684   2013-04-01
# charset configuration file for DistrRTgen v3.2 by Martin Westergaard (martinwj2005@gmail.com) byte = [] alpha = [ABCDEFGHIJKLMNOPQRSTUVWXYZ] alpha-space = [ABCDEFGHIJKLMNOPQRSTUVWXYZ ] alpha-numeric = [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]...  
166 VoIP VoIP DTMF(Dual Tone Multi-Frequency) file 엔신 15676   2010-04-11
 
165 Incident Response Dcode - Forensic Date/Time Decoder file 엔신 15546   2009-04-05
 
164 Ambiguous USB용 Putty(ssh, telnet 클라이언트) 엔신 15532   2006-11-15
ssh, telnet 클라이언트인 Putty의 포터블용(USB) 버전입니다. 설정 내용이 레지스트리에 저장되지 않고 파일로 저장되도록 수정되어서, USB에 넣고 다니기에 편하도록 만들어진 버전입니다. PortaPuTTY - Portable Putty for USB http://socialistsushi.com/p...  
163 Linux fedora linux 리눅스에서 텔넷(SSH) 한글 깨질 때 [2] 엔신 15406   2008-02-16
SSH로 접속했을 때 한글이 깨져 나온다면.... /etc/sysconfig/i18n 파일을 보시면 SUPPORTED="en_US.UTF-8:en_US:en:ko_KR.UTF-8:ko_KR:ko" SYSFONT="latarcyrheb-sun16" 이런식으로 있을텐데 이것을 다음과 같이 고치면 됩니다. LANG="ko_KR.eucKR" SUPPORTED...  
162 Windows 윈도우XP 시디키 바꾸기 엔신 15285   2007-12-14
시작 > 실행 > regedit 입력 HKey_Local_Machine\Software\Microsoft\WindowsNT\ CurrentVersion\WPAEvents\oobetimer 더블클릭 후 나오는 값을 전체 삭제후 종료 시작 > 실행 > oobe/msoobe /a 입력 제품인증 뜨면 2번째 전화로 인증하는거 누르면 나오는데 ...  
161 CCNA 비스타에서 ahci 모드 작동시키기(965P-DS3) file 엔신 15257   2008-06-01