Debian 4上架构J2EE

有一段时间没玩linux了,这次客户说比较喜欢debian,于是就现练了一把,参考了一些网上的资料,总结了一下,与各位分享

一、 系统安装
用CD1安装,ROOT密码 dongjunbiao,新用户webuser,密码webuser

二、 系统配置
1、 安装ssh:apt-get install ssh
2、 安装rcconf:apt-get install rcconf
3、 在PC上安装secureCRT进行远程管理,乱码问题解决:在终端》仿真》选择终端 linux,选中ANSI颜色,在终端》外观中字体选择fixedsys ,字符编码选择UTF-8
4、 使用Xmanager(PC)远程控制DEBIAN桌面GNOME:vi /etc/gdm/gdm.conf 查找xdmcp,添加 Enable=true Port=177 保存后重新启动,在PC安装Xmanager软件进行远程管理
5、 从 http://www.rarsoft.com/download.htm 下载rar,wget http://www.rarsoft.com/rar/rarlinux-3.7.0.tar.gz解压后执行
cp rar_static /usr/bin/rar
6、 安装nmap:apt-get install nmap (nmap localhost )
7、 安装gcc编译环境 apt-get install gcc g++

三、 安装Mysql
groupadd mysql
useradd -g mysql mysql
cd /usr/local
下载mysql安装包 mysql-5.0.41-linux-i686-icc-glibc23.tar.gz

tar xvfz mysql-5.0.41-linux-i686-icc-glibc23 tar.gz
ln –s mysql-5.0.41-linux-i686-icc-glibc23 mysql
cd mysql
scripts/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data
chgrp -R mysql .
./bin/mysqld_safe --user=mysql & 启动
./bin/mysqladmin -u root password mysql
cp ./support-files/mysql.server /etc/init.d/mysql
rcconf (选中mysql,让他自动启动)
cp support-files/my-large.cnf /etc/my.cnf
vi /etc/my.cnf(在client和server里都加入 default-character-set=gb2312)
vi /etc/my.cnf 注释skip-networking

四、 安装JDK
1、 下载 jdk.bin 到/usr/java 目录下
2、 Chmod +x jdk.bin
3、 ./jdk.bin

五、 安装Apache2、Tomcat
1、 Apache2.2安装:下载arp、arp-util、Apache2源文件 httpd-2.2.4.tar.gz,用Root解开。

安装apr
# cd srclib/apr
# ./configure --prefix=/usr/local/apr
# make
# make install

安装apr-util
# cd ../apr-util/
# ./configure --prefix=/usr/local/apr-util \
--with-apr=/usr/local/apr
# make
# make install

安装apache
# ./configure --prefix=/usr/local/apache2.2 \
--enable-so \
--enable-rewrite=share \
--enable-proxy=share \
--enable-proxy-ajp=share \
--enable-dav=share \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util
# make
# make install

把/usr/local/apache2.2/bin/apachectl start 放在/etc/rc.local中(自动启动)

2、 安装Tomcat:下载mysql-5.0.41-linux-i686-icc-glibc23.tar.gz,apache-tomcat-5.5.23-admin.tar。用Root用户将tomcat解压到/usr/local/ 下,在tomcat-user.xml文件里增加admin、manager角色,增加admin用户,密码webadmin
3、 设置用webuser用户启动Tomcat:在Tomcat安装目录下执行 chgrp –R webuser . ,chmod -R g+rw .,编辑bin/catalina.sh ,加入export JAVA_HOEM=/usr/java/jdk1.5.0_12。
4、 使Tomcat自动启动:
#cd /usr/local/tomcat/bin
#tar xvfz jsvc.tar.gz
#cd jsvc-src
#sh support/buildconf.sh
#chmod 755 configure
#./configure --with-java=/usr/local/java (改成你的JDK的位置)
#make
cp /usr/local/tomcat/bin/jsvc-src/native/Tomcat5.sh /etc/init.d/tomcat
#chmod 755 /etc/init.d/tomcat
#vi /etc/init.d/tomcat(修改各类路径、jsvc所在目录)

5、 配置Apache2和Tomcat:
apache安装成功以后需要对它的两个配置文件conf/httpd.conf和conf/extra/httpd-vhosts.conf做一点小小的修改。
在conf/httpd.conf文件里搜索一下“Include conf/extra/httpd-vhosts.conf”,把前面的“#”去掉。然后“conf/extra/httpd-vhosts.conf”文件修改如下:

<VirtualHost *:80>
ServerAdmin 127.0.0.1
ProxyPass / ajp://localhost:8009/ retry=3
ProxyPassReverse / ajp://localhost:8009/
ServerName localhost
ErrorLog logs/127.0.0.1-error_log
CustomLog logs/127.0.0.1-access_log common
</VirtualHost>

编辑 httpd.conf 文件,加入 ServerName LocalHost:80

六、 导入mysql数据库
1、用mysql用户登录,把mysql导出文件 mnksxt.sql 下载到mysql 主目录中。
2、创建两个mysql 超级用户,GRANT ALL PRIVILEGES ON *.* TO 'ycjyxt'@'localhost' IDENTIFIED BY 'ycjyxtpass' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON *.* TO 'ycjyxt'@'%' IDENTIFIED BY 'ycjyxtpass' WITH GRANT OPTION;
3、执行bin/mysql -uycjyxt -pycjyxtpass < /home/mysql/mnksxt.sql 导入数据库

七、 部署Web应用
1、 用webuser用户下载程序打包文件到主目录,执行rar x mnksxt.rar
2、 将mnksxt/WEB-INF/lib/mysql-connector-java-3.1.12-bin.jar 复制到/usr/local/apache-tomcat-5.5.23/common/lib/ 下
3、 删除 webapp/ROOT目录
4、 在conf/Catalina/localhost 目录下 创建 ROOT.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<Context
docBase="/home/webuser/mnksxt"
privileged="true">
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
password="ycjyxtpass"
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="ycjyxt"
url="jdbc:mysql://localhost:3306/mnksxt?autoReconnect=true"
maxActive="40"/>
</Context>

八、 安装Proftpd
apt-get install proftpd,选择standlone,运行 rcconf 去除 proftpd。执行 /etc/init.d/proftpd start|stop nmap localhost 查看端口。