plantegg 发表于 2018-8-29 09:47:03

shell-scripts通过yum搭建LAMP和mysql主从

#!/bin/bash  
#select menu yum install lamp and mysql master_slave
  
#by colink in 2015-04-28,05-13
  
#version v.c.m.0.3
  

  
BACKUP_DIR="/data/backup/`date +%Y%m%d`/"
  
IPADDR=`ifconfig eth0|grep Bcast |awk '{print $2}'|sed 's/addr://g'`
  

  
#判断IP是否符合标准规则
  
function judge_ip(){
  
    #这里local $1出错,用2>/dev/null屏蔽掉错误,暂未发现影响输出结果
  
    local $1 2>/dev/null
  
    TMP_TXT='/tmp/iptmp.txt'
  
    echo $1 > ${TMP_TXT}
  
    IP_ADDR=`grep -Eo '({1,3}\.){3}{1,3}' ${TMP_TXT}`
  
    #判断有没有符合***.***.***.***规则的IP
  
    if [ ! -z "${IP_ADDR}" ];then
  
      local j=0;
  
      #通过循环来检测每个点之前的数值是否符合要求
  
      for ((i=1;i>/root/.bashrc ; source /root/.bashrc ;
  
      chkconfig --level 3 iptables off ; chkconfig --level 3 ip6tables off
  
      ntpdate pool.ntp.org
  
      sed -i "/^SELINUX=enforcing/s/enforcing/disabled/g" /etc/selinux/config
  
      if [ $? -eq 0 ];then
  
                echo -e "\033[32mINIT ststem done. Will reboot system, Input Y|y or N|n :\033[0m"
  
                read -n 1 do_reboot
  
                case ${do_reboot} in
  
                        Y|y) init 6 ;;
  
                        N|n) break ;;
  
                esac
  
      fi
  
}
  
#定义依赖包安装函数是否运行的状态
  
DEPEND_STATUS=1
  
#DEPEND_STATUS=0时,表示已经运行过;等于1时,表示未运行
  
#yum安装lamp需要的各种包函数
  
function install_depend(){
  
    yum -y install zlib zlib-devel libpng libpng-devel freetype \
  
freetype-devel libart_lgpl libart_lgpl-devel libxml2 libxml2-devel \
  
cairo cairo-devel pango pango-devel perl-devel \
  
cjkuni-ukai-fonts.noarchcjkuni-uming-fonts.noarch
  
}
  
#YUM 安装apache
  
function install_apache(){
  
      if [ ${DEPEND_STATUS} -eq 1 ];then
  
                install_depend;
  
                if [ $? -eq 0 ];then
  
                        ${DEPEND_STATUS}=0;
  
                fi
  
      fi
  
      echo -e "\033[32mWill yum install apache,Please wait...\033[0m"
  
      yum -y install apr apr-devel httpd httpd-devel
  
      if [ $? -eq 0 ];then
  
                echo -e "\033[32mThe apache was installed successfully...\033[0m"
  
      else
  
                echo -e "\033[31mThe apache was installed failed,Please check...\033[0m"
  
    fi
  
}
  
#YUM 安装PHP
  
function install_php(){
  
    if [ ${DEPEND_STATUS} -eq 1 ];then
  
      install_depend;
  
      if [ $? -eq 0 ];then
  
            ${DEPEND_STATUS}=0;
  
      fi
  
    fi
  
    echo -e "\033[32mWill yum install php,Please wait...\033[0m"
  
    yum -y install gd gd-devel php php-devel php-mysql php-gd \
  
php-mbstring php-pear php-pecl* php-xml php-xmlrpc php-snmp php-soap
  
    if [ $? -eq 0 ];then
  
      echo -e "\033[32mThe PHP was installed successfully...\033[0m"
  
    else
  
      echo -e "\033[31mThe PHP was installed failed,Please check...\033[0m"
  
    fi
  
}
  
#YUM 安装mysql
  
function install_mysql(){
  
    echo -e "\033[32mWill yum install mysql,Please wait...\033[0m"
  
      yum -y install mysql mysql-server mysql-devel
  
    if [ $? -eq 0 ];then
  
      echo -e "\033[32mThe mysql was installed successfully...\033[0m"
  
                service mysqld restart;
  
    else
  
      echo -e "\033[31mThe mysql was installed failed,Please check...\033[0m"
  
    fi
  
}
  
#整合apache与PHP的配置函数
  
HTTPD_CONF='/etc/httpd/conf/httpd.conf'
  
HTTPD_HTML_DIR='/var/www/html/'
  
CHECK_PHP_FILES='phpinfo.php'
  
function mod_httpd_conf(){
  
      echo -e "\033[32mWill Modify httpd.conf Profile,Please wait...\033[0m"
  
      sleep 3
  
      if [ ! -d ${BACKUP_DIR} ];then
  
                mkdir -p ${BACKUP_DIR}
  
      fi
  
      cp ${HTTPD_CONF} ${BACKUP_DIR}httpd`date +%Y%m%d%k%M%S`.conf
  
      sed -i "/#ServerName/s/#//g" ${HTTPD_CONF} ;
  
      sed -i "/Options Indexes FollowSymLinks/s/Indexes//g" ${HTTPD_CONF} ;
  
      sed -i "/DirectoryIndex index.html index.html.var/s/DirectoryIndex/\
  
DirectoryIndex index.php/g" ${HTTPD_CONF} ;
  
      echo "Addtype application/x-httpd-php.php.phtml" >> ${HTTPD_CONF} ;
  
      echo -e "\033[32mModify httpd.conf profile done.\033[0m"
  
      #create phpinfo.php for check PHP
  
      cat >${HTTPD_HTML_DIR}${CHECK_PHP_FILES}
页: [1]
查看完整版本: shell-scripts通过yum搭建LAMP和mysql主从