Eu usaria um espelho rsync. rsync
só vai puxar arquivos que você não tem.
rsync -avz --exclude='repo*' rsync://mirror.cisp.com/CentOS/7/updates/x86_64/ /var/www/html/repos/centos/7/updates/x86_64/
createrepo --update /var/www/html/repos/centos/7/updates/x86_64/
Aqui está um artigo realmente bom sobre como criar um espelho rsync de um repositório do CentOS e que possui instruções detalhadas .