博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lnmp一键脚本
阅读量:4646 次
发布时间:2019-06-09

本文共 6169 字,大约阅读时间需要 20 分钟。

#!/bin/bash#================================================================#   Copyright (C) 2018  All rights reserved.#   #   File::lnmp_install.sh#   Author:zhurui#   Date:2018/12/13#   Description:install nginx,mysql,php##================================================================dir=/datanginx_download_path="http://nginx.org/download/nginx-1.12.0.tar.gz"nginx_install_dir="/usr/local/nginx"mysql_download_path="https://cdn.mysql.com//Downloads/MySQL-5.5/mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz"mysql_install_dir="/usr/local/mysql"php_download_path="http://jp2.php.net/distributions/php-5.5.38.tar.gz"php_install_path="/usr/local/php"nginx_name="nginx-1.12.0.tar.gz"mysql_name="mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz"php_name="php-5.5.38.tar.gz"[ -f /etc/init.d/functions ] && . /etc/init.d/functions || exit 1# create file download dircreate_dir(){  if [ ! -e $dir ]    then      mkdir $dir  else    echo "file download dir is exit!"  fi}# install nginx 1.12.0install_nginx(){  # yum install something  wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo  yum install -y pcre pcre-devel openssl openssl-devel gcc make gcc-c++  # download nginx  [ -e $dir ] && cd $dir  wget $nginx_download_path  if [ -f $nginx_name ]    then      echo 'nginx download success'      # tar nginx      tar zxf $nginx_name && cd nginx-1.12.0      # add user nginx      useradd nginx -s /sbin/nologin -M      # install nginx      ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module      [ $(echo $?) -eq 0 ] && make && make install      [ $(echo $?) -eq 0 ] && echo "nginx install success"      fi}# start nginxstart_nginx(){ # check syntax $nginx_install_dir/sbin/nginx -t  # start if [ $(echo $?) -eq 0 ]   then     $nginx_install_dir/sbin/nginx     if [ $(netstat -lutnp|grep 80|wc -l) -eq 1 ]       then         action "nginx starting success..."  /bin/true     else         echo "nginx starting fail,plaese check the service!"     fi fi}# install mysql 5.5.56install_mysql(){  # yum install something  yum install -y ncurses-devel automake autoconf bison libtool-ltdl-devel  # download mysql  [ -e $dir ] && cd $dir  wget $mysql_download_path  if [ -f $mysql_name ]    then      echo 'mysql download success'      # tar mysql      echo "just wait a moment,mysql is Extracting..."      tar zxf mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz      # rename      mv mysql-5.5.56-linux-glibc2.5-x86_64 mysql-5.5.56      # mkdir dir mysql      if [ ! -d $mysql_install_dir ]        then          mkdir -p $mysql_install_dir      fi      # move file to mysql_install_dir      mv mysql-5.5.56/* /usr/local/mysql/      # add user mysql      useradd mysql -s /sbin/nologin -M      # chown      chown -R mysql.mysql /usr/local/mysql      # change dir      cd $mysql_install_dir      # install mysql      ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data      # mv my.cnf      [ $(echo $?) -eq 0 ] && \cp support-files/my-medium.cnf /etc/my.cnf      # mv mysql.server      cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld      # chmod +x      chmod +x /etc/init.d/mysqld      # add to boot auto launch      chkconfig --add mysqld      chkconfig mysqld on      # add to PATH      PATH=$PATH:/usr/local/mysql/bin/      echo "export PATH=$PATH:/usr/local/mysql/bin/" >>/etc/profile      source /etc/profile  fi   }# start mysql_serverstart_mysql(){  # start  /etc/init.d/mysqld start     if [ $(netstat -lutnp|grep 3306|wc -l) -eq 1 ]    then      action "mysql starting success..."  /bin/true  else      echo "mysql starting fail,plaese check the service!"  fi}# install php5.5.38install_php(){  # yum install something  yum install zlib-devel openssl-devel openssl libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libxslt-devel libmcrypt-devel mcrypt mhash -y  # download php  [ -e $dir ] && cd $dir  wget $php_download_path  if [ -f $php_name ]    then      echo 'php download success'      # tar file      tar zxf $php_name  && cd php-5.5.38      # install php      echo "Please hold on!The configure output message is so large so that I hide the output message!..."      ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-iconv-dir=/usr/lcoal/libiconv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-short-tags --enable-zend-multibyte --enable-static --with-xsl --with-xsl --with-fpm-user=nginx --with-fpm-user=nginx --enable-ftp --enable-opcache=no >> /dev/null 2>&1      [ $(echo $?) -eq 0 ] && ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/ && touch ext/phar/phar.phar      make >> /dev/null 2>&1      make install      # copy php.ini      cp php.ini-development /etc/php.ini      # copy php-fpm      cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf      cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm          # chmod +x      chmod +x /etc/init.d/php-fpm        # add to PATH      PATH=$PATH:/usr/local/php/bin/      echo "export PATH=$PATH:/usr/local/php/bin/" >>/etc/profile      source /etc/profile      # add to boot auto launch      chkconfig --add php-fpm      chkconfig php-fpm  on fi}# start php-fpmstart_phpfpm(){  # start  /etc/init.d/php-fpm start  if [ $(netstat -lutnp|grep 9000|wc -l) -eq 1 ]    then      action "php-fpm starting success..." /bin/true  else      echo "php-fpm starting fail,plaese check the service!"  fi}# main functionmain(){   #create dir   create_dir   # install   install_nginx   sleep 3   install_mysql   sleep 3   install_php   # start   start_nginx   sleep 2   start_mysql   sleep 2   start_phpfpm}main

  

转载于:https://www.cnblogs.com/hackerer/p/10112617.html

你可能感兴趣的文章
封装CLLocationManager定位获取经纬度
查看>>
我的第一篇博客-(Eclipse中或Myeclipse中如果不小心删除了包那可怎么办?)
查看>>
对easyui datagrid组件的一个小改进
查看>>
类似以下三图竞争关系的IT企业
查看>>
清明节
查看>>
ubuntu如何安装svn客户端?
查看>>
javascript之非构造函数的继承
查看>>
C#实现 单点登录(SSO)
查看>>
高精度计算(2015.8.1)
查看>>
cocos2d-x tile map瓦片地图的黑线及地图抖动解决方案
查看>>
软工网络15团队作业2——团队计划
查看>>
Android屏幕适配
查看>>
ps简单操作文档
查看>>
CSS之float样式
查看>>
08test
查看>>
测试用例方法总结
查看>>
基数---SQL Server 2008 Bible
查看>>
第一个JSP程序
查看>>
数组常用的API——splice()截取
查看>>
sbt教程
查看>>