(1) JAVA 설치
1. JAVA 설치(오라클 자바7)
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
apt-get update
apt-get install oracle-java7-installer
2. FTP 설치
우분투 ftp 설치
$ sudo install apt-get vsftpd
$ sudo vim /etc/vsftpd.conf 파일 수정
아래와 같이 찾아서 변경
# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
3. adduser
$mkdir /home/project
$useradd -d /home/project -s /bin/bash project -p password
#mkdir /home/project/stalk
4. sudo명령어로 root권한 가져오기
$visudo -f /etc/sudoers
root ALL=(ALL:ALL) ALL 아래에
project ALL=(ALL:ALL) ALL
추가
http://blog.outsider.ne.kr/505 참고
5. vim /etc/ftpusers
:root 삭제, project 추가
6.
$service vsftpd start 혹은 restart
6. 폴더 권한 변경
chown project /home/project/프로젝트
(2) 아파치 설치
1.
$sudo apt-get install apache2
- 아파치 홈 디렉토리 : /var/www/html
-아파치 설치 디렉토리: /etc/apache2
cd
$cd /usr/local/apache
$wget http://mirror.apache-kr.org/httpd/httpd-2.4.12.tar.gz
$gzip -d httpd-2.4.12.tar.gz
$tar -xvf httpd-2.4.12.tar
2.우분투 한국미러(kr.archive.ubuntu.com) 변경하기.
요즘 우분투 한국미러인 카이스트 ftp가 너무 느리다. 100kb/s이하이며 대충 30~50kb/s...
다음 FTP로 바꾸는 방법
sudo vi /etc/apt/sources.list
:g/kr.archive.ubuntu.com/s//ftp.daum.net/g
:wq
sudo apt-get update
(3) 톰캣 설치
1. tomcat7 tar.gz 압축 풀기
cd /usr/local/
$wget http://mirror.apache-kr.org/tomcat/tomcat-7/v7.0.61/bin/apache-tomcat-7.0.61.tar.gz
$gzip -d apache-tomcat-7.0.61.tar.gz
$tar -xvf apache-tomcat-7.0.61.tar
$mv apache-tomcat-7.0.61 ./tomcat7
$chown -R -c project tomcat7/
2. cd /usr/local/tomcat7
3. 환경설정을 해야겠죠?
vi /etc/profile
맨 아랫부분에
JAVA_HOME=/usr/lib/jvm/java-7-oracle
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
CATALINA_HOME=/usr/local/tomcat7
PATH=$PATH:$CATALINA_HOME/bin
export CATALINA_HOME
export PATH
4. 로그 로테이션 변경
vim /usr/local/tomcat7/bin/catalina.sh
---------------------------------------------------
.
.
.
# touch "$CATALINA_OUT"
.
.
.
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
| /usr/bin/rotatelogs /usr/local/tomcat7/logs/%m%d/waslog-%Y-%m-%d_%H.out 7200 540 &
# | /usr/bin/rotatelogs "$CATALINA_OUT".%Y-%m-%d 86400 540 &
.
.
.
------------------------------------------------------
5. java heap size 증가
$ vim /usr/local/tomcat7/bin/catalina.sh
아래 구문 상단에 추가
JAVA_OPTS="-Djava.awt.headless=true -server -Xms2048m -Xmx3072m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC"
6. mysql 연동
/usr/local/tomcat7/lib에 mysql-connector-java-5.1.34-bin.jar 넣기
6. tomcat 서비스 등록
vi /etc/init.d/tomcat7
아래 스크립트 작성
#!/bin/bash
# description: Apache Tomcat 7 Service
# processname: tomcat7
# chkconfig: - 80 20
CATALINA_HOME=/usr/local/tomcat7
CATALINA_USER=project
tomcat_pid() {
echo `ps aux | grep org.apache.catalina.startup.Bootstrap | grep -v grep | awk '{ print $2 }'`
}
start() {
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Tomcat is already running (pid: $pid)"
else
echo "Starting tomcat"
ulimit -n 100000
umask 007
/bin/su -p -s /bin/sh $CATALINA_USER $CATALINA_HOME/bin/startup.sh
fi
return 0
}
stop() {
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Stoping Tomcat"
/bin/su -p -s /bin/sh $CATALINA_USER $CATALINA_HOME/bin/shutdown.sh
let kwait=20
count=0;
until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ]
do
echo -n -e "\nwaiting for processes to exit";
sleep 1
let count=$count+1;
done
if [ $count -gt $kwait ]; then
echo -n -e "\nkilling processes which didn't stop after 20 seconds"
kill -9 $pid
fi
else
echo "Tomcat is not running"
fi
return 0
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Tomcat is running with pid: $pid"
else
echo "Tomcat is not running"
fi
;;
esac
exit 0
6. get url utf-8 수신 설정
[root@localhost]# vim /usr/local/tomcat7/conf/server.xml
...생략
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" URIEncoding="UTF-8"
redirectPort="8443" />
...생략
7.서비스 스크립트 등록
[root@localhost]# cd /etc/init.d/
[root@localhost init.d]# chmod 775 tomcat7
[root@localhost init.d]$chown project tomcat7
8 tomcat 유저 등록
$ vim /usr/local/tomcat7/conf/tomcat-users.xml
아래 구문 추가
<role rolename="manager" />
<role rolename="standard" />
<role rolename="manager-gui" />
<user username="project" password="password" roles="manager,standard,manager-g
ui" />
9.도메인 연결
- 가비아 클라우드 - 네임서버 설정
: 프로젝트 .com 에 대한 IP 설정 프로젝트 아이피
- /usr/local/conf/server.xml에
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
------------------------------------------------------------------
<Context path="" docBase="m프로젝트" reloadable="true"/>
--------------------------------------------------------------
추가
10. 아파치 설치 후
$sudo apt-get install apache2
$service apache2 restart
참고: serviccould not reliably determine the server's fully qualified domain name 나올 경우 아래 실행
$vi /etc/apache2/apache2.conf
에서
------------------------------------------------------------------
ServerName 프로젝트 .com
------------------------------------------------------------------
문구 추가, 아래처럼 변경
------------------------------------------------------------------
<Directory />
# Options FollowSymLinks
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride None
# Require all denied
Order deny,allow
Allow from all
</Directory>
------------------------------------------------------------------
$/etc/apache2/sites-available/000-default.conf
에서 아래 처럼 변경
------------------------------------------------------------------
ServerAdmin project@project.com
DocumentRoot /usr/local/tomcat7/webapps/m프로젝트
------------------------------------------------------------------
10. 8080 -> 80 포트 사용
< 우분투 Tomcat에서 80포트 사용하기 >
우분투에서 Tomcat을 80포트로 사용하려고 server.xml를 수정하면 Tomcat이 제대로 동작되지 않는 문제가 발생한다.
이것은 Tomcat이 root권한으로 실행되지 않았기 때문인데 1000번 포트 이하는 root 권한이 있어야 사용 할 수 있다고 한다.
이 문제를 해결 하는 방법은 두가지가 있다.
1. Tomcat을 강제로 root권한으로 기동하여 해결한다.
2. iptables을 이용하여 80포트를 8080으로 포워딩한다.
이 포스트에서는 iptables로 포트포워딩하는 방법을 다루고자한다.
1. iptables 명령어 입력
방법은 간단하게도 다음과 같은 명령어들을 우분투 터미널에 입력하면 포트포워딩은 끝난다.
sudo iptables -t nat -A OUTPUT -d localhost -p tcp --dport 80 -j REDIRECT --to-ports 8080
sudo iptables -t nat -A OUTPUT -d "본인 서버 IP" -p tcp --dport 80 -j REDIRECT --to-ports 8080
sudo iptables -t nat -A PREROUTING -d "본인 서버 IP" -p tcp --dport 80 -j REDIRECT --to-ports 8080
2. iptables 설정 정보 저장하기
포트포워딩 설정은 간단하면서도 매우 잘 동작하지만 아쉽게도 우분투가 재부팅 되면 설정정보가 모두 사라진다.
?이 문제를 해결하기 위해서는 iptables 설정정보를 어딘가에 저장해놓아야 할 필요가 있다.
sudo sh -c "iptables-save > /etc/iptables.rules"
위 명령어를 실행하면 iptables 설정정보가 /etc/iptables.rules에 저장되게 된다.
3. 부팅할때마다 iptables 설정정보 불러오기
/etc/network/interface는 우분투에서 네트워크 정보를 설정할때에 사용되는 파일인데 네트워크 인터페이스가 시작될때 특정 쉘 명령을 실행하게 해주는 기능을 가지고 있다.
1. sudo vi /etc/network/interface
2. 설정파일 하단에 pre-up iptables-restore < /etc/iptables.rules 를 추가한다.
3. 저장하고 빠져나온다.
위 처럼 해주면 부팅될 때 네트워크 인터페이스가 시작되면서 pre-up iptables-restore < /etc/iptables.rules 명령이 실행된다.
/etc/iptables.rules는 2번 항목에서 저장해 놓았던 iptables 설정정보 파일이다.
참고: http://blog.naver.com/dlwlalsggg/220099384010
아파치 톰캣 연동
1. 연동을 위해 libapache2-mod-jk설치
sudo apt-get install libapache2-mod-jk
2. ajp 통신하는 부분 주석 제거를 위해 server.xml설정 편집
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
3. 워커 속성 만들기
sudo vi /etc/apache2/workers.properties
worker.list=worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=1
입력하여 작성
3. jk.conf 설정
$sudo vi /etc/apache2/mods-available/jk.conf
JkWorkersFile /etc/apache2/workers.properties
.
.
.
workers.tomcat_home=/usr/local/tomcat7
#
# workers.java_home should point to your Java installation. Normally
# you should have a bin and lib directories beneath it.
#
workers.java_home=/usr/lib/jvm/java-7-oracle
로 변경
4. 아파치 설정 변경
sudo vi /etc/apache2/sites-enabled/000-default.conf
DocumentRoot 밑에 JkMount 설정 넣기
JkMount /*.jsp worker1
5. 재시작
sudo /etc/init.d/apache2 restart
sudo /etc/init.d/tomcat7 restart
or
sudo service apache2 restart
sudo service tomcat7 restart
6. 연동 확인
참고: http://powernext.tistory.com/archive/201111
'[OS] > 우분투' 카테고리의 다른 글
Error : Could not reliably determine the server's fully qualified domain name (0) | 2015.08.12 |
---|---|
리눅스 명령어 (0) | 2015.06.05 |
명령어 모음 2014-12-23 (0) | 2014.12.23 |
우분투에서 자바 경로 확인 명령어:which (0) | 2014.12.19 |
삼바 설치 및 설정 (0) | 2014.12.18 |
댓글