check_download.sh 41 KB

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