#!/bin/sh
#os is cetnos5.2
#--------------
#########################################
#prepare
apacheurl="http://apache.mirror99.com/httpd/httpd-2.2.11.tar.gz"
mysql1="http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-server-community-5.1.34-0.rhel5.i386.rpm/from/http://mysql.he.net/"
mysql2="http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-client-community-5.1.34-0.rhel5.i386.rpm/from/http://mirror.services.wisc.edu/mysql/"
mysql3="http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-shared-community-5.1.34-0.rhel5.i386.rpm/from/http://mysql.mirrors.pair.com/"
mysql4="http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-devel-community-5.1.34-0.rhel5.i386.rpm/from/http://mysql.llarian.net/"
mysql5="http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-test-community-5.1.34-0.rhel5.i386.rpm/from/http://opensource.become.com/mysql/"
phpurl="http://us.php.net/get/php-5.2.9.tar.gz/from/this/mirror"
aprurl="http://media.royalgirls.com/apache/apr/apr-1.3.3.tar.gz"
aprutilurl="http://media.royalgirls.com/apache/apr/apr-util-1.3.4.tar.gz"
svndepsurl="http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz"
svnurl="http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz"
if [ -f /home/source.tar.gz ]; then
tar -zxvf source.tar.gz
else
if [ -d /home/tmp ]; then
echo "folder is exists"
else
mkdir /home/tmp/
fi
cd /home/tmp/
wget "$apacheurl"
wget "$mysql1"
wget "$mysql2"
wget "$mysql3"
wget "$mysql4"
wget "$mysql4"
wget "$phpurl"
wget "$aprurl"
wget "$aprutilurl"
wget "$svndepsurl"
wget "$svn_url"
fi
cd /home/tmp/
#########################################
#INSTALL tools
yum install gcc
#########################################
# INSTALL Apache Httpd
yum -y install openldap-devel zlib-devel expat-devel
tar -zxvf httpd-2.2.11.tar.gz
cd httpd-2.2.11
./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=all --enable-dav=share --enable-dav-fs --with-ldap --enable-ldap --enable-authnz-ldap
make
make install
make clean
if [ -d /usr/local/apache2 ]; then
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
chkconfig --add httpd
chkconfig --level 3 httpd on
service httpd start
else
echo "apache httpd install failed"
exit
fi
cd ..
#########################################
# INSTALL MYSQL
chmod 777 MySQL-server-community-5.1.34-0.rhel5.i386.rpm
chmod 777 MySQL-client-community-5.1.34-0.rhel5.i386.rpm
chmod 777 MySQL-devel-community-5.1.34-0.rhel5.i386.rpm
chmod 777 MySQL-shared-community-5.1.34-0.rhel5.i386.rpm
chmod 777 MySQL-test-community-5.1.34-0.rhel5.i386.rpm
rpm -ivh MySQL-server-community-5.1.34-0.rhel5.i386.rpm
rpm -ivh MySQL-client-community-5.1.34-0.rhel5.i386.rpm
rpm -ivh MySQL-devel-community-5.1.34-0.rhel5.i386.rpm
rpm -ivh MySQL-shared-community-5.1.34-0.rhel5.i386.rpm
rpm -ivh MySQL-test-community-5.1.34-0.rhel5.i386.rpm
#########################################
# INSTALL PHP
yum -y install libpng*
yum -y install libxml2*
yum -y install libxml*
yum -y install expat*
tar -zxvf php-5.2.9.tar.gz
cd php-5.2.9
./configure --prefix=/usr/local/php -with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-zlib --with-gd --with-pear --enable-force-cgj-redirect --with-config-file-path=/etc/
make
make install
#chmod 755 /usr/local/apache2/module/libphp5.so
chmod 755 /usr/local/apache2/modules/libphp5.so
libtool --finish /home/tmp/php-5.2.9/libs
cp php.ini-dist /usr/local/php/etc/php.ini
ln -s /usr/local/php/etc/php.ini /etc/php.ini
echo 'include_path =.:/usr/local/php/lib/php' >> /etc/php.ini
echo 'pathmunge /usr/local/apache2/bin' >> /etc/profile
echo 'pathmunge /usr/local/php/bin' >> /etc/profile
echo "AddType application/x-httpd-php .php" >> /usr/local/apache2/conf/httpd.conf
echo "AddType application/x-httpd-php?source .phps" >> /usr/local/apache2/conf/httpd.conf
echo '<? phpinfo();?>' >> /usr/local/apache2/htdocs/test.php
service httpd restart
#then can test php
if [ -d /usr/local/php/lib ]; then
echo "php has install done"
else
echo "php install failed"
exit
fi
cd ..
#########################################
# INSTALL APR and APR-UTIL
yum -y install openssl*
tar -zxvf apr-1.3.3.tar.gz
cd apr-1.3.3
./configure --prefix=/usr/local/apr
make
make install
cd ..
tar -zxvf apr-util-1.3.4.tar.gz
cd apr-util-1.3.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install
cd ..
#########################################
# INSTALL subversion-deps
tar -zxvf subversion-deps-1.6.1.tar.gz
cd subversion-1.6.1
cd neon
./configure
make
make install
cd ..
cd serf
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make
make install
cd ..
cd ..
#########################################
# INSTALL subversion
tar -zxvf subversion-1.6.1
tar -zxvf subversion-1.6.1.tar.gz
cd subversion-1.6.1
./configure --prefix=/usr/local/subversion --without-berkeley-db --with-apxs=/usr/local/apache2/bin/apxs --with-swing --enable-swing-binding=python --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-openssl --with-neon=/usr/local/bin --with-serf=/usr/local/serf
make
make install
echo 'pathmunge /usr/local/subversion/bin' >> /etc/profile
cd ..
if [ -d /usr/local/subversion ]; then
echo "subversion has install done"
else
echo "subversion install failed"
exit
fi
#########################################
# Config subversion
mkdir -p /data/auth/
mkdir -p /data/svn/repos/
#/usr/local/apache2/bin/htpasswd -cm /data/auth/passwdfile admin
echo "[/]" >> /data/auth/accessfile
echo "admin = rw" >> /data/auth/accessfile
echo "* = " >> /data/auth/accessfile
svnadmin create /data/svn/repos/test
chown -R daemon:daemon /data/svn
echo "<Location /svn>" >> /usr/local/apache2/conf/httpd.conf
echo " DAV svn" >> /usr/local/apache2/conf/httpd.conf
echo " SVNParentPath /data/svn/repos" >> /usr/local/apache2/conf/httpd.conf
echo " AuthzSVNAccessFile /data/auth/accessfile" >> /usr/local/apache2/conf/httpd.conf
echo " Satisfy Any" >> /usr/local/apache2/conf/httpd.conf
echo " Require valid-user" >> /usr/local/apache2/conf/httpd.conf
echo " AuthType Basic" >> /usr/local/apache2/conf/httpd.conf
echo " AuthName /"Subversion repository"/" >> /usr/local/apache2/conf/httpd.conf
echo " AuthUserFile /data/auth/passwdfile" >> /usr/local/apache2/conf/httpd.conf
echo "</Location>" >> /usr/local/apache2/conf/httpd.conf
echo "*************************************************************"
echo "****The SVN has inatall done*****"
echo "****PLEASE Running this #/usr/local/apache2/bin/htpasswd -cm /data/auth/passwdfile admin *****"
echo "****If you want to add more users please refer to anohter document ** "
echo "**** *****"
echo "**** *****"
echo "**** *****"
echo "**** Morningstar Corp 2009 ****"
echo "*************************************************************"
#-----------------------------------------------------------------
# Part10 test & over
#-----------------------------------------------------------------
# open http://locolhost/svn/test