当前位置: > shell编程 >

Shell脚本一键安装LNMP环境

时间:2015-03-26 17:27来源:linux.it.net.cn 作者:IT
Nginx是一款高性能的HTTP和反向代理服务器。Nginx在反向代理,Rewrite规则,稳定性,静态文件处理,内存消耗等方面表现了很强的优势。因此公司线上和测试环境的WEB服务大多数采用的是LNMP环境,经常要进行LNMP环境的搭建,下面是用SHELL脚本写的一键安装LNMP环境的脚本。


1)系统环境介绍

Centos 5.8 64位 (已测试)
Nginx: nginx-1.4.1.tar.gz
PHP:   php-5.3.27.tar.gz
Mysql: mysql-5.6.5-m8.tar.gz



2)一键安装LNMP环境

cd /root/sh
wget http://sourceforge.net/projects/opensourcefile/files/Install_Centos_LNMP_v.0.1.sh/download
Install_Centos_LNMP_v.0.1.sh
http://yunpan.cn/cZEfjNTe3Xw5q    访问密码 9b14 
3)查看LNMP一键安装脚本的SHELL脚本
cat Install_Centos_LNMP_v.0.1.sh
#!/bin/bash
#author:sfzhang
mkdir -p /software
cd /software
wget http://sourceforge.net/projects/opensourcefile/files/Centos_LNMP_v.0.1.tar.gz/download
if [ $? -eq 0 ]
  then
  unzip Centos_LNMP_v.0.1.tar.gz
  rm -f Centos_LNMP_v.0.1.tar.gz
else
  echo "Downloading http://sourceforge.net/projects/opensourcefile/files/Centos_LNMP_v.0.1.tar.gz/download failured!"
  exit 1
fi
echo "Installing lnmp depend  packages... "
sh /software/install_packages.sh
if [ $? -eq 0 ]
  then
    echo "Lnmp depend packages install sucessfull!"
else
    echo "Lnmp depend packages install failured!"
   exit 1
fi
echo "Installing php library files..."
sh /software/install_php_lib.sh
if [ $? -eq 0 ]
  then
    echo "PHP library install sucessfull!"
else
    echo "PHP library install failured!"
   exit 1
fi
echo "Installing mysql,please waitting..."
sh /software/install_mysql_5.6.sh
if [ $? -eq 0 ]
  then
    echo "mysql install sucessfull!"
else
    echo "mysql install failured!"
   exit 1
fi
echo "Now Installing php,please waitting..."
sh /software/install_php_5.3.sh
if [ $? -eq 0 ]
  then
    echo "PHP install sucessfull!"
else
    echo "PHP install failured!"
   exit 1
fi
echo "Installing php extensions...."
sh /software/install_php_ext.sh
if [ $? -eq 0 ]
  then
    echo "PHP extensions install sucessfull!"
else
    echo "PHP extensions install failured!"
   exit 1
fi
echo "Installing nginx....."
sh /software/install_nginx.sh
if [ $? -eq 0 ]
  then
    echo "Nginx install sucessfull!"
else
    echo "Nginx install failured!"
   exit 1
fi
echo "optimizing the environment of the lnmp!"
sh /software/install_optimiz.sh
if [ $? -eq 0 ]
  then
    echo "optimizing the environment of the lnmp sucessfull!"
else
    echo "optimizing the environment of the lnmp failured!"
   exit 1
fi
echo "Congratulations to you,a key installation LNMP is successful!"


脚本说明:该脚本用(if...fi)语句共分为以下8个部分,方便脚本的可读性,并更具不同的需求方便用户自定义安装,比如需要安装Nginx,只需手工执行sh /software/install_nginx.sh这个脚本

即可,如果需要安装mysql,则执行 /software/install_mysql_5.6.sh 这个脚本。


   1.下载LNMP源码包及其各部分的安装脚本。

   2.yum安装LNMP所依赖的包。

   3.源码安装PHP所需要的库文件。

   4.源码安装mysql数据库。

   5.源码安装PHP。

   6.源码安装PHP扩展。

   7.源码安装NGINX。

   8.优化LNMP性能。


4)LNMP一键安装脚本测试


  1.LNMP一键安装完成后终端会出现Congratulations to you,a key installation LNMP is successfull字符。


  2.启动nginx和php-fpm服务。
[root@WEB25 sh]# /usr/local/nginx/sbin/nginx
[root@WEB25 sh]# /usr/local/php/sbin/php-fpm -D


3.查看nginx和php-fpm端口。
[root@WEB25 sh]## netstat -antlp |grep LISTEN
tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      2002/php-fpm
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      1991/nginx

4.查看php测试页。

总结:LNM安装的PHP扩展说明:

   1)eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍,目前只支持PHP5.4的版本。
   2)PDO_MYSQL,PDO简介 PDO 是一个“数据库访问抽象层”,作用是统一各种数据库(MySQL、MSSQL、Oracle、DB2、PostgreSQL……)的访问接口,能轻松的在不同的数据库之间完成切换,使得数据库间的移植容易实现。


   3)ImageMagick,ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF、JPEG、GIF、 PNG、PDF以及PhotoCD等格式(安装ImageMagick需要imagick支持)。


   4)Zend Optimizer用优化代码的方法来提高php应用程序的执行速度。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化。
(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容