Se você está no CentOS 6 , o seguinte comando deve mostrar qual repositório de seus RPMs instalados veio:
rpm -qa | xargs yum info | grep '^From repo' | sort | uniq -c | sort -rn
Se você está no CentOS 5 ou abaixo, não há uma maneira definitiva de obter as informações desejadas. Você terá que passar pelos RPMs atualmente instalados e tentar correlacioná-los aos vários repositórios que você configurou. Existem algumas maneiras de correlacioná-las:
-
Alguns repos como repoforge / rpmforge e IUS, mas com um sufixo em seus RPMs, você pode usar algo como
rpm -qa release='*rf*'
-
Correlacione o empacotador, o host de compilação, a assinatura ou o fornecedor aos vários repos. Por exemplo, se o buildhost tiver 'fedoraproject.org', provavelmente veio do repositório EPEL. Ou se o fornecedor estiver listado como 'RPM Fusion', provavelmente veio do repositório do rpmfusion. Cada repo é diferente em termos, se eles realmente usam os campos e o que eles colocam neles.
O empacotador, o host e o fornecedor podem, teoricamente, ser falsificados, portanto, dependendo das suas necessidades de segurança, talvez você não queira depender deles, mas a probabilidade de alguém estar fazendo isso de maneira mal-intencionada é baixa. A assinatura seria a mais segura.
As recompras estão abaixo. Você consultaria todo o seu rpms e classificaria a saída com algo como
rpm -qa --queryformat '%{vendor}\t%{name}\n' | sort
- Empacotador -% {packager}
- BuildHost -% {buildhost}
- Assinatura -% {RSAHEADER: pgpsig}
- Fornecedor -% {vendor}
Esta entrada no wiki do CentOS pode ser útil.