该版在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目录下,运行脚本便可)php
脚本内容以下:
#!/bin/bashmysql
#LAMP installlinux
#By LiuPengfang ----2015-07-30----sql
#--------------------------菜单显示------------------------------------apache
echo -e "\033[33m+----------------------------------+\033[0m"bash
echo -e "\033[33m+ 欢迎使用LAMP自动安装脚本 +\033[0m"ide
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