dl_files.sh 694 B

1234567891011121314151617181920212223242526272829303132
  1. #!/bin/bash
  2. declare -a DB_MIRRORS=(
  3. "switch.clamav.net"
  4. "clamavdb.heanet.ie"
  5. "clamav.iol.cz"
  6. "clamav.univ-nantes.fr"
  7. "clamav.easynet.fr"
  8. "clamav.begi.net"
  9. )
  10. declare -a DB_MIRRORS=( $(shuf -e "${DB_MIRRORS[@]}") )
  11. DB_FILES=(
  12. "bytecode.cvd"
  13. "daily.cvd"
  14. "main.cvd"
  15. )
  16. for i in "${DB_MIRRORS[@]}"; do
  17. for j in "${DB_FILES[@]}"; do
  18. [[ -f "/var/lib/clamav/${j}" && -s "/var/lib/clamav/${j}" ]] && continue;
  19. if [[ $(curl -o /dev/null --connect-timeout 1 \
  20. --max-time 1 \
  21. --silent \
  22. --head \
  23. --write-out "%{http_code}\n" "${i}/${j}") == 200 ]]; then
  24. curl "${i}/${j}" -o "/var/lib/clamav/${j}" -#
  25. fi
  26. done
  27. done
  28. chown clamav:clamav /var/lib/clamav/*.cvd