check_download.sh 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859
  1. #!/bin/bash
  2. # Author: Alpha Eva <kaneawk AT gmail.com>
  3. #
  4. # Notes: OneinStack for CentOS/RedHat 6+ Debian 7+ and Ubuntu 12+
  5. #
  6. # Project home page:
  7. # https://oneinstack.com
  8. # https://github.com/oneinstack/oneinstack
  9. checkDownload() {
  10. mirrorLink=http://mirrors.linuxeye.com/oneinstack/src
  11. pushd ${oneinstack_dir}/src > /dev/null
  12. # General system utils
  13. if [[ ${tomcat_option} =~ ^[1-4]$ ]] || [[ ${apache_option} =~ ^[1-2]$ ]] || [[ ${php_option} =~ ^[1-8]$ ]]; then
  14. echo "Download openSSL..."
  15. src_url=https://www.openssl.org/source/openssl-${openssl_ver}.tar.gz && Download_src
  16. echo "Download cacert.pem..."
  17. src_url=https://curl.haxx.se/ca/cacert.pem && Download_src
  18. fi
  19. # jemalloc
  20. if [[ ${nginx_option} =~ ^[1-3]$ ]] || [[ "${db_option}" =~ ^[1-9]$|^1[0-3]$ ]]; then
  21. echo "Download jemalloc..."
  22. src_url=${mirrorLink}/jemalloc-${jemalloc_ver}.tar.bz2 && Download_src
  23. fi
  24. # nginx/tengine/openresty
  25. case "${nginx_option}" in
  26. 1)
  27. echo "Download openSSL1.1..."
  28. src_url=https://www.openssl.org/source/openssl-${openssl11_ver}.tar.gz && Download_src
  29. echo "Download nginx..."
  30. src_url=http://nginx.org/download/nginx-${nginx_ver}.tar.gz && Download_src
  31. ;;
  32. 2)
  33. echo "Download tengine..."
  34. src_url=http://tengine.taobao.org/download/tengine-${tengine_ver}.tar.gz && Download_src
  35. ;;
  36. 3)
  37. echo "Download openresty..."
  38. src_url=https://openresty.org/download/openresty-${openresty_ver}.tar.gz && Download_src
  39. ;;
  40. esac
  41. # pcre
  42. if [[ "${nginx_option}" =~ ^[1-3]$ || ${apache_option} == '1' ]]; then
  43. echo "Download pcre..."
  44. src_url=https://ftp.pcre.org/pub/pcre/pcre-${pcre_ver}.tar.gz && Download_src
  45. fi
  46. # apache
  47. case "${apache_option}" in
  48. 1)
  49. echo "Download apache 2.4..."
  50. src_url=http://archive.apache.org/dist/httpd/httpd-${apache24_ver}.tar.gz && Download_src
  51. src_url=http://archive.apache.org/dist/apr/apr-${apr_ver}.tar.gz && Download_src
  52. src_url=http://archive.apache.org/dist/apr/apr-util-${apr_util_ver}.tar.gz && Download_src
  53. src_url=http://mirrors.linuxeye.com/apache/httpd/nghttp2-${nghttp2_ver}.tar.gz && Download_src
  54. ;;
  55. 2)
  56. echo "Download apache 2.2..."
  57. src_url=http://archive.apache.org/dist/httpd/httpd-${apache22_ver}.tar.gz && Download_src
  58. echo "Download mod_remoteip.c for apache 2.2..."
  59. src_url=${mirrorLink}/mod_remoteip.c && Download_src
  60. ;;
  61. esac
  62. # tomcat
  63. case "${tomcat_option}" in
  64. 1)
  65. echo "Download tomcat 9..."
  66. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat9_ver}/apache-tomcat-${tomcat9_ver}.tar.gz && Download_src
  67. ;;
  68. 2)
  69. echo "Download tomcat 8..."
  70. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat8_ver}/apache-tomcat-${tomcat8_ver}.tar.gz && Download_src
  71. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat8_ver}/catalina-jmx-remote.jar && Download_src
  72. ;;
  73. 3)
  74. echo "Download tomcat 7..."
  75. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat7_ver}/apache-tomcat-${tomcat7_ver}.tar.gz && Download_src
  76. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat7_ver}/catalina-jmx-remote.jar && Download_src
  77. ;;
  78. 4)
  79. echo "Download tomcat 6..."
  80. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat6_ver}/apache-tomcat-${tomcat6_ver}.tar.gz && Download_src
  81. src_url=http://mirrors.linuxeye.com/apache/tomcat/v${tomcat6_ver}/catalina-jmx-remote.jar && Download_src
  82. ;;
  83. esac
  84. # jdk
  85. if [[ "${jdk_option}" =~ ^[1-4]$ ]]; then
  86. case "${jdk_option}" in
  87. 1)
  88. echo "Download JDK 11.0..."
  89. JDK_FILE="jdk-${jdk110_ver}_linux-${SYS_BIT_j}_bin.tar.gz"
  90. ;;
  91. 2)
  92. echo "Download JDK 1.8..."
  93. JDK_FILE="jdk-$(echo ${jdk18_ver} | awk -F. '{print $2}')u$(echo ${jdk18_ver} | awk -F_ '{print $NF}')-linux-${SYS_BIT_j}.tar.gz"
  94. ;;
  95. 3)
  96. echo "Download JDK 1.7..."
  97. JDK_FILE="jdk-$(echo ${jdk17_ver} | awk -F. '{print $2}')u$(echo ${jdk17_ver} | awk -F_ '{print $NF}')-linux-${SYS_BIT_j}.tar.gz"
  98. ;;
  99. 4)
  100. echo "Download JDK 1.6..."
  101. JDK_FILE="jdk-$(echo ${jdk16_ver} | awk -F. '{print $2}')u$(echo ${jdk16_ver} | awk -F_ '{print $NF}')-linux-${SYS_BIT_j}.bin"
  102. ;;
  103. esac
  104. src_url=http://mirrors.linuxeye.com/jdk/${JDK_FILE} && Download_src
  105. echo "Download apr..."
  106. src_url=http://archive.apache.org/dist/apr/apr-${apr_ver}.tar.gz && Download_src
  107. fi
  108. if [[ "${db_option}" =~ ^[1-9]$|^1[0-5]$ ]]; then
  109. if [[ "${db_option}" =~ ^[1,2,5,6,9]$|^10$ ]] && [ "${dbinstallmethod}" == "2" ]; then
  110. [ "${db_option}" == '9' ] && boost_ver=1.67.0
  111. [[ "${db_option}" =~ ^[2,5,6]$|^10$ ]] && boost_ver=${boost_oldver}
  112. echo "Download boost..."
  113. [ "${IPADDR_COUNTRY}"x == "CN"x ] && DOWN_ADDR_BOOST=${mirrorLink} || DOWN_ADDR_BOOST=http://downloads.sourceforge.net/project/boost/boost/${boost_ver}
  114. boostVersion2=$(echo ${boost_ver} | awk -F. '{print $1"_"$2"_"$3}')
  115. src_url=${DOWN_ADDR_BOOST}/boost_${boostVersion2}.tar.gz && Download_src
  116. fi
  117. case "${db_option}" in
  118. 1)
  119. # MySQL 8.0
  120. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  121. DOWN_ADDR_MYSQL=http://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-8.0
  122. DOWN_ADDR_MYSQL_BK=http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-8.0
  123. DOWN_ADDR_MYSQL_BK2=http://mirrors.huaweicloud.com/repository/toolkit/mysql/Downloads/MySQL-8.0
  124. else
  125. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-8.0
  126. DOWN_ADDR_MYSQL_BK=http://mysql.he.net/Downloads/MySQL-8.0
  127. fi
  128. if [ "${dbinstallmethod}" == '1' ]; then
  129. echo "Download MySQL 8.0 binary package..."
  130. FILE_NAME=mysql-${mysql80_ver}-linux-glibc2.12-${SYS_BIT_b}.tar.xz
  131. elif [ "${dbinstallmethod}" == '2' ]; then
  132. echo "Download MySQL 8.0 source package..."
  133. FILE_NAME=mysql-${mysql80_ver}.tar.gz
  134. fi
  135. # start download
  136. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME} && Download_src
  137. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5 && Download_src
  138. # verifying download
  139. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  140. [ -z "${MYSQL_TAR_MD5}" ] && MYSQL_TAR_MD5=$(curl -s ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME}.md5 | grep ${FILE_NAME} | awk '{print $1}')
  141. tryDlCount=0
  142. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  143. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  144. let "tryDlCount++"
  145. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  146. done
  147. if [ "${tryDlCount}" == '6' ]; then
  148. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  149. kill -9 $$
  150. fi
  151. ;;
  152. 2)
  153. # MySQL 5.7
  154. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  155. DOWN_ADDR_MYSQL=http://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7
  156. DOWN_ADDR_MYSQL_BK=http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7
  157. DOWN_ADDR_MYSQL_BK2=http://mirrors.huaweicloud.com/repository/toolkit/mysql/Downloads/MySQL-5.7
  158. else
  159. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.7
  160. DOWN_ADDR_MYSQL_BK=http://mysql.he.net/Downloads/MySQL-5.7
  161. fi
  162. if [ "${dbinstallmethod}" == '1' ]; then
  163. echo "Download MySQL 5.7 binary package..."
  164. FILE_NAME=mysql-${mysql57_ver}-linux-glibc2.12-${SYS_BIT_b}.tar.gz
  165. elif [ "${dbinstallmethod}" == '2' ]; then
  166. echo "Download MySQL 5.7 source package..."
  167. FILE_NAME=mysql-${mysql57_ver}.tar.gz
  168. fi
  169. # start download
  170. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME} && Download_src
  171. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5 && Download_src
  172. # verifying download
  173. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  174. [ -z "${MYSQL_TAR_MD5}" ] && MYSQL_TAR_MD5=$(curl -s ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME}.md5 | grep ${FILE_NAME} | awk '{print $1}')
  175. tryDlCount=0
  176. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  177. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  178. let "tryDlCount++"
  179. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  180. done
  181. if [ "${tryDlCount}" == '6' ]; then
  182. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  183. kill -9 $$
  184. fi
  185. ;;
  186. 3)
  187. # MySQL 5.6
  188. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  189. DOWN_ADDR_MYSQL=http://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.6
  190. DOWN_ADDR_MYSQL_BK=http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.6
  191. DOWN_ADDR_MYSQL_BK2=http://mirrors.huaweicloud.com/repository/toolkit/mysql/Downloads/MySQL-5.6
  192. else
  193. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.6
  194. DOWN_ADDR_MYSQL_BK=http://mysql.he.net/Downloads/MySQL-5.6
  195. fi
  196. if [ "${dbinstallmethod}" == '1' ]; then
  197. echo "Download MySQL 5.6 binary package..."
  198. FILE_NAME=mysql-${mysql56_ver}-linux-glibc2.12-${SYS_BIT_b}.tar.gz
  199. elif [ "${dbinstallmethod}" == '2' ]; then
  200. echo "Download MySQL 5.6 source package..."
  201. FILE_NAME=mysql-${mysql56_ver}.tar.gz
  202. fi
  203. # start download
  204. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME} && Download_src
  205. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5 && Download_src
  206. # verifying download
  207. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  208. [ -z "${MYSQL_TAR_MD5}" ] && MYSQL_TAR_MD5=$(curl -s ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME}.md5 | grep ${FILE_NAME} | awk '{print $1}')
  209. tryDlCount=0
  210. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  211. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  212. let "tryDlCount++"
  213. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  214. done
  215. if [ "${tryDlCount}" == '6' ]; then
  216. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  217. kill -9 $$
  218. fi
  219. ;;
  220. 4)
  221. # MySQL 5.5
  222. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  223. DOWN_ADDR_MYSQL=http://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.5
  224. DOWN_ADDR_MYSQL_BK=http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.5
  225. DOWN_ADDR_MYSQL_BK2=http://mirrors.huaweicloud.com/repository/toolkit/mysql/Downloads/MySQL-5.5
  226. else
  227. DOWN_ADDR_MYSQL=http://cdn.mysql.com/Downloads/MySQL-5.5
  228. DOWN_ADDR_MYSQL_BK=http://mysql.he.net/Downloads/MySQL-5.5
  229. fi
  230. if [ "${dbinstallmethod}" == '1' ]; then
  231. echo "Download MySQL 5.5 binary package..."
  232. FILE_NAME=mysql-${mysql55_ver}-linux-glibc2.12-${SYS_BIT_b}.tar.gz
  233. elif [ "${dbinstallmethod}" == '2' ]; then
  234. echo "Download MySQL 5.5 source package..."
  235. FILE_NAME=mysql-${mysql55_ver}.tar.gz
  236. src_url=${mirrorLink}/mysql-5.5-fix-arm-client_plugin.patch && Download_src
  237. fi
  238. # start download
  239. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME} && Download_src
  240. src_url=${DOWN_ADDR_MYSQL}/${FILE_NAME}.md5 && Download_src
  241. # verifying download
  242. MYSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  243. [ -z "${MYSQL_TAR_MD5}" ] && MYSQL_TAR_MD5=$(curl -s ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME}.md5 | grep ${FILE_NAME} | awk '{print $1}')
  244. tryDlCount=0
  245. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MYSQL_TAR_MD5}" ]; do
  246. wget -c --no-check-certificate ${DOWN_ADDR_MYSQL_BK}/${FILE_NAME};sleep 1
  247. let "tryDlCount++"
  248. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MYSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  249. done
  250. if [ "${tryDlCount}" == '6' ]; then
  251. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  252. kill -9 $$
  253. fi
  254. ;;
  255. 5)
  256. # MariaDB 10.3
  257. if [ "${dbinstallmethod}" == '1' ]; then
  258. echo "Download MariaDB 10.3 binary package..."
  259. FILE_NAME=mariadb-${mariadb103_ver}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  260. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  261. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb103_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  262. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb103_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  263. else
  264. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb103_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  265. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb103_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  266. fi
  267. elif [ "${dbinstallmethod}" == '2' ]; then
  268. echo "Download MariaDB 10.3 source package..."
  269. FILE_NAME=mariadb-${mariadb103_ver}.tar.gz
  270. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  271. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb103_ver}/source
  272. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb103_ver}/source
  273. else
  274. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb103_ver}/source
  275. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb103_ver}/source
  276. fi
  277. fi
  278. src_url=${DOWN_ADDR_MARIADB}/${FILE_NAME} && Download_src
  279. wget -4 --tries=6 -c --no-check-certificate ${DOWN_ADDR_MARIADB}/md5sums.txt -O ${FILE_NAME}.md5
  280. MARAIDB_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  281. [ -z "${MARAIDB_TAR_MD5}" ] && MARAIDB_TAR_MD5=$(curl -s ${DOWN_ADDR_MARIADB_BK}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  282. tryDlCount=0
  283. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  284. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB_BK}/${FILE_NAME};sleep 1
  285. let "tryDlCount++"
  286. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  287. done
  288. if [ "${tryDlCount}" == '6' ]; then
  289. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  290. kill -9 $$
  291. fi
  292. ;;
  293. 6)
  294. # MariaDB 10.2
  295. if [ "${dbinstallmethod}" == '1' ]; then
  296. echo "Download MariaDB 10.2 binary package..."
  297. FILE_NAME=mariadb-${mariadb102_ver}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  298. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  299. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb102_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  300. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb102_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  301. else
  302. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb102_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  303. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb102_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  304. fi
  305. elif [ "${dbinstallmethod}" == '2' ]; then
  306. echo "Download MariaDB 10.2 source package..."
  307. FILE_NAME=mariadb-${mariadb102_ver}.tar.gz
  308. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  309. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb102_ver}/source
  310. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb102_ver}/source
  311. else
  312. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb102_ver}/source
  313. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb102_ver}/source
  314. fi
  315. fi
  316. src_url=${DOWN_ADDR_MARIADB}/${FILE_NAME} && Download_src
  317. wget -4 --tries=6 -c --no-check-certificate ${DOWN_ADDR_MARIADB}/md5sums.txt -O ${FILE_NAME}.md5
  318. MARAIDB_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  319. [ -z "${MARAIDB_TAR_MD5}" ] && MARAIDB_TAR_MD5=$(curl -s ${DOWN_ADDR_MARIADB_BK}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  320. tryDlCount=0
  321. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  322. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB_BK}/${FILE_NAME};sleep 1
  323. let "tryDlCount++"
  324. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  325. done
  326. if [ "${tryDlCount}" == '6' ]; then
  327. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  328. kill -9 $$
  329. fi
  330. ;;
  331. 7)
  332. # MariaDB 10.1
  333. if [ "${dbinstallmethod}" == '1' ]; then
  334. echo "Download MariaDB 10.1 binary package..."
  335. FILE_NAME=mariadb-${mariadb101_ver}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  336. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  337. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb101_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  338. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb101_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  339. else
  340. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb101_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  341. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb101_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  342. fi
  343. elif [ "${dbinstallmethod}" == '2' ]; then
  344. echo "Download MariaDB 10.1 source package..."
  345. FILE_NAME=mariadb-${mariadb101_ver}.tar.gz
  346. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  347. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb101_ver}/source
  348. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb101_ver}/source
  349. else
  350. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb101_ver}/source
  351. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb101_ver}/source
  352. fi
  353. fi
  354. src_url=${DOWN_ADDR_MARIADB}/${FILE_NAME} && Download_src
  355. wget -4 --tries=6 -c --no-check-certificate ${DOWN_ADDR_MARIADB}/md5sums.txt -O ${FILE_NAME}.md5
  356. MARAIDB_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  357. [ -z "${MARAIDB_TAR_MD5}" ] && MARAIDB_TAR_MD5=$(curl -s ${DOWN_ADDR_MARIADB_BK}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  358. tryDlCount=0
  359. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  360. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB_BK}/${FILE_NAME};sleep 1
  361. let "tryDlCount++"
  362. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  363. done
  364. if [ "${tryDlCount}" == '6' ]; then
  365. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  366. kill -9 $$
  367. fi
  368. ;;
  369. 8)
  370. # MariaDB 5.5
  371. if [ "${dbinstallmethod}" == '1' ]; then
  372. echo "Download MariaDB 5.5 binary package..."
  373. FILE_NAME=mariadb-${mariadb55_ver}-${GLIBC_FLAG}-${SYS_BIT_b}.tar.gz
  374. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  375. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb55_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  376. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb55_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  377. else
  378. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb55_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  379. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb55_ver}/bintar-${GLIBC_FLAG}-${SYS_BIT_a}
  380. fi
  381. elif [ "${dbinstallmethod}" == '2' ]; then
  382. echo "Download MariaDB 5.5 source package..."
  383. FILE_NAME=mariadb-${mariadb55_ver}.tar.gz
  384. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  385. DOWN_ADDR_MARIADB=http://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-${mariadb55_ver}/source
  386. DOWN_ADDR_MARIADB_BK=http://mirrors.ustc.edu.cn/mariadb/mariadb-${mariadb55_ver}/source
  387. else
  388. DOWN_ADDR_MARIADB=http://ftp.osuosl.org/pub/mariadb/mariadb-${mariadb55_ver}/source
  389. DOWN_ADDR_MARIADB_BK=http://mirror.nodesdirect.com/mariadb/mariadb-${mariadb55_ver}/source
  390. fi
  391. fi
  392. src_url=${DOWN_ADDR_MARIADB}/${FILE_NAME} && Download_src
  393. wget -4 --tries=6 -c --no-check-certificate ${DOWN_ADDR_MARIADB}/md5sums.txt -O ${FILE_NAME}.md5
  394. MARAIDB_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  395. [ -z "${MARAIDB_TAR_MD5}" ] && MARAIDB_TAR_MD5=$(curl -s ${DOWN_ADDR_MARIADB_BK}/md5sums.txt | grep ${FILE_NAME} | awk '{print $1}')
  396. tryDlCount=0
  397. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MARAIDB_TAR_MD5}" ]; do
  398. wget -c --no-check-certificate ${DOWN_ADDR_MARIADB_BK}/${FILE_NAME};sleep 1
  399. let "tryDlCount++"
  400. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MARAIDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  401. done
  402. if [ "${tryDlCount}" == '6' ]; then
  403. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  404. kill -9 $$
  405. fi
  406. ;;
  407. 9)
  408. # Percona 8.0
  409. if [ "${dbinstallmethod}" == '1' ]; then
  410. echo "Download Percona 8.0 binary package..."
  411. FILE_NAME=Percona-Server-${percona80_ver}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  412. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-8.0/Percona-Server-${percona80_ver}/binary/tarball
  413. elif [ "${dbinstallmethod}" == '2' ]; then
  414. echo "Download Percona 8.0 source package..."
  415. FILE_NAME=percona-server-${percona80_ver}.tar.gz
  416. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  417. DOWN_ADDR_PERCONA=${mirrorLink}
  418. else
  419. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-8.0/Percona-Server-${percona80_ver}/source/tarball
  420. fi
  421. fi
  422. # start download
  423. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME} && Download_src
  424. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum && Download_src
  425. # verifying download
  426. PERCONA_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5sum)
  427. [ -z "${PERCONA_TAR_MD5}" ] && PERCONA_TAR_MD5=$(curl -s ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  428. tryDlCount=0
  429. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  430. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME}; sleep 1
  431. let "tryDlCount++"
  432. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  433. done
  434. if [ "${tryDlCount}" == '6' ]; then
  435. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  436. kill -9 $$
  437. fi
  438. ;;
  439. 10)
  440. # Precona 5.7
  441. if [ "${dbinstallmethod}" == '1' ]; then
  442. echo "Download Percona 5.7 binary package..."
  443. FILE_NAME=Percona-Server-${percona57_ver}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  444. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona57_ver}/binary/tarball
  445. elif [ "${dbinstallmethod}" == '2' ]; then
  446. echo "Download Percona 5.7 source package..."
  447. FILE_NAME=percona-server-${percona57_ver}.tar.gz
  448. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  449. DOWN_ADDR_PERCONA=${mirrorLink}
  450. else
  451. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-${percona57_ver}/source/tarball
  452. fi
  453. fi
  454. # start download
  455. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME} && Download_src
  456. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum && Download_src
  457. # verifying download
  458. PERCONA_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5sum)
  459. [ -z "${PERCONA_TAR_MD5}" ] && PERCONA_TAR_MD5=$(curl -s ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  460. tryDlCount=0
  461. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  462. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME}; sleep 1
  463. let "tryDlCount++"
  464. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  465. done
  466. if [ "${tryDlCount}" == '6' ]; then
  467. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  468. kill -9 $$
  469. fi
  470. ;;
  471. 11)
  472. # Precona 5.6
  473. if [ "${dbinstallmethod}" == '1' ]; then
  474. echo "Download Percona 5.6 binary package..."
  475. perconaVerStr1=$(echo ${percona56_ver} | sed "s@-@-rel@")
  476. FILE_NAME=Percona-Server-${perconaVerStr1}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  477. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona56_ver}/binary/tarball
  478. elif [ "${dbinstallmethod}" == '2' ]; then
  479. echo "Download Percona 5.6 source package..."
  480. FILE_NAME=percona-server-${percona56_ver}.tar.gz
  481. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  482. DOWN_ADDR_PERCONA=${mirrorLink}
  483. else
  484. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${percona56_ver}/source/tarball
  485. fi
  486. fi
  487. # start download
  488. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME} && Download_src
  489. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum && Download_src
  490. # verifying download
  491. PERCONA_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5sum)
  492. [ -z "${PERCONA_TAR_MD5}" ] && PERCONA_TAR_MD5=$(curl -s ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  493. tryDlCount=0
  494. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  495. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME}; sleep 1
  496. let "tryDlCount++"
  497. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  498. done
  499. if [ "${tryDlCount}" == '6' ]; then
  500. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  501. kill -9 $$
  502. fi
  503. ;;
  504. 12)
  505. # Percona 5.5
  506. if [ "${dbinstallmethod}" == '1' ]; then
  507. echo "Download Percona 5.5 binary package..."
  508. perconaVerStr1=$(echo ${percona55_ver} | sed "s@-@-rel@")
  509. FILE_NAME=Percona-Server-${perconaVerStr1}-Linux.${SYS_BIT_b}.${sslLibVer}.tar.gz
  510. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona55_ver}/binary/tarball
  511. elif [ "${dbinstallmethod}" == '2' ]; then
  512. echo "Download Percona 5.5 source package..."
  513. FILE_NAME=percona-server-${percona55_ver}.tar.gz
  514. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  515. DOWN_ADDR_PERCONA=${mirrorLink}
  516. else
  517. DOWN_ADDR_PERCONA=https://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-${percona55_ver}/source/tarball
  518. fi
  519. fi
  520. # start download
  521. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME} && Download_src
  522. src_url=${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum && Download_src
  523. # verifying download
  524. PERCONA_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5sum)
  525. [ -z "${PERCONA_TAR_MD5}" ] && PERCONA_TAR_MD5=$(curl -s ${DOWN_ADDR_PERCONA}/${FILE_NAME}.md5sum | grep ${FILE_NAME} | awk '{print $1}')
  526. tryDlCount=0
  527. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PERCONA_TAR_MD5}" ]; do
  528. wget -c --no-check-certificate ${DOWN_ADDR_PERCONA}/${FILE_NAME}; sleep 1
  529. let "tryDlCount++"
  530. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PERCONA_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  531. done
  532. if [ "${tryDlCount}" == '6' ]; then
  533. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  534. kill -9 $$
  535. fi
  536. ;;
  537. 13)
  538. # AliSQL 5.6
  539. DOWN_ADDR_ALISQL=$mirrorLink
  540. echo "Download AliSQL 5.6 source package..."
  541. FILE_NAME=alisql-${alisql_ver}.tar.gz
  542. src_url=${DOWN_ADDR_ALISQL}/${FILE_NAME} && Download_src
  543. src_url=${DOWN_ADDR_ALISQL}/${FILE_NAME}.md5 && Download_src
  544. ALISQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  545. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${ALISQL_TAR_MD5}" ];do
  546. wget -4c --no-check-certificate ${DOWN_ADDR_ALISQL}/${FILE_NAME};sleep 1
  547. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${ALISQL_TAR_MD5}" ] && break || continue
  548. done
  549. ;;
  550. 14)
  551. # PostgreSQL
  552. echo "Download PostgreSQL source package..."
  553. FILE_NAME=postgresql-${pgsql_ver}.tar.gz
  554. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  555. DOWN_ADDR_PGSQL=https://mirrors.tuna.tsinghua.edu.cn/postgresql/source/v${pgsql_ver}
  556. DOWN_ADDR_PGSQL_BK=https://mirrors.ustc.edu.cn/postgresql/source/v${pgsql_ver}
  557. else
  558. DOWN_ADDR_PGSQL=https://ftp.postgresql.org/pub/source/v${pgsql_ver}
  559. DOWN_ADDR_PGSQL_BK=https://ftp.heanet.ie/mirrors/postgresql/source/v${pgsql_ver}
  560. fi
  561. src_url=${DOWN_ADDR_PGSQL}/${FILE_NAME} && Download_src
  562. src_url=${DOWN_ADDR_PGSQL}/${FILE_NAME}.md5 && Download_src
  563. PGSQL_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  564. [ -z "${PGSQL_TAR_MD5}" ] && PGSQL_TAR_MD5=$(curl -s ${DOWN_ADDR_PGSQL_BK}/${FILE_NAME}.md5 | grep ${FILE_NAME} | awk '{print $1}')
  565. tryDlCount=0
  566. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${PGSQL_TAR_MD5}" ]; do
  567. wget -c --no-check-certificate ${DOWN_ADDR_PGSQL_BK}/${FILE_NAME};sleep 1
  568. let "tryDlCount++"
  569. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${PGSQL_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  570. done
  571. if [ "${tryDlCount}" == '6' ]; then
  572. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  573. kill -9 $$
  574. fi
  575. ;;
  576. 15)
  577. # MongoDB
  578. echo "Download MongoDB binary package..."
  579. FILE_NAME=mongodb-linux-${SYS_BIT_b}-${mongodb_ver}.tgz
  580. if [ "${IPADDR_COUNTRY}"x == "CN"x ]; then
  581. DOWN_ADDR_MongoDB=${mirrorLink}
  582. else
  583. DOWN_ADDR_MongoDB=https://fastdl.mongodb.org/linux
  584. fi
  585. src_url=${DOWN_ADDR_MongoDB}/${FILE_NAME} && Download_src
  586. src_url=${DOWN_ADDR_MongoDB}/${FILE_NAME}.md5 && Download_src
  587. MongoDB_TAR_MD5=$(awk '{print $1}' ${FILE_NAME}.md5)
  588. [ -z "${MongoDB_TAR_MD5}" ] && MongoDB_TAR_MD5=$(curl -s ${DOWN_ADDR_MongoDB}/${FILE_NAME}.md5 | grep ${FILE_NAME} | awk '{print $1}')
  589. tryDlCount=0
  590. while [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" != "${MongoDB_TAR_MD5}" ]; do
  591. wget -c --no-check-certificate ${DOWN_ADDR_MongoDB}/${FILE_NAME};sleep 1
  592. let "tryDlCount++"
  593. [ "$(md5sum ${FILE_NAME} | awk '{print $1}')" == "${MongoDB_TAR_MD5}" -o "${tryDlCount}" == '6' ] && break || continue
  594. done
  595. if [ "${tryDlCount}" == '6' ]; then
  596. echo "${CFAILURE}${FILE_NAME} download failed, Please contact the author! ${CEND}"
  597. kill -9 $$
  598. fi
  599. ;;
  600. esac
  601. fi
  602. # PHP
  603. if [[ "${php_option}" =~ ^[1-8]$ ]]; then
  604. echo "PHP common..."
  605. src_url=http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${libiconv_ver}.tar.gz && Download_src
  606. src_url=${mirrorLink}/libiconv-glibc-2.16.patch && Download_src
  607. src_url=https://curl.haxx.se/download/curl-${curl_ver}.tar.gz && Download_src
  608. src_url=http://downloads.sourceforge.net/project/mhash/mhash/${mhash_ver}/mhash-${mhash_ver}.tar.gz && Download_src
  609. src_url=http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/${libmcrypt_ver}/libmcrypt-${libmcrypt_ver}.tar.gz && Download_src
  610. src_url=http://downloads.sourceforge.net/project/mcrypt/MCrypt/${mcrypt_ver}/mcrypt-${mcrypt_ver}.tar.gz && Download_src
  611. fi
  612. case "${php_option}" in
  613. 1)
  614. # php 5.3
  615. src_url=${mirrorLink}/debian_patches_disable_SSLv2_for_openssl_1_0_0.patch && Download_src
  616. src_url=${mirrorLink}/php5.3patch && Download_src
  617. src_url=https://secure.php.net/distributions/php-${php53_ver}.tar.gz && Download_src
  618. src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
  619. ;;
  620. 2)
  621. src_url=https://secure.php.net/distributions/php-${php54_ver}.tar.gz && Download_src
  622. src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
  623. ;;
  624. 3)
  625. src_url=https://secure.php.net/distributions/php-${php55_ver}.tar.gz && Download_src
  626. src_url=${mirrorLink}/fpm-race-condition.patch && Download_src
  627. ;;
  628. 4)
  629. src_url=https://secure.php.net/distributions/php-${php56_ver}.tar.gz && Download_src
  630. ;;
  631. 5)
  632. src_url=https://secure.php.net/distributions/php-${php70_ver}.tar.gz && Download_src
  633. ;;
  634. 6)
  635. src_url=https://secure.php.net/distributions/php-${php71_ver}.tar.gz && Download_src
  636. ;;
  637. 7)
  638. src_url=https://secure.php.net/distributions/php-${php72_ver}.tar.gz && Download_src
  639. src_url=http://mirrors.linuxeye.com/oneinstack/src/argon2-${argon2_ver}.tar.gz && Download_src
  640. src_url=http://mirrors.linuxeye.com/oneinstack/src/libsodium-${libsodium_ver}.tar.gz && Download_src
  641. ;;
  642. 8)
  643. src_url=https://secure.php.net/distributions/php-${php73_ver}.tar.gz && Download_src
  644. src_url=http://mirrors.linuxeye.com/oneinstack/src/argon2-${argon2_ver}.tar.gz && Download_src
  645. src_url=http://mirrors.linuxeye.com/oneinstack/src/libsodium-${libsodium_ver}.tar.gz && Download_src
  646. ;;
  647. esac
  648. # PHP OPCache
  649. case "${phpcache_option}" in
  650. 1)
  651. if [[ "${php_option}" =~ ^[1-2]$ ]]; then
  652. # php 5.3 5.4
  653. echo "Download Zend OPCache..."
  654. src_url=https://pecl.php.net/get/zendopcache-${zendopcache_ver}.tgz && Download_src
  655. fi
  656. ;;
  657. 2)
  658. if [[ "${php_option}" =~ ^[1-4]$ ]]; then
  659. # php 5.3 5.4 5.5 5.6
  660. echo "Download xcache..."
  661. src_url=http://xcache.lighttpd.net/pub/Releases/${xcache_ver}/xcache-${xcache_ver}.tar.gz && Download_src
  662. fi
  663. ;;
  664. 3)
  665. # php 5.3 5.4 5.5 5.6 7.0 7.1 7.2
  666. echo "Download apcu..."
  667. if [[ "${php_option}" =~ ^[1-4]$ ]]; then
  668. src_url=https://pecl.php.net/get/apcu-${apcu_oldver}.tgz && Download_src
  669. else
  670. src_url=https://pecl.php.net/get/apcu-${apcu_ver}.tgz && Download_src
  671. fi
  672. ;;
  673. 4)
  674. # php 5.3 5.4
  675. if [ "${php_option}" == '1' ]; then
  676. echo "Download eaccelerator 0.9..."
  677. src_url=https://github.com/downloads/eaccelerator/eaccelerator/eaccelerator-${eaccelerator_ver}.tar.bz2 && Download_src
  678. elif [ "${php_option}" == '2' ]; then
  679. echo "Download eaccelerator 1.0 dev..."
  680. src_url=https://github.com/eaccelerator/eaccelerator/tarball/master && Download_src
  681. fi
  682. ;;
  683. esac
  684. # Zend Guard Loader
  685. if [ "${pecl_zendguardloader}" == '1' -a "${armplatform}" != 'y' ]; then
  686. case "${php_option}" in
  687. 4)
  688. echo "Download zend loader for php 5.6..."
  689. src_url=${mirrorLink}/zend-loader-php5.6-linux-${SYS_BIT_c}.tar.gz && Download_src
  690. ;;
  691. 3)
  692. echo "Download zend loader for php 5.5..."
  693. src_url=${mirrorLink}/zend-loader-php5.5-linux-${SYS_BIT_c}.tar.gz && Download_src
  694. ;;
  695. 2)
  696. echo "Download zend loader for php 5.4..."
  697. src_url=${mirrorLink}/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-${SYS_BIT_c}.tar.gz && Download_src
  698. ;;
  699. 1)
  700. echo "Download zend loader for php 5.3..."
  701. src_url=${mirrorLink}/ZendGuardLoader-php-5.3-linux-glibc23-${SYS_BIT_c}.tar.gz && Download_src
  702. ;;
  703. esac
  704. fi
  705. # ioncube
  706. if [ "${pecl_ioncube}" == '1' ]; then
  707. echo "Download ioncube..."
  708. if [ "${TARGET_ARCH}" == "armv7" ]; then
  709. src_url=https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_armv7l.tar.gz && Download_src
  710. else
  711. src_url=https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_${SYS_BIT_d}.tar.gz && Download_src
  712. fi
  713. fi
  714. # SourceGuardian
  715. if [ "${pecl_sourceguardian}" == '1' ]; then
  716. echo "Download SourceGuardian..."
  717. if [ "${TARGET_ARCH}" == "armv8" ]; then
  718. src_url=https://www.sourceguardian.com/loaders/download/loaders.linux-aarch64.tar.gz && Download_src
  719. else
  720. src_url=${mirrorLink}/loaders.linux-${SYS_BIT_c}.tar.gz && Download_src
  721. fi
  722. fi
  723. # imageMagick
  724. if [ "${pecl_imagick}" == '1' ]; then
  725. echo "Download ImageMagick..."
  726. src_url=${mirrorLink}/ImageMagick-${imagemagick_ver}.tar.gz && Download_src
  727. echo "Download imagick..."
  728. src_url=https://pecl.php.net/get/imagick-${imagick_ver}.tgz && Download_src
  729. fi
  730. # graphicsmagick
  731. if [ "${pecl_gmagick}" == '1' ]; then
  732. echo "Download graphicsmagick..."
  733. src_url=http://downloads.sourceforge.net/project/graphicsmagick/graphicsmagick/${graphicsmagick_ver}/GraphicsMagick-${graphicsmagick_ver}.tar.gz && Download_src
  734. if [[ "${php_option}" =~ ^[1-4]$ ]]; then
  735. echo "Download gmagick for php..."
  736. src_url=https://pecl.php.net/get/gmagick-${gmagick_oldver}.tgz && Download_src
  737. else
  738. echo "Download gmagick for php 7.x..."
  739. src_url=https://pecl.php.net/get/gmagick-${gmagick_ver}.tgz && Download_src
  740. fi
  741. fi
  742. # redis-server
  743. if [ "${redis_flag}" == 'y' ]; then
  744. echo "Download redis-server..."
  745. src_url=http://download.redis.io/releases/redis-${redis_ver}.tar.gz && Download_src
  746. if [ "${PM}" == 'yum' ]; then
  747. echo "Download start-stop-daemon.c for CentOS..."
  748. src_url=${mirrorLink}/start-stop-daemon.c && Download_src
  749. fi
  750. fi
  751. # pecl_redis
  752. if [ "${pecl_redis}" == '1' ]; then
  753. echo "Download pecl_redis..."
  754. src_url=https://pecl.php.net/get/redis-${pecl_redis_ver}.tgz && Download_src
  755. fi
  756. # memcached-server
  757. if [ "${memcached_flag}" == 'y' ]; then
  758. echo "Download memcached-server..."
  759. [ "${IPADDR_COUNTRY}"x == "CN"x ] && DOWN_ADDR=${mirrorLink} || DOWN_ADDR=http://www.memcached.org/files
  760. src_url=${DOWN_ADDR}/memcached-${memcached_ver}.tar.gz && Download_src
  761. fi
  762. # pecl_memcached
  763. if [ "${pecl_memcached}" == '1' ]; then
  764. echo "Download libmemcached..."
  765. src_url=https://launchpad.net/libmemcached/1.0/${libmemcached_ver}/+download/libmemcached-${libmemcached_ver}.tar.gz && Download_src
  766. if [[ "${php_option}" =~ ^[1-4]$ ]]; then
  767. echo "Download pecl_memcached for php..."
  768. src_url=https://pecl.php.net/get/memcached-${pecl_memcached_oldver}.tgz && Download_src
  769. else
  770. echo "Download pecl_memcached for php 7.x..."
  771. src_url=https://pecl.php.net/get/memcached-${pecl_memcached_ver}.tgz && Download_src
  772. fi
  773. fi
  774. # memcached-server pecl_memcached pecl_memcache
  775. if [ "${pecl_memcache}" == '1' ]; then
  776. if [[ "${php_option}" =~ ^[1-4]$ ]]; then
  777. echo "Download pecl_memcache for php..."
  778. src_url=https://pecl.php.net/get/memcache-${pecl_memcache_ver}.tgz && Download_src
  779. else
  780. echo "Download pecl_memcache for php 7.x..."
  781. # src_url=https://codeload.github.com/websupport-sk/pecl-memcache/zip/php7 && Download_src
  782. src_url=${mirrorLink}/pecl-memcache-php7.tgz && Download_src
  783. fi
  784. fi
  785. # pecl_mongodb
  786. if [ "${pecl_mongodb}" == '1' ]; then
  787. echo "Download pecl mongo for php..."
  788. src_url=https://pecl.php.net/get/mongo-${pecl_mongo_ver}.tgz && Download_src
  789. echo "Download pecl mongodb for php..."
  790. src_url=https://pecl.php.net/get/mongodb-${pecl_mongodb_ver}.tgz && Download_src
  791. fi
  792. # pureftpd
  793. if [ "${pureftpd_flag}" == 'y' ]; then
  794. echo "Download pureftpd..."
  795. src_url=https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-${pureftpd_ver}.tar.gz && Download_src
  796. fi
  797. # phpMyAdmin
  798. if [ "${phpmyadmin_flag}" == 'y' ]; then
  799. echo "Download phpMyAdmin..."
  800. if [[ "${php_option}" =~ ^[1-2]$ ]]; then
  801. src_url=https://files.phpmyadmin.net/phpMyAdmin/${phpmyadmin_oldver}/phpMyAdmin-${phpmyadmin_oldver}-all-languages.tar.gz && Download_src
  802. else
  803. src_url=https://files.phpmyadmin.net/phpMyAdmin/${phpmyadmin_ver}/phpMyAdmin-${phpmyadmin_ver}-all-languages.tar.gz && Download_src
  804. fi
  805. fi
  806. # others
  807. if [ "${downloadDepsSrc}" == '1' ]; then
  808. if [ "${PM}" == 'yum' ]; then
  809. echo "Download tmux for CentOS..."
  810. src_url=${mirrorLink}/libevent-${libevent_ver}.tar.gz && Download_src
  811. src_url=${mirrorLink}/tmux-${tmux_ver}.tar.gz && Download_src
  812. echo "Download htop for CentOS..."
  813. src_url=http://hisham.hm/htop/releases/${htop_ver}/htop-${htop_ver}.tar.gz && Download_src
  814. fi
  815. if [ "${CentOS_ver}" == '6' ]; then
  816. echo "Download autoconf rpm for CentOS6..."
  817. src_url=${mirrorLink}/autoconf-2.69-12.2.noarch.rpm && Download_src
  818. fi
  819. if [[ "${Ubuntu_ver}" =~ ^14$|^15$ ]]; then
  820. echo "Download bison for Ubuntu..."
  821. src_url=http://ftp.gnu.org/gnu/bison/bison-${bison_ver}.tar.gz && Download_src
  822. fi
  823. fi
  824. popd > /dev/null
  825. }