dsfggg 发表于 2015-8-6 11:31:13

LAMP自动安装脚本第三版

该版在if判断之上加入了function函数模块,并加入了read捕捉参数和case选项调用功能,安装菜单做了点优化,增加可视度。功能依旧是LAMP环境搭建,该脚本可用选项一次安装,也可一键完整安装。还有很多不足之处,请多见谅和批评。
(使用方法:依旧,需要三个软件包:httpd-2.2.29.tar.bz2   mysql-5.1.63.tar.gz php-5.3.29.tar.bz2,使用时在根目录创建一个/lamp目录,把该脚本文件与三个软件包放在lamp目录下,运行脚本即可)

脚本内容如下:

#!/bin/bash
#LAMP install
#By LiuPengfang ----2015-07-30----
#--------------------------菜单显示------------------------------------
echo -e "\033[33m+----------------------------------+\033[0m"
echo -e "\033[33m+    欢迎使用LAMP自动安装脚本      +\033[0m"
echo -e "\033[33m+----------------------------------+\033[0m"
echo -e "\033[35m+请输入选项完成安装:            +\033[0m"
echo -e "\033[33m+----------------------------------+\033[0m"
echo -e "\033[35m+ apache + 安装Apache服务          +\033[0m"
echo -e "\033[33m+--------+-------------------------+\033[0m"
echo -e "\033[35m+ mysql+ 安装Mysql服务         +\033[0m"
echo -e "\033[33m+--------+-------------------------+\033[0m"
echo -e "\033[35m+ php    + 安装PHP服务             +\033[0m"
echo -e "\033[33m+--------+-------------------------+\033[0m"
echo -e "\033[35m+ ZH   + 服务整合                +\033[0m"
echo -e "\033[33m+--------+-------------------------+\033[0m"
echo -e "\033[35m+ lamp   + lamp一键安装            +\033[0m"
echo -e "\033[33m+--------+-------------------------+\033[0m"
echo -e "\033[35m+ q      + 退出                  +\033[0m"
echo -e "\033[33m+--------+-------------------------+\033[0m"
echo -e "\033[32m+提示:输入错误可Crtl+Backspase删除+\033[0m"
echo -e "\033[33m+----------------------------------+\033[0m"
#--------------------------Apache安装------------------------------------
function APACHE_INSTALL (){
cd /lamp
echo -e "\033[35m--Apache安装--\033[0m"
echo -e "\033[35m文件解压……\033[0m"
./configure --prefix=/usr/local/apache2 &>/dev/null
if [ $? -eq 0 ];then
echo -e "\033[35m预编译成功!\033[0m"
else
echo -e "\033[35m预编译失败!\033[0m"
exit 17
fi
echo -e "\033[35mApache正在安装……\033[0m"
make &>/dev/null && make install &>/dev/null
if [ $? -eq 0 ];then
echo -e "\033[35mApache安装成功!\033[0m"
else
echo -e "\033[35mApache安装失败!\033[0m"
exit 17
fi
}
#--------------------------Mysql安装------------------------------------
function MYSQL_INSTALL (){
echo -e "\033[35m--Mysql安装--\033[0m"
echo -e "\033[35m开始解压……\033[0m"
echo -e "\033[35m预编译成功!\033[0m"
else
echo -e "\033[35m预编译失败!\033[0m"
exit 17
fi
echo -e "\033[35m开始安装Mysql……\033[0m"
make &>/dev/null && make install &>/dev/null
if [ $? -eq 0 ];then
echo -e "\033[35mMysql安装成功!\033[0m"
else
echo -e "\033[35mMysql安装失败!\033[0m"
exit 17
fi
}
#--------------------------PHP安装------------------------------------
function PHP_INSTALL (){
echo -e "\033[35m--PHP安装--\033[0m"
yum install libxml2 libxml2-devel -y &>/dev/null
echo -e "\033[35m解压完成!开始预编译……\033[0m"
if [ $? -eq 0 ];then
echo -e "\033[35m预编译成功!\033[0m"
else
echo -e "\033[35m预编译失败!\033[0m"
exit 17
fi
echo -e "\033[35m开始安装PHP……\033[0m"
make &>/dev/null && make install &>/dev/null
if [ $? -eq 0 ];then
echo -e "\033[35mMysql安装成功!\033[0m"
else
echo -e "\033[35mMysql安装失败!\033[0m"
exit 17
fi
}
#--------------------------服务调整及整合------------------------------------
function SERVER_ZHENGHE (){
echo -e "\033[35m----Apache+PHP整合中……-----\033[0m"
sleep 3
ADDTYPE=/usr/local/apache2/conf/httpd.conf
echo -e "\033[35m----编写PHP测试页面……-----\033[0m"
sleep 2
cd /usr/local/apache2/htdocs/
echo '<?php' >> index.php
echo 'phpinfo();' >> index.php
echo '?>' >> index.php
echo -e "\033[35m----请访问PHP测试页面-----\033[0m"
echo -e "\033[35m----Mysql配置-----\033[0m"
sleep 2
useradd mysql
rm -rf /etc/my.cnf
cp /lamp/mysql-5.1.63/support-files/my-medium.cnf /etc/my.cnf
cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 35 mysqld on
mkdir /usr/local/mysql/data
chown -R mysql.mysql /usr/local/mysql
MY_CNF=/etc/my.cnf
sed -i 's/myisam_sort_buffer_size = 8M/& \ndatadir = \/usr\/local\/mysql\/data\/
/' $MY_CNF
echo -e "\033[35m正在初始化mysql……\033[0m"
/usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/usr/local/mysql/da
ta/ &>/dev/null
echo -e "\033[35m关闭防火墙……\033[0m"
service iptables stop &>/dev/null
echo -e "\033[35m关闭selinux……\033[0m"
setenforce 0 &>/dev/null
echo -e "\033[35m正在开启httpd服务……\033[0m"
/usr/local/apache2/bin/apachectl start &>/dev/null
echo -e "\033[35m正在开启mysqld服务……\033[0m"
service mysqld start &>/dev/null
echo -e "\033[35m----LAMP环境搭建完成-----\033[0m"
}
#--------------------------捕捉变量------------------------------------
read -p "请输入选项:" A
#--------------------------调用模块------------------------------------
case $A in
      apache)
      APACHE_INSTALL
      ;;
      mysql)
      MYSQL_INSTALL
      ;;
      php)
      PHP_INSTALL
      ;;
      ZH)
      SERVER_ZHENGHE
      ;;
      lamp)
      APACHE_INSTALL
      MYSQL_INSTALL
      PHP_INSTALL
      SERVER_ZHENGHE
      ;;
      q)
      exit
      ;;
      *)
      echo -e "\033[33m+----------------------------------+\033[0m"
      echo -e "\033[31m请输入正确选项!\033[0m"
      sh /lamp/Auto_lamp_V3.sh
esac


页: [1]
查看完整版本: LAMP自动安装脚本第三版