vincen 发表于 2018-8-29 08:51:55

if条件综合shell一键安装LAMP

  通过IF语句和变量来编写运维脚本,
  一键安装LAMP环境的脚本;
  一键源码安装LAMP脚本,先分解脚本的各个功能;
  打印菜单:
  1)安装Apache WEB服务器
  2)安装Mysql DB服务器
  3)安装PHP服务器
  4)整合LAMP架构并启动服务
  1、Apache服务器安装部署。
  下载httpd-2.2.27.tar.gz版本,下载URL,解压,进入安装目录,configure;make;make install
  2、MySQL服务器的安装
  下载MySQL-5.5.20.tar.bz2版本,下载URL,解压,进入安装目录,configure;makeinstall
  3、PHP服务器安装
  下载PHP-5.3.8.tar.bz2版本,下载URL,解压,进入安装目录,configure;make;make install
  4LAMP架构的整合和服务启动
  /usr/local/apache2/bin/apachectl start
  vi htdocs/index.php
  
  脚本页
  #!bin/bash
  #auto install LAMP
  #by lirp 2015-7
  #Httpd define path variable
  H_FILES=httpd-2.2.27.bar.bz2
  H_FILES_DIR=httpd-2.2.27
  H_URL=http://mirrors.cnnic.cn/apache/httpd/
  H_PREFIX=/usr/local/apache2/
  #mysql define path variable
  M_FILES=mysql-5.5.20.tar.gz
  M_FILES_DIR=mysql-5.5.20
  M_URL=http://downl.chinaunix.net/distfiles/
  M_PREFIX=/usr/local/mysql/
  #PHP define path variable
  P_FILES=php-5.3.28.bar.bz2
  P_FILES_DIR=php-5.3.28
  P_URL=http://mirrors.sohu.com/php/
  P_PREFIX=/usr/local/php5/
  #auto install httpd
  if [ -z "$1" ];then
  echo -e "\033[36mplease select Install Menu follow:\033[0m"
  echo -e "\033[32ml)编译安装Apache服务器\033[1m"
  echo "2)编译安装MySQL服务器"
  echo "3)编译安装PHP服务器"
  echo "4)配置index.php并启动LAMP服务"
  echo -e"\033[31mUsage: { /bin/sh $0 1|2|3|4|help}\033[0m"
  exit
  fi
  if [[ "$1" -eq "1" ]];then
  wget -c $H_URL/$H_FILES &&tar -jxvf $H_FILES &&cd $H_FILES_DIR ;./configure --prefix=$H_PREFIX
  if [ $? -eq 0 ];then
  make &&make install
  echo -e "\033[32mThe $H_FILES_DIR sever install successfully!\033[0m"
  else
  echo -e "\033[32mThe $H_FILES_DIR sever install failed,please check...!\033[0m"
  exit
  fi
  fi
  #auto install mysql
  if [[ "$1" -eq "2" ]];then
  wget -c $M_URL/$H_FILES &&tar -zxvf $M_FILES &&cd $M_FILES_DIR $$yum install cmake -y ;cmke . -DCMAKE_INSTALL_PREFIX=$M_PREFIX \
  -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
  -DMYSQL_DATADIR=/date/mysql \
  -DSYSCONFDIR=mysql \
  -DMYSQL_USER=mysql \
  -DMYSQL_TCP_PORT=3306 \
  -DWITH_XTRADB_STORAGE_ENGINE=1 \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  -DWITH_PARTITIOM_STORAGE_ENGINE=1 \
  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  -DWITH_MYISAM_STORAGE_ENGINE=1 \
  -DWITH_READLINE=1 \
  -DENABLED_LOCAL_INFILE=1 \
  -DWITH_EXTRA_CHARSETS=1 \
  -DDEFAULT_CHARSET=utf8 \
  -DDEFAULT_COLLATION=utf8_general_ci \
  -DEXTRA_CHARSETS=all \
  -DWITH_BIG_TABLES=1 \
  -DWITH_DEBUG=0
  if [ $? -eq 0 ];then
  make &&make install
  echo -e "\033[32mThe $M_FILES_DIR sever install successfully!\033[0m"
  else
  echo -e "\033[32mThe $M_FILES_DIR sever install failed,please check...!\033[0m"
  exit
  fi
  fi
  #auto install php server
  if [[ "$1" -eq "3" ]];then
  wget -c $P_URL/$P_FILES &&tar -jxvf $P_FILES &&cd $P_FILES_DIR ;./configure --prefix=$P_PREFIX --with-config-file-path=$P_PREFIX/etc --with-mysql=$M_PREFIX --with-apxs2=$H_PREFIX/bin/apxs
  if [ $? -eq 0 ];then
  make ZEND_EXTRA_LIBS=`-liconv` && make inatall
  echo -e "\033[32mThe $P_FILES_DIR sever install successfully!\033[0m"
  else
  echo -e "\033[32mThe $P_FILES_DIR sever install failed,please check...!\033[0m"
  exit
  fi
  fi
  if [[ "$1" -eq "4" ]];then
  sed -i `/DirectoryIndex/s/index.html/indwx.php index.htl/g` $H_PREFIX/conf/httpd.conf
  $H_PREFIX/bin/apachectl restart
  echo "Addtype   application/x-httpd-php .php" >>$H_PREFIX/conf/httpd.conf
  IP=`ifconfig eth1|grep "Bcast"|awk '{print $2}'|cut -d: -f2`
  echo "You can access http://$IP/"
  cat >$H_PREFIX/htdocs/index.php >>EOF
  >?php
  phpinfo();
  ?>
  EOF
  fi
  嘿嘿完了。。。

页: [1]
查看完整版本: if条件综合shell一键安装LAMP