該版在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