check_download.sh 42 KB

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