123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711 |
- #!/bin/bash
- # Author: Alpha Eva <kaneawk AT gmail.com>
- #
- # Notes: OneinStack for CentOS/RadHat 5+ Debian 6+ and Ubuntu 12+
- #
- # Project home page:
- # https://oneinstack.com
- # https://github.com/lj2007331/oneinstack
- checkDownload(){
- mirrorLink=http://mirrors.linuxeye.com/oneinstack/src
- pushd ${oneinstack_dir}/src
- # Web
- if [ "${Web_yn}" == 'y' ]; then
- echo "Download openSSL..."
- src_url=https://www.openssl.org/source/openssl-${openssl_version}.tar.gz && Download_src
- case "${Nginx_version}" in
- 1)
- echo "Download nginx..."
- src_url=http://nginx.org/download/nginx-${nginx_version}.tar.gz && Download_src
- ;;
- 2)
- echo "Download tengine..."
- src_url=http://tengine.taobao.org/download/tengine-${tengine_version}.tar.gz && Download_src
- ;;
- 3)
- echo "Download openresty..."
- src_url=https://openresty.org/download/openresty-${openresty_version}.tar.gz && Download_src
- ;;
- esac
- if [[ "${Nginx_version}" =~ ^[1-3]$ || ${Apache_version} == '1' ]]; then
- echo "Download pcre..."
- src_url=${mirrorLink}/pcre-${pcre_version}.tar.gz && Download_src
- fi
- # apache
- if [ "${Apache_version}" == '1' ]; then
- echo "Download apache 2.4..."
- src_url=http://archive.apache.org/dist/apr/apr-${apr_version}.tar.gz && Download_src
- src_url=http://archive.apache.org/dist/apr/apr-util-${apr_util_version}.tar.gz && Download_src
- src_url=http://mirrors.linuxeye.com/apache/httpd/httpd-${apache_4_version}.tar.gz && Download_src
- fi
- if [ "${Apache_version}" == '2' ]; then
- echo "Download apache 2.2..."
- src_url=http://mirrors.linuxeye.com/apache/httpd/httpd-${apache_2_version}.tar.gz && Download_src
- echo "Download mod_remoteip.c for apache 2.2..."
- src_url=${mirrorLink}/mod_remoteip.c && Download_src
- fi
- # tomcat
- case "${Tomcat_version}" in
- 1)
- echo "Download tomcat 8..."
- src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat_8_version}/apache-tomcat-${tomcat_8_version}.tar.gz && Download_src
- src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat_8_version}/catalina-jmx-remote.jar && Download_src
- ;;
- 2)
- echo "Download tomcat 7..."
- src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat_7_version}/apache-tomcat-${tomcat_7_version}.tar.gz && Download_src
- src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat_7_version}/catalina-jmx-remote.jar && Download_src
- ;;
- 3)
- echo "Download tomcat 6..."
- src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat_6_version}/apache-tomcat-${tomcat_6_version}.tar.gz && Download_src
- src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat_6_version}/catalina-jmx-remote.jar && Download_src
- ;;
- esac
- if [[ "${JDK_version}" =~ ^[1-3]$ ]]; then
- case "${JDK_version}" in
- 1)
- echo "Download JDK 1.8..."
- JDK_FILE="jdk-$(echo ${jdk_8_version} | awk -F. '{print $2}')u$(echo ${jdk_8_version} | awk -F_ '{print $NF}')-linux-${SYS_BIG_FLAG}.tar.gz"
- ;;
- 2)
- echo "Download JDK 1.7..."
- JDK_FILE="jdk-$(echo ${jdk_7_version} | awk -F. '{print $2}')u$(echo ${jdk_7_version} | awk -F_ '{print $NF}')-linux-${SYS_BIG_FLAG}.tar.gz"
- ;;
- 3)
- echo "Download JDK 1.6..."
- JDK_FILE="jdk-$(echo ${jdk_6_version} | awk -F. '{print $2}')u$(echo ${jdk_6_version} | awk -F_ '{print $NF}')-linux-${SYS_BIG_FLAG}.bin"
- ;;
- esac
- # start download...
- src_url=http://mirrors.linuxeye.com/jdk/${JDK_FILE} && Download_src
- fi
- fi
- if [ "${DB_yn}" == 'y' ]; then
- if [[ "${DB_version}" =~ ^[1,4,7]$ ]] && [ "${dbInstallMethods}" == "2" ]; then
- echo "Download boost..."
- [ "${IPADDR_COUNTRY}"x == "CN"x ] && DOWN_ADDR_BOOST=${mirrorLink} || DOWN_ADDR_BOOST=http://downloads.sourceforge.net/project/boost/boost/${boost_version}
- boostVersion2=$(echo ${boost_version} | awk -F. '{print $1}')_$(echo ${boost_version} | awk -F. '{print $2}')_$(echo ${boost_version} | awk -F. '{print $3}')
- src_url=${DOWN_ADDR_BOOST}/boost_${boostVersion2}.tar.gz && Download_src
- fi
- case "${DB_version}" in
- 1)
- # MySQL 5.7
- if [ "${IPADDR_COUNTRY}"x == "CN"x -a "${IPADDR_ISP}" == "aliyun" -a "$(../include/check_port.py aliyun-oss.linuxeye.com 80)" == "True" ]; then
- DOWN_ADDR_MYSQL=http://aliyun-oss.linuxeye.com/mysql/MySQL-5.7
- else
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- if [ "$(../include/check_port.py mirrors.tuna.tsinghua.edu.cn 443)" == "True" ]; then
- DOWN_ADDR_MYSQL=https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7
- else
- DOWN_ADDR_MYSQL=http://mirrors.sohu.com/mysql/MySQL-5.6
- DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
- fi
- else
- if [ "$(../include/check_port.py cdn.mysql.com 80)" == "True" ]; then
- DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.7
- else
- DOWN_ADDR_MYSQL=http://mysql.he.net/Downloads/MySQL-5.7
- DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
- fi
- fi
- fi
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download MySQL 5.7 binary package..."
- FILE_NAME=mysql-${mysql_5_7_version}-linux-glibc2.5-${SYS_BIT_b}.tar.gz
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download MySQL 5.7 source package..."
- FILE_NAME=mysql-${mysql_5_7_version}.tar.gz
- fi
- # start download
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5
- MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
- # verifying download
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 2)
- # MySQL 5.6
- if [ "${IPADDR_COUNTRY}"x == "CN"x -a "${IPADDR_ISP}" == "aliyun" -a "$(../include/check_port.py aliyun-oss.linuxeye.com 80)" == "True" ]; then
- DOWN_ADDR_MYSQL=http://aliyun-oss.linuxeye.com/mysql/MySQL-5.6
- else
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- if [ "$(../include/check_port.py mirrors.tuna.tsinghua.edu.cn 443)" == "True" ]; then
- DOWN_ADDR_MYSQL=https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.6
- else
- DOWN_ADDR_MYSQL=http://mirrors.sohu.com/mysql/MySQL-5.6
- DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
- fi
- else
- if [ "$(../include/check_port.py cdn.mysql.com 80)" == "True" ]; then
- DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.6
- else
- DOWN_ADDR_MYSQL=http://mysql.he.net/Downloads/MySQL-5.6
- DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
- fi
- fi
- fi
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download MySQL 5.6 binary package..."
- FILE_NAME=mysql-${mysql_5_6_version}-linux-glibc2.5-${SYS_BIT_b}.tar.gz
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download MySQL 5.6 source package..."
- FILE_NAME=mysql-${mysql_5_6_version}.tar.gz
- fi
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5
- MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 3)
- # MySQL 5.5
- if [ "${IPADDR_COUNTRY}"x == "CN"x -a "${IPADDR_ISP}" == "aliyun" -a "$(../include/check_port.py aliyun-oss.linuxeye.com 80)" == "True" ]; then
- DOWN_ADDR_MYSQL=http://aliyun-oss.linuxeye.com/mysql/MySQL-5.5
- else
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- if [ "$(../include/check_port.py mirrors.tuna.tsinghua.edu.cn 443)" == "True" ]; then
- DOWN_ADDR_MYSQL=https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.5
- else
- DOWN_ADDR_MYSQL=http://mirrors.sohu.com/mysql/MySQL-5.5
- DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
- fi
- else
- if [ "$(../include/check_port.py cdn.mysql.com 80)" == "True" ]; then
- DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.5
- else
- DOWN_ADDR_MYSQL=http://mysql.he.net/Downloads/MySQL-5.5
- DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
- fi
- fi
- fi
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download MySQL 5.5 binary package..."
- FILE_NAME=mysql-${mysql_5_5_version}-linux2.6-${SYS_BIT_b}.tar.gz
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download MySQL 5.5 source package..."
- FILE_NAME=mysql-${mysql_5_5_version}.tar.gz
- src_url=${mirrorLink}/mysql-5.5-fix-arm-client_plugin.patch && Download_src
- fi
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5
- MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 4)
- # MariaDB 10.1
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download MariaDB 10.1 binary package..."
- FILE_NAME=mariadb-${mariadb_10_1_version}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb_10_1_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
- MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb_10_1_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb_10_1_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
- MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb_10_1_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- fi
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download MariaDB 10.1 source package..."
- FILE_NAME=mariadb-${mariadb_10_1_version}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb_10_1_version}/source
- MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb_10_1_version}/source; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb_10_1_version}/source
- MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb_10_1_version}/source/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- fi
- fi
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_MARIADB}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 5)
- # MariaDB 10.0
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download MariaDB 10.0 binary package..."
- FILE_NAME=mariadb-${mariadb_10_0_version}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb_10_0_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
- MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb_10_0_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb_10_0_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
- MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb_10_0_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- fi
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download MariaDB 10.0 source package..."
- FILE_NAME=mariadb-${mariadb_10_0_version}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb_10_0_version}/source
- MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb_10_0_version}/source; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb_10_0_version}/source
- MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb_10_0_version}/source/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- fi
- fi
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_MARIADB}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 6)
- # MariaDB 5.5
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download MariaDB 5.5 binary package..."
- FILE_NAME=mariadb-${mariadb_5_5_version}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb_5_5_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
- MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb_5_5_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb_5_5_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
- MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb_5_5_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- fi
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download MariaDB 5.5 source package..."
- FILE_NAME=mariadb-${mariadb_5_5_version}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb_5_5_version}/source
- MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb_5_5_version}/source; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb_5_5_version}/source
- MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb_5_5_version}/source/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
- fi
- fi
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_MARIADB}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 7)
- # Precona 5.7
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download Percona 5.7 binary package..."
- FILE_NAME=Percona-Server-${percona_5_7_version}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
- DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona_5_7_version}/binary/tarball
- PERCONA_TAR_MD5=$(curl -Lk https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona_5_7_version}/binary/tarball/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download Percona 5.7 source package..."
- FILE_NAME=percona-server-${percona_5_7_version}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_PERCONA=${mirrorLink}
- DOWN_ADDR_PERCONA_2=https://www.percona.com/downloads/Percona-Server-5.7/source/tarball
- PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${PERCONA_TAR_MD5}" ] && { DOWN_ADDR_PERCONA=${mirrorLink}; PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona_5_7_version}/source/tarball
- PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- fi
- fi
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 8)
- # Precona 5.6
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download Percona 5.6 binary package..."
- perconaVerStr1=$(echo ${percona_5_6_version} | sed "s@-@-rel@")
- FILE_NAME=Percona-Server-${perconaVerStr1}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
- DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona_5_6_version}/binary/tarball
- PERCONA_TAR_MD5=$(curl -Lk https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona_5_6_version}/binary/tarball/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download Percona 5.6 source package..."
- FILE_NAME=percona-server-${percona_5_6_version}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_PERCONA=${mirrorLink}
- DOWN_ADDR_PERCONA_2=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona_5_6_version}/source/tarball
- PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${PERCONA_TAR_MD5}" ] && { DOWN_ADDR_PERCONA=${mirrorLink}; PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona_5_6_version}/source/tarball
- PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- fi
- fi
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 9)
- # Percona 5.5
- if [ "${dbInstallMethods}" == '1' ]; then
- echo "Download Percona 5.5 binary package..."
- perconaVerStr1=$(echo ${percona_5_5_version} | sed "s@-@-rel@")
- FILE_NAME=Percona-Server-${perconaVerStr1}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
- DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona_5_5_version}/binary/tarball
- PERCONA_TAR_MD5=$(curl -Lk https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona_5_5_version}/binary/tarball/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- elif [ "${dbInstallMethods}" == '2' ]; then
- echo "Download Percona 5.5 source package..."
- FILE_NAME=percona-server-${percona_5_5_version}.tar.gz
- if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
- DOWN_ADDR_PERCONA=${mirrorLink}
- DOWN_ADDR_PERCONA_2=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona_5_5_version}/source/tarball
- PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- [ -z "${PERCONA_TAR_MD5}" ] && { DOWN_ADDR_PERCONA=${mirrorLink}; PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}'); }
- else
- DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona_5_5_version}/source/tarball
- PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
- fi
- fi
- tryDlCount=0
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
- wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME};sleep 1
- let "tryDlCount++"
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
- done
- if [ "${tryDlCount}" == '6' ]; then
- echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
- kill -9 $$
- else
- echo "[${CMSG}${FILE_NAME}${CEND}] found."
- fi
- ;;
- 10)
- # AliSQL 5.6
- DOWN_ADDR_ALISQL=$mirrorLink
- echo "Download AliSQL 5.6 source package..."
- FILE_NAME=alisql-${alisql_5_6_version}.tar.gz
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME}
- wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME}.md5
- ALISQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
- while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${ALISQL_TAR_MD5}" ];do
- wget -4c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME};sleep 1
- [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${ALISQL_TAR_MD5}" ] && break || continue
- done
- ;;
- esac
- fi
- # PHP
- if [ "${PHP_yn}" == 'y' ]; then
- # php 5.3 5.4 5.5 5.6 5.7
- echo "PHP common..."
- src_url=http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${libiconv_version}.tar.gz && Download_src
- src_url=https://curl.haxx.se/download/curl-${curl_version}.tar.gz && Download_src
- src_url=http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/${libmcrypt_version}/libmcrypt-${libmcrypt_version}.tar.gz && Download_src
- src_url=http://downloads.sourceforge.net/project/mhash/mhash/${mhash_version}/mhash-${mhash_version}.tar.gz && Download_src
- src_url=http://downloads.sourceforge.net/project/mcrypt/MCrypt/${mcrypt_version}/mcrypt-${mcrypt_version}.tar.gz && Download_src
- src_url=${mirrorLink}/libiconv-glibc-2.16.patch && Download_src
- case "${PHP_version}" in
- 1)
- # php 5.3
- src_url=${mirrorLink}/debian_patches_disable_SSLv2_for_openssl_1_0_0.patch && Download_src
- src_url=${mirrorLink}/php5.3patch && Download_src
- # Use the special ssl for php5.3
- if [ "${Debian_version}" == '8' -o "${Ubuntu_version}" == "16" ]; then
- if [ ! -e "/usr/local/openssl/lib/libcrypto.a" ]; then
- src_url=${mirrorLink}/openssl-1.0.0s.tar.gz && Download_src
- fi
- fi
- src_url=http://www.php.net/distributions/php-${php_3_version}.tar.gz && Download_src
- src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
- ;;
- 2)
- src_url=http://www.php.net/distributions/php-${php_4_version}.tar.gz && Download_src
- src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
- ;;
- 3)
- src_url=http://www.php.net/distributions/php-${php_5_version}.tar.gz && Download_src
- src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
- ;;
- 4)
- src_url=http://www.php.net/distributions/php-${php_6_version}.tar.gz && Download_src
- ;;
- 5)
- src_url=http://www.php.net/distributions/php-${php_7_version}.tar.gz && Download_src
- ;;
- esac
- fi
- # PHP OPCache
- case "${PHP_cache}" in
- 1)
- if [[ "$PHP_version" =~ ^[1,2]$ ]]; then
- # php 5.3 5.4
- echo "Download Zend OPCache..."
- src_url=https://pecl.php.net/get/zendopcache-${zendopcache_version}.tgz && Download_src
- fi
- ;;
- 2)
- if [[ "$PHP_version" =~ ^[1-4]$ ]]; then
- # php 5.3 5.4 5.5 5.6
- echo "Download xcache..."
- src_url=http://xcache.lighttpd.net/pub/Releases/${xcache_version}/xcache-${xcache_version}.tar.gz && Download_src
- fi
- ;;
- 3)
- # php 5.3 5.4 5.5 5.6 7.0
- echo "Download apcu..."
- if [ "${PHP_version}" != '5' ]; then
- src_url=http://pecl.php.net/get/apcu-${apcu_version}.tgz && Download_src
- else
- src_url=http://pecl.php.net/get/apcu-${apcu_for_php7_version}.tgz && Download_src
- fi
- ;;
- 4)
- # php 5.3 5.4
- if [ "${PHP_version}" == '1' ]; then
- echo "Download eaccelerator 0.9..."
- src_url=https://github.com/downloads/eaccelerator/eaccelerator/eaccelerator-${eaccelerator_version}.tar.bz2 && Download_src
- elif [ "${PHP_version}" == '2' ]; then
- echo "Download eaccelerator 1.0 dev..."
- src_url=https://github.com/eaccelerator/eaccelerator/tarball/master && Download_src
- fi
- ;;
- esac
- # Zend Guard Loader
- if [ "${ZendGuardLoader_yn}" == 'y' -a "${armPlatform}" != 'y' ]; then
- case "${PHP_version}" in
- 4)
- if [ "${OS_BIT}" == "64" ]; then
- # 64 bit
- echo "Download zend loader for php 5.6..."
- src_url=${mirrorLink}/zend-loader-php5.6-linux-x86_64.tar.gz && Download_src
- else
- # 32 bit
- echo "Download zend loader for php 5.6..."
- src_url=${mirrorLink}/zend-loader-php5.6-linux-i386.tar.gz && Download_src
- fi
- ;;
- 3)
- if [ "${OS_BIT}" == "64" ]; then
- # 64 bit
- echo "Download zend loader for php 5.5..."
- src_url=${mirrorLink}/zend-loader-php5.5-linux-x86_64.tar.gz && Download_src
- else
- # 32 bit
- echo "Download zend loader for php 5.5..."
- src_url=${mirrorLink}/zend-loader-php5.5-linux-i386.tar.gz && Download_src
- fi
- ;;
- 2)
- if [ "${OS_BIT}" == "64" ]; then
- # 64 bit
- echo "Download zend loader for php 5.4..."
- src_url=${mirrorLink}/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-x86_64.tar.gz && Download_src
- else
- # 32 bit
- echo "Download zend loader for php 5.4..."
- src_url=${mirrorLink}/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-i386.tar.gz && Download_src
- fi
- ;;
- 1)
- if [ "${OS_BIT}" == "64" ]; then
- # 64 bit
- echo "Download zend loader for php 5.3..."
- src_url=${mirrorLink}/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz && Download_src
- else
- # 32 bit
- echo "Download zend loader for php 5.3..."
- src_url=${mirrorLink}/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz && Download_src
- fi
- ;;
- esac
- fi
- if [ "${ionCube_yn}" == 'y' ]; then
- echo "Download ioncube..."
- if [ "${OS_BIT}" == '64' ]; then
- src_url=http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz && Download_src
- else
- if [ "${TARGET_ARCH}" == "armv7" ]; then
- src_url=http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_armv7l.tar.gz && Download_src
- else
- src_url=http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz && Download_src
- fi
- fi
- fi
- if [ "${Magick_yn}" == 'y' ]; then
- if [ "${Magick}" == '1' ]; then
- echo "Download ImageMagick..."
- src_url=${mirrorLink}/ImageMagick-${ImageMagick_version}.tar.gz && Download_src
- if [ "${PHP_version}" == '1' ]; then
- echo "Download image for php 5.3..."
- src_url=https://pecl.php.net/get/imagick-${imagick_for_php53_version}.tgz && Download_src
- else
- echo "Download imagick..."
- src_url=http://pecl.php.net/get/imagick-${imagick_version}.tgz && Download_src
- fi
- else
- echo "Download graphicsmagick..."
- src_url=http://downloads.sourceforge.net/project/graphicsmagick/graphicsmagick/${GraphicsMagick_version}/GraphicsMagick-${GraphicsMagick_version}.tar.gz && Download_src
- if [ "${PHP_version}" == '5' ]; then
- echo "Download gmagick for php 7.x..."
- src_url=https://pecl.php.net/get/gmagick-${gmagick_for_php7_version}.tgz && Download_src
- else
- echo "Download gmagick for php..."
- src_url=http://pecl.php.net/get/gmagick-${gmagick_version}.tgz && Download_src
- fi
- fi
- fi
- if [ "${FTP_yn}" == 'y' ]; then
- echo "Download pureftpd..."
- src_url=http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-${pureftpd_version}.tar.gz && Download_src
- fi
- if [ "${phpMyAdmin_yn}" == 'y' ]; then
- echo "Download phpMyAdmin..."
- src_url=https://files.phpmyadmin.net/phpMyAdmin/${phpMyAdmin_version}/phpMyAdmin-${phpMyAdmin_version}-all-languages.tar.gz && Download_src
- fi
- if [ "${redis_yn}" == 'y' ]; then
- echo "Download redis..."
- src_url=http://download.redis.io/releases/redis-${redis_version}.tar.gz && Download_src
- if [ "${OS}" == "CentOS" ]; then
- echo "Download start-stop-daemon.c for CentOS..."
- src_url=${mirrorLink}/start-stop-daemon.c && Download_src
- fi
- # redis addon
- if [ "${PHP_version}" == '5' ]; then
- echo "Download redis pecl for php 7.x..."
- src_url=http://pecl.php.net/get/redis-${redis_pecl_for_php7_version}.tgz && Download_src
- else
- echo "Download redis pecl..."
- src_url=http://pecl.php.net/get/redis-${redis_pecl_version}.tgz && Download_src
- fi
- fi
- if [ "${memcached_yn}" == 'y' ]; then
- echo "Download memcached..."
- src_url=http://www.memcached.org/files/memcached-${memcached_version}.tar.gz && Download_src
- if [ "${PHP_version}" == '5' ]; then
- echo "Download pecl memcache for php 7.x..."
- # src_url=https://codeload.github.com/websupport-sk/pecl-memcache/zip/php7 && Download_src
- src_url=${mirrorLink}/pecl-memcache-php7.tgz && Download_src
- echo "Download php-memcached for php 7.x..."
- src_url=${mirrorLink}/php-memcached-php7.tgz && Download_src
- else
- echo "Download pecl memcache for php..."
- src_url=http://pecl.php.net/get/memcache-${memcache_pecl_version}.tgz && Download_src
- echo "Download php-memcached for php..."
- src_url=http://pecl.php.net/get/memcached-${memcached_pecl_version}.tgz && Download_src
- fi
- echo "Download libmemcached..."
- src_url=https://launchpad.net/libmemcached/1.0/${libmemcached_version}/+download/libmemcached-${libmemcached_version}.tar.gz && Download_src
- fi
- if [[ $Nginx_version =~ ^[1-3]$ ]] || [ "$DB_yn" == 'y' -a "$DB_version" != '10' ]; then
- echo "Download jemalloc..."
- src_url=${mirrorLink}/jemalloc-${jemalloc_version}.tar.bz2 && Download_src
- fi
- # others
- if [ "${downloadDepsSrc}" == '1' ]; then
- if [ "${OS}" == "CentOS" ]; then
- echo "Download tmux for CentOS..."
- src_url=${mirrorLink}/libevent-${libevent_version}.tar.gz && Download_src
- src_url=https://github.com/tmux/tmux/releases/download/${tmux_version}/tmux-${tmux_version}.tar.gz && Download_src
- echo "Download htop for CentOS..."
- src_url=http://hisham.hm/htop/releases/${htop_version}/htop-${htop_version}.tar.gz && Download_src
- fi
- if [[ "${Ubuntu_version}" =~ ^14$|^15$ ]]; then
- echo "Download bison for Ubuntu..."
- src_url=http://ftp.gnu.org/gnu/bison/bison-${bison_version}.tar.gz && Download_src
- fi
- fi
- popd
- }
|