check_download.sh 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718
  1. #!/bin/bash
  2. # Author: Alpha Eva <kaneawk AT gmail.com>
  3. #
  4. # Notes: OneinStack for CentOS/RadHat 5+ Debian 6+ and Ubuntu 12+
  5. #
  6. # Project home page:
  7. # https://oneinstack.com
  8. # https://github.com/lj2007331/oneinstack
  9. checkDownload() {
  10. mirrorLink=http://mirrors.linuxeye.com/oneinstack/src
  11. pushd ${oneinstack_dir}/src
  12. # Web
  13. if [ "${Web_yn}" == 'y' ]; then
  14. echo "Download openSSL..."
  15. src_url=https://www.openssl.org/source/openssl-${openssl_version}.tar.gz && Download_src
  16. case "${Nginx_version}" in
  17. 1)
  18. echo "Download nginx..."
  19. src_url=http://nginx.org/download/nginx-${nginx_version}.tar.gz && Download_src
  20. ;;
  21. 2)
  22. echo "Download tengine..."
  23. src_url=http://tengine.taobao.org/download/tengine-${tengine_version}.tar.gz && Download_src
  24. ;;
  25. 3)
  26. echo "Download openresty..."
  27. src_url=https://openresty.org/download/openresty-${openresty_version}.tar.gz && Download_src
  28. ;;
  29. esac
  30. if [[ "${Nginx_version}" =~ ^[1-3]$ || ${Apache_version} == '1' ]]; then
  31. echo "Download pcre..."
  32. src_url=${mirrorLink}/pcre-${pcre_version}.tar.gz && Download_src
  33. fi
  34. # apache
  35. if [ "${Apache_version}" == '1' ]; then
  36. echo "Download apache 2.4..."
  37. src_url=http://archive.apache.org/dist/apr/apr-${apr_version}.tar.gz && Download_src
  38. src_url=http://archive.apache.org/dist/apr/apr-util-${apr_util_version}.tar.gz && Download_src
  39. src_url=http://mirrors.linuxeye.com/apache/httpd/nghttp2-${nghttp2_version}.tar.gz && Download_src
  40. src_url=http://mirrors.linuxeye.com/apache/httpd/httpd-${apache24_version}.tar.gz && Download_src
  41. fi
  42. if [ "${Apache_version}" == '2' ]; then
  43. echo "Download apache 2.2..."
  44. src_url=http://mirrors.linuxeye.com/apache/httpd/httpd-${apache22_version}.tar.gz && Download_src
  45. echo "Download mod_remoteip.c for apache 2.2..."
  46. src_url=${mirrorLink}/mod_remoteip.c && Download_src
  47. fi
  48. # tomcat
  49. case "${Tomcat_version}" in
  50. 1)
  51. echo "Download tomcat 8..."
  52. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat8_version}/apache-tomcat-${tomcat8_version}.tar.gz && Download_src
  53. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat8_version}/catalina-jmx-remote.jar && Download_src
  54. ;;
  55. 2)
  56. echo "Download tomcat 7..."
  57. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat7_version}/apache-tomcat-${tomcat7_version}.tar.gz && Download_src
  58. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat7_version}/catalina-jmx-remote.jar && Download_src
  59. ;;
  60. 3)
  61. echo "Download tomcat 6..."
  62. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat6_version}/apache-tomcat-${tomcat6_version}.tar.gz && Download_src
  63. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat6_version}/catalina-jmx-remote.jar && Download_src
  64. ;;
  65. esac
  66. if [[ "${JDK_version}" =~ ^[1-3]$ ]]; then
  67. case "${JDK_version}" in
  68. 1)
  69. echo "Download JDK 1.8..."
  70. JDK_FILE="jdk-$(echo ${jdk18_version} | awk -F. '{print $2}')u$(echo ${jdk18_version} | awk -F_ '{print $NF}')-linux-${SYS_BIG_FLAG}.tar.gz"
  71. ;;
  72. 2)
  73. echo "Download JDK 1.7..."
  74. JDK_FILE="jdk-$(echo ${jdk17_version} | awk -F. '{print $2}')u$(echo ${jdk17_version} | awk -F_ '{print $NF}')-linux-${SYS_BIG_FLAG}.tar.gz"
  75. ;;
  76. 3)
  77. echo "Download JDK 1.6..."
  78. JDK_FILE="jdk-$(echo ${jdk16_version} | awk -F. '{print $2}')u$(echo ${jdk16_version} | awk -F_ '{print $NF}')-linux-${SYS_BIG_FLAG}.bin"
  79. ;;
  80. esac
  81. echo "Download apr..."
  82. src_url=http://archive.apache.org/dist/apr/apr-${apr_version}.tar.gz && Download_src
  83. # start download...
  84. src_url=http://mirrors.linuxeye.com/jdk/${JDK_FILE} && Download_src
  85. fi
  86. fi
  87. if [ "${DB_yn}" == 'y' ]; then
  88. if [[ "${DB_version}" =~ ^[1,4,7]$ ]] && [ "${dbInstallMethods}" == "2" ]; then
  89. echo "Download boost..."
  90. [ "${IPADDR_COUNTRY}"x == "CN"x ] && DOWN_ADDR_BOOST=${mirrorLink} || DOWN_ADDR_BOOST=http://downloads.sourceforge.net/project/boost/boost/${boost_version}
  91. boostVersion2=$(echo ${boost_version} | awk -F. '{print $1}')_$(echo ${boost_version} | awk -F. '{print $2}')_$(echo ${boost_version} | awk -F. '{print $3}')
  92. src_url=${DOWN_ADDR_BOOST}/boost_${boostVersion2}.tar.gz && Download_src
  93. fi
  94. case "${DB_version}" in
  95. 1)
  96. # MySQL 5.7
  97. if [ "${IPADDR_COUNTRY}"x == "CN"x -a "${IPADDR_ISP}" == "aliyun" -a "$(../include/check_port.py aliyun-oss.linuxeye.com 80)" == "True" ]; then
  98. DOWN_ADDR_MYSQL=http://aliyun-oss.linuxeye.com/mysql/MySQL-5.7
  99. else
  100. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  101. if [ "$(../include/check_port.py mirrors.tuna.tsinghua.edu.cn 443)" == "True" ]; then
  102. DOWN_ADDR_MYSQL=https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7
  103. else
  104. DOWN_ADDR_MYSQL=http://mirrors.sohu.com/mysql/MySQL-5.7
  105. DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
  106. fi
  107. else
  108. if [ "$(../include/check_port.py cdn.mysql.com 80)" == "True" ]; then
  109. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.7
  110. else
  111. DOWN_ADDR_MYSQL=http://mysql.he.net/Downloads/MySQL-5.7
  112. DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
  113. fi
  114. fi
  115. fi
  116. if [ "${dbInstallMethods}" == '1' ]; then
  117. echo "Download MySQL 5.7 binary package..."
  118. FILE_NAME=mysql-${mysql57_version}-linux-glibc2.5-${SYS_BIT_b}.tar.gz
  119. elif [ "${dbInstallMethods}" == '2' ]; then
  120. echo "Download MySQL 5.7 source package..."
  121. FILE_NAME=mysql-${mysql57_version}.tar.gz
  122. fi
  123. # start download
  124. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}
  125. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5
  126. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  127. # verifying download
  128. tryDlCount=0
  129. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  130. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  131. let "tryDlCount++"
  132. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  133. done
  134. if [ "${tryDlCount}" == '6' ]; then
  135. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  136. kill -9 $$
  137. else
  138. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  139. fi
  140. ;;
  141. 2)
  142. # MySQL 5.6
  143. if [ "${IPADDR_COUNTRY}"x == "CN"x -a "${IPADDR_ISP}" == "aliyun" -a "$(../include/check_port.py aliyun-oss.linuxeye.com 80)" == "True" ]; then
  144. DOWN_ADDR_MYSQL=http://aliyun-oss.linuxeye.com/mysql/MySQL-5.6
  145. else
  146. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  147. if [ "$(../include/check_port.py mirrors.tuna.tsinghua.edu.cn 443)" == "True" ]; then
  148. DOWN_ADDR_MYSQL=https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.6
  149. else
  150. DOWN_ADDR_MYSQL=http://mirrors.sohu.com/mysql/MySQL-5.6
  151. DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
  152. fi
  153. else
  154. if [ "$(../include/check_port.py cdn.mysql.com 80)" == "True" ]; then
  155. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.6
  156. else
  157. DOWN_ADDR_MYSQL=http://mysql.he.net/Downloads/MySQL-5.6
  158. DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
  159. fi
  160. fi
  161. fi
  162. if [ "${dbInstallMethods}" == '1' ]; then
  163. echo "Download MySQL 5.6 binary package..."
  164. FILE_NAME=mysql-${mysql56_version}-linux-glibc2.5-${SYS_BIT_b}.tar.gz
  165. elif [ "${dbInstallMethods}" == '2' ]; then
  166. echo "Download MySQL 5.6 source package..."
  167. FILE_NAME=mysql-${mysql56_version}.tar.gz
  168. fi
  169. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}
  170. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5
  171. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  172. tryDlCount=0
  173. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  174. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  175. let "tryDlCount++"
  176. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  177. done
  178. if [ "${tryDlCount}" == '6' ]; then
  179. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  180. kill -9 $$
  181. else
  182. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  183. fi
  184. ;;
  185. 3)
  186. # MySQL 5.5
  187. if [ "${IPADDR_COUNTRY}"x == "CN"x -a "${IPADDR_ISP}" == "aliyun" -a "$(../include/check_port.py aliyun-oss.linuxeye.com 80)" == "True" ]; then
  188. DOWN_ADDR_MYSQL=http://aliyun-oss.linuxeye.com/mysql/MySQL-5.5
  189. else
  190. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  191. if [ "$(../include/check_port.py mirrors.tuna.tsinghua.edu.cn 443)" == "True" ]; then
  192. DOWN_ADDR_MYSQL=https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.5
  193. else
  194. DOWN_ADDR_MYSQL=http://mirrors.sohu.com/mysql/MySQL-5.5
  195. DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
  196. fi
  197. else
  198. if [ "$(../include/check_port.py cdn.mysql.com 80)" == "True" ]; then
  199. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.5
  200. else
  201. DOWN_ADDR_MYSQL=http://mysql.he.net/Downloads/MySQL-5.5
  202. DOWN_ADDR_MYSQL_BK=${DOWN_ADDR_MYSQL}
  203. fi
  204. fi
  205. fi
  206. if [ "${dbInstallMethods}" == '1' ]; then
  207. echo "Download MySQL 5.5 binary package..."
  208. FILE_NAME=mysql-${mysql55_version}-linux2.6-${SYS_BIT_b}.tar.gz
  209. elif [ "${dbInstallMethods}" == '2' ]; then
  210. echo "Download MySQL 5.5 source package..."
  211. FILE_NAME=mysql-${mysql55_version}.tar.gz
  212. src_url=${mirrorLink}/mysql-5.5-fix-arm-client_plugin.patch && Download_src
  213. fi
  214. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}
  215. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5
  216. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  217. tryDlCount=0
  218. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  219. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  220. let "tryDlCount++"
  221. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  222. done
  223. if [ "${tryDlCount}" == '6' ]; then
  224. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  225. kill -9 $$
  226. else
  227. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  228. fi
  229. ;;
  230. 4)
  231. # MariaDB 10.1
  232. if [ "${dbInstallMethods}" == '1' ]; then
  233. echo "Download MariaDB 10.1 binary package..."
  234. FILE_NAME=mariadb-${mariadb101_version}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  235. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  236. DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb101_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  237. MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  238. [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb101_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
  239. else
  240. DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb101_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  241. MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb101_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  242. fi
  243. elif [ "${dbInstallMethods}" == '2' ]; then
  244. echo "Download MariaDB 10.1 source package..."
  245. FILE_NAME=mariadb-${mariadb101_version}.tar.gz
  246. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  247. DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb101_version}/source
  248. MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  249. [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb101_version}/source; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
  250. else
  251. DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb101_version}/source
  252. MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb101_version}/source/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  253. fi
  254. fi
  255. tryDlCount=0
  256. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  257. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB}/${FILE_NAME};sleep 1
  258. let "tryDlCount++"
  259. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  260. done
  261. if [ "${tryDlCount}" == '6' ]; then
  262. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  263. kill -9 $$
  264. else
  265. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  266. fi
  267. ;;
  268. 5)
  269. # MariaDB 10.0
  270. if [ "${dbInstallMethods}" == '1' ]; then
  271. echo "Download MariaDB 10.0 binary package..."
  272. FILE_NAME=mariadb-${mariadb100_version}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  273. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  274. DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb100_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  275. MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  276. [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb100_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
  277. else
  278. DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb100_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  279. MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb100_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  280. fi
  281. elif [ "${dbInstallMethods}" == '2' ]; then
  282. echo "Download MariaDB 10.0 source package..."
  283. FILE_NAME=mariadb-${mariadb100_version}.tar.gz
  284. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  285. DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb100_version}/source
  286. MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  287. [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb100_version}/source; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
  288. else
  289. DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb100_version}/source
  290. MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb100_version}/source/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  291. fi
  292. fi
  293. tryDlCount=0
  294. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  295. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB}/${FILE_NAME};sleep 1
  296. let "tryDlCount++"
  297. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  298. done
  299. if [ "${tryDlCount}" == '6' ]; then
  300. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  301. kill -9 $$
  302. else
  303. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  304. fi
  305. ;;
  306. 6)
  307. # MariaDB 5.5
  308. if [ "${dbInstallMethods}" == '1' ]; then
  309. echo "Download MariaDB 5.5 binary package..."
  310. FILE_NAME=mariadb-${mariadb55_version}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  311. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  312. DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb55_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  313. MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  314. [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb55_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
  315. else
  316. DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb55_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  317. MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb55_version}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  318. fi
  319. elif [ "${dbInstallMethods}" == '2' ]; then
  320. echo "Download MariaDB 5.5 source package..."
  321. FILE_NAME=mariadb-${mariadb55_version}.tar.gz
  322. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  323. DOWN_ADDR_MARIADB=https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb55_version}/source
  324. MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  325. [ -z "${MARAIDB_TAR_MD5}" ] && { DOWN_ADDR_MARIADB=https://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb55_version}/source; MARAIDB_TAR_MD5=$(curl -Lk ${DOWN_ADDR_MARIADB}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}'); }
  326. else
  327. DOWN_ADDR_MARIADB=https://downloads.mariadb.org/interstitial/mariadb-${mariadb55_version}/source
  328. MARAIDB_TAR_MD5=$(curl -Lk http://archive.mariadb.org/mariadb-${mariadb55_version}/source/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  329. fi
  330. fi
  331. tryDlCount=0
  332. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  333. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB}/${FILE_NAME};sleep 1
  334. let "tryDlCount++"
  335. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  336. done
  337. if [ "${tryDlCount}" == '6' ]; then
  338. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  339. kill -9 $$
  340. else
  341. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  342. fi
  343. ;;
  344. 7)
  345. # Precona 5.7
  346. if [ "${dbInstallMethods}" == '1' ]; then
  347. echo "Download Percona 5.7 binary package..."
  348. FILE_NAME=Percona-Server-${percona57_version}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  349. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona57_version}/binary/tarball
  350. PERCONA_TAR_MD5=$(curl -Lk https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona57_version}/binary/tarball/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  351. elif [ "${dbInstallMethods}" == '2' ]; then
  352. echo "Download Percona 5.7 source package..."
  353. FILE_NAME=percona-server-${percona57_version}.tar.gz
  354. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  355. DOWN_ADDR_PERCONA=${mirrorLink}
  356. DOWN_ADDR_PERCONA_2=https://www.percona.com/downloads/Percona-Server-5.7/source/tarball
  357. PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  358. [ -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}'); }
  359. else
  360. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona57_version}/source/tarball
  361. PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  362. fi
  363. fi
  364. tryDlCount=0
  365. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  366. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME};sleep 1
  367. let "tryDlCount++"
  368. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  369. done
  370. if [ "${tryDlCount}" == '6' ]; then
  371. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  372. kill -9 $$
  373. else
  374. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  375. fi
  376. ;;
  377. 8)
  378. # Precona 5.6
  379. if [ "${dbInstallMethods}" == '1' ]; then
  380. echo "Download Percona 5.6 binary package..."
  381. perconaVerStr1=$(echo ${percona56_version} | sed "s@-@-rel@")
  382. FILE_NAME=Percona-Server-${perconaVerStr1}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  383. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona56_version}/binary/tarball
  384. PERCONA_TAR_MD5=$(curl -Lk https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona56_version}/binary/tarball/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  385. elif [ "${dbInstallMethods}" == '2' ]; then
  386. echo "Download Percona 5.6 source package..."
  387. FILE_NAME=percona-server-${percona56_version}.tar.gz
  388. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  389. DOWN_ADDR_PERCONA=${mirrorLink}
  390. DOWN_ADDR_PERCONA_2=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona56_version}/source/tarball
  391. PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  392. [ -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}'); }
  393. else
  394. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona56_version}/source/tarball
  395. PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  396. fi
  397. fi
  398. tryDlCount=0
  399. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  400. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME};sleep 1
  401. let "tryDlCount++"
  402. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  403. done
  404. if [ "${tryDlCount}" == '6' ]; then
  405. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  406. kill -9 $$
  407. else
  408. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  409. fi
  410. ;;
  411. 9)
  412. # Percona 5.5
  413. if [ "${dbInstallMethods}" == '1' ]; then
  414. echo "Download Percona 5.5 binary package..."
  415. perconaVerStr1=$(echo ${percona55_version} | sed "s@-@-rel@")
  416. FILE_NAME=Percona-Server-${perconaVerStr1}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  417. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona55_version}/binary/tarball
  418. PERCONA_TAR_MD5=$(curl -Lk https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona55_version}/binary/tarball/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  419. elif [ "${dbInstallMethods}" == '2' ]; then
  420. echo "Download Percona 5.5 source package..."
  421. FILE_NAME=percona-server-${percona55_version}.tar.gz
  422. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  423. DOWN_ADDR_PERCONA=${mirrorLink}
  424. DOWN_ADDR_PERCONA_2=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona55_version}/source/tarball
  425. PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA_2}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  426. [ -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}'); }
  427. else
  428. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona55_version}/source/tarball
  429. PERCONA_TAR_MD5=$(curl -Lk ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  430. fi
  431. fi
  432. tryDlCount=0
  433. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  434. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME};sleep 1
  435. let "tryDlCount++"
  436. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  437. done
  438. if [ "${tryDlCount}" == '6' ]; then
  439. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  440. kill -9 $$
  441. else
  442. echo "[${CMSG}${FILE_NAME}${CEND}] found."
  443. fi
  444. ;;
  445. 10)
  446. # AliSQL 5.6
  447. DOWN_ADDR_ALISQL=$mirrorLink
  448. echo "Download AliSQL 5.6 source package..."
  449. FILE_NAME=alisql-${alisql56_version}.tar.gz
  450. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME}
  451. wget --tries=6 -c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME}.md5
  452. ALISQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  453. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${ALISQL_TAR_MD5}" ];do
  454. wget -4c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME};sleep 1
  455. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${ALISQL_TAR_MD5}" ] && break || continue
  456. done
  457. ;;
  458. esac
  459. fi
  460. # PHP
  461. if [ "${PHP_yn}" == 'y' ]; then
  462. # php 5.3 5.4 5.5 5.6 5.7
  463. echo "PHP common..."
  464. src_url=http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${libiconv_version}.tar.gz && Download_src
  465. src_url=https://curl.haxx.se/download/curl-${curl_version}.tar.gz && Download_src
  466. src_url=http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/${libmcrypt_version}/libmcrypt-${libmcrypt_version}.tar.gz && Download_src
  467. src_url=http://downloads.sourceforge.net/project/mhash/mhash/${mhash_version}/mhash-${mhash_version}.tar.gz && Download_src
  468. src_url=http://downloads.sourceforge.net/project/mcrypt/MCrypt/${mcrypt_version}/mcrypt-${mcrypt_version}.tar.gz && Download_src
  469. src_url=${mirrorLink}/libiconv-glibc-2.16.patch && Download_src
  470. case "${PHP_version}" in
  471. 1)
  472. # php 5.3
  473. src_url=${mirrorLink}/debian_patches_disable_SSLv2_for_openssl_1_0_0.patch && Download_src
  474. src_url=${mirrorLink}/php5.3patch && Download_src
  475. # Use the special ssl for php5.3
  476. if [ "${Debian_version}" == '8' -o "${Ubuntu_version}" == "16" ]; then
  477. if [ ! -e "/usr/local/openssl100s/lib/libcrypto.a" ]; then
  478. src_url=${mirrorLink}/openssl-1.0.0s.tar.gz && Download_src
  479. src_url=${mirrorLink}/curl-7.35.0.tar.gz && Download_src
  480. fi
  481. fi
  482. src_url=http://www.php.net/distributions/php-${php53_version}.tar.gz && Download_src
  483. src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
  484. ;;
  485. 2)
  486. src_url=http://www.php.net/distributions/php-${php54_version}.tar.gz && Download_src
  487. src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
  488. ;;
  489. 3)
  490. src_url=http://www.php.net/distributions/php-${php55_version}.tar.gz && Download_src
  491. src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
  492. ;;
  493. 4)
  494. src_url=http://www.php.net/distributions/php-${php56_version}.tar.gz && Download_src
  495. ;;
  496. 5)
  497. src_url=http://www.php.net/distributions/php-${php70_version}.tar.gz && Download_src
  498. ;;
  499. 6)
  500. src_url=http://www.php.net/distributions/php-${php71_version}.tar.gz && Download_src
  501. ;;
  502. esac
  503. fi
  504. # PHP OPCache
  505. case "${PHP_cache}" in
  506. 1)
  507. if [[ "$PHP_version" =~ ^[1,2]$ ]]; then
  508. # php 5.3 5.4
  509. echo "Download Zend OPCache..."
  510. src_url=https://pecl.php.net/get/zendopcache-${zendopcache_version}.tgz && Download_src
  511. fi
  512. ;;
  513. 2)
  514. if [[ "$PHP_version" =~ ^[1-4]$ ]]; then
  515. # php 5.3 5.4 5.5 5.6
  516. echo "Download xcache..."
  517. src_url=http://xcache.lighttpd.net/pub/Releases/${xcache_version}/xcache-${xcache_version}.tar.gz && Download_src
  518. fi
  519. ;;
  520. 3)
  521. # php 5.3 5.4 5.5 5.6 7.0 7.1
  522. echo "Download apcu..."
  523. if [[ "$PHP_version" =~ ^[1-4]$ ]]; then
  524. src_url=http://pecl.php.net/get/apcu-${apcu_version}.tgz && Download_src
  525. else
  526. src_url=http://pecl.php.net/get/apcu-${apcu_for_php7_version}.tgz && Download_src
  527. fi
  528. ;;
  529. 4)
  530. # php 5.3 5.4
  531. if [ "${PHP_version}" == '1' ]; then
  532. echo "Download eaccelerator 0.9..."
  533. src_url=https://github.com/downloads/eaccelerator/eaccelerator/eaccelerator-${eaccelerator_version}.tar.bz2 && Download_src
  534. elif [ "${PHP_version}" == '2' ]; then
  535. echo "Download eaccelerator 1.0 dev..."
  536. src_url=https://github.com/eaccelerator/eaccelerator/tarball/master && Download_src
  537. fi
  538. ;;
  539. esac
  540. # Zend Guard Loader
  541. if [ "${ZendGuardLoader_yn}" == 'y' -a "${armPlatform}" != 'y' ]; then
  542. case "${PHP_version}" in
  543. 4)
  544. if [ "${OS_BIT}" == "64" ]; then
  545. # 64 bit
  546. echo "Download zend loader for php 5.6..."
  547. src_url=${mirrorLink}/zend-loader-php5.6-linux-x86_64.tar.gz && Download_src
  548. else
  549. # 32 bit
  550. echo "Download zend loader for php 5.6..."
  551. src_url=${mirrorLink}/zend-loader-php5.6-linux-i386.tar.gz && Download_src
  552. fi
  553. ;;
  554. 3)
  555. if [ "${OS_BIT}" == "64" ]; then
  556. # 64 bit
  557. echo "Download zend loader for php 5.5..."
  558. src_url=${mirrorLink}/zend-loader-php5.5-linux-x86_64.tar.gz && Download_src
  559. else
  560. # 32 bit
  561. echo "Download zend loader for php 5.5..."
  562. src_url=${mirrorLink}/zend-loader-php5.5-linux-i386.tar.gz && Download_src
  563. fi
  564. ;;
  565. 2)
  566. if [ "${OS_BIT}" == "64" ]; then
  567. # 64 bit
  568. echo "Download zend loader for php 5.4..."
  569. src_url=${mirrorLink}/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-x86_64.tar.gz && Download_src
  570. else
  571. # 32 bit
  572. echo "Download zend loader for php 5.4..."
  573. src_url=${mirrorLink}/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-i386.tar.gz && Download_src
  574. fi
  575. ;;
  576. 1)
  577. if [ "${OS_BIT}" == "64" ]; then
  578. # 64 bit
  579. echo "Download zend loader for php 5.3..."
  580. src_url=${mirrorLink}/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz && Download_src
  581. else
  582. # 32 bit
  583. echo "Download zend loader for php 5.3..."
  584. src_url=${mirrorLink}/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz && Download_src
  585. fi
  586. ;;
  587. esac
  588. fi
  589. if [ "${ionCube_yn}" == 'y' ]; then
  590. echo "Download ioncube..."
  591. if [ "${OS_BIT}" == '64' ]; then
  592. src_url=http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz && Download_src
  593. else
  594. if [ "${TARGET_ARCH}" == "armv7" ]; then
  595. src_url=http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_armv7l.tar.gz && Download_src
  596. else
  597. src_url=http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz && Download_src
  598. fi
  599. fi
  600. fi
  601. if [ "${Magick_yn}" == 'y' ]; then
  602. if [ "${Magick}" == '1' ]; then
  603. echo "Download ImageMagick..."
  604. src_url=${mirrorLink}/ImageMagick-${ImageMagick_version}.tar.gz && Download_src
  605. if [ "${PHP_version}" == '1' ]; then
  606. echo "Download image for php 5.3..."
  607. src_url=https://pecl.php.net/get/imagick-${imagick_for_php53_version}.tgz && Download_src
  608. else
  609. echo "Download imagick..."
  610. src_url=http://pecl.php.net/get/imagick-${imagick_version}.tgz && Download_src
  611. fi
  612. else
  613. echo "Download graphicsmagick..."
  614. src_url=http://downloads.sourceforge.net/project/graphicsmagick/graphicsmagick/${GraphicsMagick_version}/GraphicsMagick-${GraphicsMagick_version}.tar.gz && Download_src
  615. if [[ "$PHP_version" =~ ^[5-6]$ ]]; then
  616. echo "Download gmagick for php 7.x..."
  617. src_url=https://pecl.php.net/get/gmagick-${gmagick_for_php7_version}.tgz && Download_src
  618. else
  619. echo "Download gmagick for php..."
  620. src_url=http://pecl.php.net/get/gmagick-${gmagick_version}.tgz && Download_src
  621. fi
  622. fi
  623. fi
  624. if [ "${FTP_yn}" == 'y' ]; then
  625. echo "Download pureftpd..."
  626. src_url=https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-${pureftpd_version}.tar.gz && Download_src
  627. fi
  628. if [ "${phpMyAdmin_yn}" == 'y' ]; then
  629. echo "Download phpMyAdmin..."
  630. src_url=https://files.phpmyadmin.net/phpMyAdmin/${phpMyAdmin_version}/phpMyAdmin-${phpMyAdmin_version}-all-languages.tar.gz && Download_src
  631. fi
  632. if [ "${redis_yn}" == 'y' ]; then
  633. echo "Download redis..."
  634. src_url=http://download.redis.io/releases/redis-${redis_version}.tar.gz && Download_src
  635. if [ "${OS}" == "CentOS" ]; then
  636. echo "Download start-stop-daemon.c for CentOS..."
  637. src_url=${mirrorLink}/start-stop-daemon.c && Download_src
  638. fi
  639. # redis addon
  640. if [[ "$PHP_version" =~ ^[5-6]$ ]]; then
  641. echo "Download redis pecl for php 7.x..."
  642. src_url=http://pecl.php.net/get/redis-${redis_pecl_for_php7_version}.tgz && Download_src
  643. else
  644. echo "Download redis pecl..."
  645. src_url=http://pecl.php.net/get/redis-${redis_pecl_version}.tgz && Download_src
  646. fi
  647. fi
  648. if [ "${memcached_yn}" == 'y' ]; then
  649. echo "Download memcached..."
  650. src_url=http://www.memcached.org/files/memcached-${memcached_version}.tar.gz && Download_src
  651. if [[ "$PHP_version" =~ ^[5-6]$ ]]; then
  652. echo "Download pecl memcache for php 7.x..."
  653. # src_url=https://codeload.github.com/websupport-sk/pecl-memcache/zip/php7 && Download_src
  654. src_url=${mirrorLink}/pecl-memcache-php7.tgz && Download_src
  655. echo "Download pecl memcached for php 7.x..."
  656. src_url=https://pecl.php.net/get/memcached-${memcached_pecl_php7_version}.tgz && Download_src
  657. else
  658. echo "Download pecl memcache for php..."
  659. src_url=http://pecl.php.net/get/memcache-${memcache_pecl_version}.tgz && Download_src
  660. echo "Download pecl memcached for php..."
  661. src_url=http://pecl.php.net/get/memcached-${memcached_pecl_version}.tgz && Download_src
  662. fi
  663. echo "Download libmemcached..."
  664. src_url=https://launchpad.net/libmemcached/1.0/${libmemcached_version}/+download/libmemcached-${libmemcached_version}.tar.gz && Download_src
  665. fi
  666. if [[ $Nginx_version =~ ^[1-3]$ ]] || [ "$DB_yn" == 'y' -a "$DB_version" != '10' ]; then
  667. echo "Download jemalloc..."
  668. src_url=${mirrorLink}/jemalloc-${jemalloc_version}.tar.bz2 && Download_src
  669. fi
  670. # others
  671. if [ "${downloadDepsSrc}" == '1' ]; then
  672. if [ "${OS}" == "CentOS" ]; then
  673. echo "Download tmux for CentOS..."
  674. src_url=${mirrorLink}/libevent-${libevent_version}.tar.gz && Download_src
  675. src_url=https://github.com/tmux/tmux/releases/download/${tmux_version}/tmux-${tmux_version}.tar.gz && Download_src
  676. echo "Download htop for CentOS..."
  677. src_url=http://hisham.hm/htop/releases/${htop_version}/htop-${htop_version}.tar.gz && Download_src
  678. fi
  679. if [[ "${Ubuntu_version}" =~ ^14$|^15$ ]]; then
  680. echo "Download bison for Ubuntu..."
  681. src_url=http://ftp.gnu.org/gnu/bison/bison-${bison_version}.tar.gz && Download_src
  682. fi
  683. fi
  684. popd
  685. }