Acho que mrepo é uma excelente ferramenta para isso. Você aponta para um repositório upstream e ele irá espelhar localmente. A opção de configuração lftp-cleanup = no , rhnget-cleanup = no , etc, impedirá a exclusão de pacotes do espelho local quando eles forem excluídos do envio.