Respostas:
Você precisa de --updateopção comcreaterepo
createrepo --update: Às vezes você tem muitos pacotes no seu repositório e a regeneração dos metadados para cada pacote quando apenas alguns pacotes foram adicionados ou alterados consome muito tempo. É aqui que --update é útil. Você executa o createrepo como antes, mas passa o sinalizador --update. Como isso:
createrepo --update </path/to/repo>
Agora, o createrepo atualiza apenas os itens que foram alterados, adicionados ou removidos desde a última vez que os metadados foram gerados.
Também mencionado em man createrepo
( Referência )
Sim. Após qualquer modificação no diretório repo, você deve executá createrepo-lo. Obviamente, os clientes devem executar yum clean allantes que as alterações sejam vistas.
--update. Sem ele,createrepoos metadados serão criados corretamente. Mas--updateo acelerará enormemente, especialmente em grandes repositórios.