check_download.sh 35 KB

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