33 lines
		
	
	
		
			694 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			694 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| declare -a DB_MIRRORS=(
 | |
|   "switch.clamav.net"
 | |
|   "clamavdb.heanet.ie"
 | |
|   "clamav.iol.cz"
 | |
|   "clamav.univ-nantes.fr"
 | |
|   "clamav.easynet.fr"
 | |
|   "clamav.begi.net"
 | |
| )
 | |
| declare -a DB_MIRRORS=( $(shuf -e "${DB_MIRRORS[@]}") )
 | |
| 
 | |
| DB_FILES=(
 | |
|   "bytecode.cvd"
 | |
|   "daily.cvd"
 | |
|   "main.cvd"
 | |
| )
 | |
| 
 | |
| for i in "${DB_MIRRORS[@]}"; do
 | |
|   for j in "${DB_FILES[@]}"; do
 | |
|   [[ -f "/var/lib/clamav/${j}" && -s "/var/lib/clamav/${j}" ]] && continue;
 | |
|   if [[ $(curl -o /dev/null --connect-timeout 1 \
 | |
|     --max-time 1 \
 | |
|     --silent \
 | |
|     --head \
 | |
|     --write-out "%{http_code}\n" "${i}/${j}") == 200 ]]; then
 | |
|     curl "${i}/${j}" -o "/var/lib/clamav/${j}" -#
 | |
|   fi
 | |
|   done
 | |
| done
 | |
| 
 | |
| chown clamav:clamav /var/lib/clamav/*.cvd
 | 
