check_download.sh 37 KB

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