cent0s6.5安装LAMP

#!/bin/bash
# User Install LAMP
# Date:2015-05-22
# Blog:
########## function ##########
depend_pkg ()
{
    yum install gcc gcc-c++ make cmake ncurses-devel libxml2-devel \
    perl-devel libcurl-devel libgcrypt libgcrypt-devel libxslt \
    libxslt-devel pcre-devel openssl-devel wget -y
} # 安装依赖包
cat <<END
        1.[install apache2.4]
        2.[install mysql5.5]
        3.[install php5.4]
END
read -p "Please input number : " NUM
case $NUM in
1)
########## Install Depend Pkg ##########
depend_pkg;
WorkDIR=/usr/local/src
cd $WorkDIR
[ -f "apr-1.5.1.tar.gz" ] || wget -c http://soft.vpser.net/web/apache/apr-1.5.1.tar.gz
[ -f "apr-util-1.5.4.tar.gz" ] || wget -c http://soft.vpser.net/web/apache/apr-util-1.5.4.tar.gz
[ -f "httpd-2.4.12.tar.gz" ] || wget -c http://soft.vpser.net/web/apache/httpd-2.4.12.tar.gz
 
ls | xargs -I file tar zxvf file -C $WorkDIR

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

if [ $? -eq 0 ];then
    cd $WorkDIR
    
    cd apr-util-1.5.4  # 安装apr-util
    ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
    make && make install
else
    echo "------ apr make failed. ------"
    exit 1
fi
########## Install Apache ##########
HTTPDIR=/usr/local/apache2.4
if [ $? -eq 0 ];then
    cd $WorkDIR
    cd httpd-2.4.12  # 安装apache
    ./configure --prefix=$HTTPDIR --enable-so --enable-rewrite --enable-modules=all \
--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make && make install

else
    echo "------ apr-util make failed. ------"
    exit 1
fi
if [ $? -eq 0 ];then
    CONF=$HTTPDIR/conf/httpd.conf
	
	IP=`ifconfig eth0 |grep "inet addr" |cut -d: -f2 |awk '{print $1}'` #本机IP
#修改apache配置文件 
    sed -i "s/#ServerName www.example.com:80/ServerName ${IP}:80/g" $CONF
    sed -i 's/DirectoryIndex index.html/DirectoryIndex index.php index.html/g' $CONF
    sed -i "395 s/^/AddType application\/x-httpd-php .php/" $CONF
	sed -i "396 s/^/AddType application\/x-httpd-php-source .phps/" $CONF 
	
	cp $HTTPDIR/bin/apachectl /etc/rc.d/init.d/httpd # httpd加入service
        chmod +x /etc/init.d/httpd # 添加执行权限
	echo "/usr/local/apache2.4/bin/apachectl start" >> /etc/rc.d/rc.local # 设置开机启动
	service httpd start # 开启apache
    
   [ $? -eq 0 ] && echo "Apache install success." || echo "Apache install failed." # 是否启动成功
else
    echo "------ apache make failed. ------"
    exit 1
fi
;;
2)
########## Install Depend Pkg ##########
depend_pkg;
########## Install Mysql ##########
/usr/sbin/groupadd mysql # 创建mysql组
/usr/sbin/useradd -g mysql -s /sbin/nologin mysql #创建mysql系统用户并加入mysql组
WorkDIR=/usr/local/src
MYSQLDIR=/usr/local/mysql5.6
cd /usr/local/src
[ -f "mysql-5.6.10.tar.gz" ] || wget -c http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.10.tar.gz
tar zxvf mysql-5.6.10.tar.gz
cd mysql-5.6.10
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 \
-DSYSCONFDIR=/usr/local/mysql5.6/etc \
-DMYSQL_DATADIR=/usr/local/mysql5.6/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install
if [ $? -eq 0 ];then
    /usr/local/mysql5.6/scripts/mysql_install_db \
    --basedir=/usr/local/mysql5.6 --datadir=/usr/local/mysql5.6/data/ --user=mysql 1>/dev/null   # 初始化mysql
    mkdir /usr/local/mysql5.6/etc 
	cd /usr/local/mysql5.6 
    cp support-files/my-default.cnf /usr/local/mysql5.6/etc/my.cnf # 创建Mysql配置文件
    rm -rf /etc/my.cnf # 删除原系统mysql配置文件
    cp support-files/mysql.server /etc/rc.d/init.d/mysqld # mysqld加入service
    chmod +x /etc/init.d/mysqld # mysqld添加执行权限
    chown -R root.mysql /usr/local/mysql5.6/ # 修改所属者,所属组
    chown -R mysql.mysql /usr/local/mysql5.6/data/ # 修改所属者,所属组
    chkconfig mysqld on # 设置开机启动
	service mysqld start # 启动mysql
    [ $? -eq 0 ] && echo "MySQL install success." || echo "MySQL install failed." # 是否启动成功
else
    echo "------mysql cmake failed.------"
    exit 1 
fi
;;
3)
########## Install Depend Pkg ##########
depend_pkg;
########## Install GD ##########
yum install gd freetype freetype-devel libpng libpng-devel zlib zlib-devel libjpeg* -y #安装依赖包
########## Install PHP ##########
WorkDIR=/usr/local/src
PHPDIR=/usr/local/php5.4
PHPCONF=/usr/local/php5.4/etc/php.ini
cd $WorkDIR
[ -f "php-5.4.31.tar.gz" ] || wget http://cn2.php.net/distributions/php-5.4.31.tar.gz
tar zxvf php-5.4.31.tar.gz 
cd php-5.4.31
./configure --prefix=/usr/local/php5.4 \
--with-config-file-path=/usr/local/php5.4/etc \
--with-apxs2=/usr/local/apache2.4/bin/apxs \
--with-mysql=/usr/local/mysql5.6 \
--with-mysqli=/usr/local/mysql5.6/bin/mysql_config \
--enable-soap --enable-bcmath --enable-zip --enable-ftp \
--enable-mbstring --with-gd --with-libxml-dir --with-jpeg-dir \
--with-png-dir --with-freetype-dir --with-zlib \
--with-libxml-dir=/usr --with-curl --with-xsl --with-openssl
make && make install
if [ $? -eq 0 ];then
    cp php.ini-production /usr/local/php5.4/etc/php.ini # 创建php配置文件
    echo "data.timezone = Asia\Shanghai" >> /usr/local/php5.4/etc/php.ini # 修改时区设置
    sed -i 's/upload_max_filesize = 2M/ upload_max_filesize = 50M/g' /usr/local/php5.4/etc/php.ini
    sed -i 's/display_errors = Off/display_errors = On/g' /usr/local/php5.4/etc/php.ini
     service httpd restart
    [ $? -eq 0 ] && echo "PHP install success." || echo "PHP install failed."
else
    echo "------ php make failed. ------"
    exit 1
fi
;;
*)
    echo "Please input number 1 2 3."
esac


你可能感兴趣的:(lamp)