Skonfigurowałem lokalne repozytorium yum, którego używam do instalowania kompilacji testowych. Do celów testowych moje pakiety są wersjonowane przez <svn version number>.<date>.<time>
(np12345.20110908.150404
Problem polega na tym, że gdy utworzę nowy RPM, skopiuję go do katalogu repozytorium i uruchomię createrepo $REPO_DIR
, yum nie widzi nowego RPM jako dostępnego.
$ 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
Widzę aktualizacje i łapię je, jeśli uruchomię, yum clean all
a następnie ponownie pobierz metadane, ale myślę, że oznacza to po prostu, że muszę robić coś innego z repozytorium, ponieważ nie muszę tego robić w przypadku innych repozytoriów yum.
Jak skonfigurować moje lokalne repozytorium, aby wystarczyło tylko uruchomić yum update
klienta, bez konieczności czyszczenia pamięci podręcznej yum?
źródło
Spróbuj dodać następujący wiersz w pliku /etc/yum.conf na klientach Yum:
Następujące polecenie pokazuje więcej informacji:
FYI. W CentOS 5 parametr został skomentowany. CentOS 6.2 ma wartość 90 m.
źródło
yum clean metadata
czyści tylko buforowane nazwy i takie, po czym yum ponownie ładuje swoje wyobrażenie o tym, co jest dostępne.źródło
Właśnie miałem ten sam problem, spróbuj:
źródło
Opcja --enablerepo = localrpmrepo to opcja, której szukasz. więc
zastąp localrpmrepo nazwą repozytorium
źródło
yum --disablerepo=* --enablerepo=epel clean metadata -q; yum check-update --disablrepo=* --enablerepo=epel -q
. Po prostu zrobię funkcję bash i skończę z tym!