Eu configurei um repositório yum local que eu uso para instalar compilações de teste. Para fins de teste, meus pacotes são versionados por <svn version number>.<date>.<time>
( por exemplo,12345.20110908.150404
O problema é que, quando eu faço um novo RPM, copio-o para o diretório do repositório e corro createrepo $REPO_DIR
, o yum não vê o novo RPM disponível.
$ cd $REPO_DIR
$ ls -1
repodata
package-12345.20110908.150404-1.x86_64.rpm
package-12345.20110908.174329-1.x86_64.rpm
$ createrepo .
# ...snip...
$ rpm -q package
package-12345.20110908.150404-1.x86_64
$ yum list --showduplicates package
Installed Packages
package.x86_64 12345.20110908.150404-1 @repo
Available Packages
package.x86_64 12345.20110908.150404-1 repo
Posso ver as atualizações e obtê-las se eu executar yum clean all
e buscar novamente os metadados, mas acho que isso significa que preciso fazer outra coisa no repositório, pois não preciso fazer isso em outros repositórios yum.
Como preciso configurar meu repositório local para que eu só precise executar a yum update
partir do cliente sem precisar limpar meu cache do yum?
fonte
Tente adicionar a seguinte linha no /etc/yum.conf nos clientes Yum:
O comando a seguir mostra mais informações:
PARA SUA INFORMAÇÃO. O CentOS 5 tem o parâmetro comentado. O CentOS 6.2 tem 90m para o valor.
fonte
yum clean metadata
limpa apenas os nomes em cache e tal, após o qual o yum recarrega sua ideia do que está disponível.fonte
Só tive o mesmo problema, tente:
fonte
--enablerepo = localrpmrepo da yum é a opção que você procura. então
substitua localrpmrepo pelo seu nome de repositório
fonte
yum --disablerepo=* --enablerepo=epel clean metadata -q; yum check-update --disablrepo=* --enablerepo=epel -q
. Vou apenas fazer uma função bash e pronto!