Robię aktualizację całego systemu na RHEL 5.5, a repozytorium IUS EPEL zgłasza brakujący błąd zależności:
php53-mcrypt-5.3.3-4.ius.el5.x86_64 from installed has depsolving problems
--> Missing Dependency: php53-common = 5.3.3-4.ius.el5 is needed by package php53-mcrypt- 5.3.3-4.ius.el5.x86_64 (installed)
Error: Missing Dependency: php53-common = 5.3.3-4.ius.el5 is needed by package php53-mcrypt-5.3.3-4.ius.el5.x86_64 (installed)
Czy istnieje sposób na uruchomienie aktualizacji YUM dla wszystkich innych repozytoriów, ignorując repozytorium IUS EPEL, aby pominąć ten problem zależności?
Wyjaśnienie
Próbuję zainstalować aktualizacje tylko z sieci Redhat. Nie mogę znaleźć nazwy repozytorium, więc nie jestem w stanie zrobić czegoś takiego, sudo yum --disablerepo=* --enablerepo=rhel update
ponieważ używana przeze mnie wersja nie obsługuje wielu repozytoriów wymienionych później --disablerepo
.
Aktualizacja
Moim tymczasowym obejściem jest uruchomienie sudo yum --exclude=php53* update
. Jestem przekonany, że istnieje lepszy sposób. Ten lepszy sposób obejmuje naprawienie rzeczywistego problemu, więc zgłosiłem błąd również do projektu społeczności IUS .
Aktualizacja nr 2
Wygląda na to, że znalazłem problem z zależnością . Nadal uważam, że powinno być możliwe obejście tego problemu.
Dzięki!
Odpowiedzi:
Spróbuj wyłączyć przełącznik repo:
AKTUALIZACJA
Aby znaleźć wszystkie obecnie znane repozytoria (włączone i wyłączone):
Następnie, aby dowiedzieć się, które repozytorium wywołuje żal z powodu powyższego pakietu, spróbuj:
To pokaże, które z twoich repozytoriów dostarcza powyższy pakiet (zobaczysz też „zainstalowany” na liście, aby pokazać pakiety zainstalowane lokalnie).
Spróbuj ponownie wyłączyć przełącznik, gdy poznasz repozytorium, używając przełącznika wyłączania repozytorium.
Jeśli powyższe kroki nie pozwalają wyodrębnić repozytorium, które chcesz pominąć, spróbuj przejrzeć plik /etc/yum.repos.d/ , który jest domyślną lokalizacją RHEL dla definicji repozytorium. W tym katalogu zlokalizuj wszystkie niestandardowe pliki bazowe i aktualizacje repozytorium RHEL i włącz włączone = 0 , np.
Mam nadzieję że to pomoże.
źródło
--disablerepo=epel --disablerepo=ius
i--disablerepo=epel,ius
.yum repolist all
pokazuje, że włączone są tylko następujące repozytoria: epel, ius i rhel-x86_64-server-5. Twoje--showduplicates
polecenie pokazuje, że pakiet został zainstalowany z ius repo. Więc wypróbowałem następującesudo yum --disablerepo=* --enablerepo=rhel-x86_64-server-5 update
i nadal zgłasza błąd zależności w tym samym pakiecie. Próbowałem też wyłączyć repozytorium, zmieniającenabled=0
ustawienie w /etc/yum.repos.d/sudo yum update --disablerepo=ius
zakładając, że wszystkie inne repo są domyślnie włączone. W przeciwnym razie spróbuj po prostusudo yum update --exclude=php53-mcrypt-5.3.3-4.ius.el5.x86_64
całkowicie pominąć ten pakiet.sudo yum deplist php53-mcrypt-5.3.3-4.ius.el5.x86_64
, pokaże wszystkie zależności i dostawców dla tego konkretnego pakietu. Z mojego doświadczenia z pakietami PHP i RHEL jest to powszechny problem. Nie chcę odchodzić od omawianego problemu, ale znalazłem Remi, który zapewnia najlepsze pakiety dla PHP, nigdy nie miałem problemu z zależnością od PHP po przejściu na ich repozytorium.najłatwiej to zrobić, komentując Linuksa przy pomocy niechcianego repozytorium w /etc/yum.repos.d/
źródło
Możesz wyłączyć wiele repozytoriów w wierszu poleceń yum:
Jednak jeśli to zrobisz, musisz jawnie włączyć repozytorium, które chcesz:
źródło
Możesz dodać włączone = 0 do pliku konfiguracyjnego repozytorium, aby go wyłączyć. Przykład pliku konfiguracyjnego repozytorium http://www.cyberciti.biz/tips/rhel5-fedora-core-add-new-yum-repository.html .
źródło