- W systemie Linux zależnościami nazywamy pakiety lub biblioteki niezbędne innym programom do działania. Można je wyświetlić przy użyciu narzędzi takich jak apt-cache, apt-rdepends, rpm, yum, pactree, zypper i ldd, w zależności od dystrybucji.
- W systemach Debian/Ubuntu polecenia apt-cache depend, apt-rdepends, dpkg-deb i apt-get build-dep służą głównie do sprawdzania zależności pakietów w repozytoriach i luźnych plikach .deb.
- W świecie RPM i Arch Linux polecenia takie jak rpm -qR, yum deplist, yum provides i pactree umożliwiają przeglądanie zarówno bezpośrednich zależności, jak i kompletnych drzew zależności oraz zależności odwrotnych.
- Jeśli pojawią się uszkodzone pakiety lub niespełnione zależności, można je naprawić za pomocą poleceń dpkg --configure -a, apt-get -f install, czyszczenia pamięci podręcznej, Synaptic lub, w ostateczności, edytując plik /var/lib/dpkg/status.

Jeśli używasz systemu GNU/Linux od jakiegoś czasu, pewnie zastanawiałeś się, dlaczego podczas instalacji programu menedżer pakietów zaczyna pobierać wiele „dodatkowych” rzeczy. Biblioteki i dodatkowe pakiety to znane zależnościZrozumienie ich stanowi różnicę między zarządzaniem systemem ze spokojem ducha a działaniem w ciemno, modląc się, żeby niczego nie zepsuć.
Co więcej, bardzo często można zobaczyć samouczki lub filmy, w których ktoś instaluje aplikację i jak za dotknięciem czarodziejskiej różdżki dodaje trzy lub cztery kolejne paczki bez wyjaśnieniaTo rodzi nieufność: czy naprawdę są potrzebne? Czy system nie powinien sobie z nimi poradzić sam? W tym artykule zajmiemy się właśnie tym problemem: zobaczysz Jak wyświetlić listę zależności pakietu w systemie Linux (DEB, RPM, Pacman, Zypper…) a także jak sprawdzać, które pakiety zależą od innych, jak przeglądać pliki binarne i co zrobić, gdy zależności zostaną zerwane.
Czym jest zależność i dlaczego jest tak ważna w systemie Linux?
Mówiąc prościej, zależność to pakiet (program lub biblioteka), którego inny potrzebuje do prawidłowego działaniaPrzykładowo, instalując LibreOffice, nie pobierasz tylko jednego pakietu: główny „metapakiet” zawiera dziesiątki bibliotek graficznych, czcionek, narzędzi do integracji systemów itp.
Gdy pakiet wskazuje, że potrzebne są inne, menedżer pakietów automatycznie się tym zajmuje. rozwiązać ten łańcuch zależności i zależności wstępnychOznacza to, że pobiera i instaluje wszystko, co niezbędne, łącznie z zależnościami, itd., aż do zamknięcia drzewa.
Problem pojawia się, gdy nie jest spełniony którykolwiek z tych warunków: jeśli wymagana biblioteka nie istnieje już w repozytoriach, jeśli instalujesz coś ze źle zapakowanego źródła zewnętrznego lub jeśli Instalacja lub aktualizacja została przerwana w trakcie procesuWtedy pojawiają się przerażające komunikaty o „niespełnionych zależnościach” i „uszkodzonych pakietach”.
Opakowanie uważa się za uszkodzone, gdy: Status instalacji jest niekompletny lub powoduje konflikt z resztą systemu (na przykład rozpakowany, ale nieskonfigurowany lub z niespełnionymi zależnościami). Od tego momentu mogą wystąpić błędy podczas instalowania, aktualizowania lub usuwania innych pakietów, ponieważ cały system zależności staje się niestabilny.
Dlatego tak ważne jest, aby wiedzieć jak sprawdzić, co od czego zależy i jak naprawić, gdy coś pójdzie nie takNajpierw przyjrzymy się najczęstszym przypadkom w systemach bazujących na Debianie/Ubuntu (DEB), następnie w świecie pakietów RPM (Fedora, CentOS, RHEL, openSUSE), a na koniec innym rodzinom, takim jak Arch Linux.
Wyświetlanie zależności w systemach DEB (Debian, Ubuntu i pochodne)
W ekosystemie Debian i Ubuntu liczenie zależności jest bardzo proste, ponieważ zestaw narzędzi jest bardzo ujednolicony: apt, apt-cache, dpkg i narzędzia uzupełniające podobnie jak apt-rdepends, obejmują one praktycznie wszystkie przypadki, których możesz potrzebować na co dzień.
Wyświetlanie zależności pakietu dostępnego w repozytoriach za pomocą apt-cache
Jeśli pakiet znajduje się w skonfigurowanych repozytoriach, możesz sprawdzić, czego potrzebuje:
apt-cache zależy od nazwy_pakietu
Na przykład, aby zobaczyć, od czego zależy vim:
apt-cache zależy od vim
Na wyjściu pojawią się wiersze takie jak „Depends:”, „PreDepends:”, „Suggests:” itd., które można zidentyfikować na pierwszy rzut oka obowiązkowe i zalecane zależnościTo szybki sposób, aby dowiedzieć się, jakie elementy zostaną przeniesione po zainstalowaniu konkretnego programu.
Jeśli chcesz uzyskać większy poziom szczegółowości, możesz połączyć go z innymi podpoleceniami apt-cache, takimi jak: pokażpkgktóry pokazuje również odwrotne zależności i wersje:
apt-cache showpkg vsftpd
Dzięki temu poleceniu oprócz pakietów, od których zależy vsftpd, zobaczysz, jakie inne pakiety są potrzebne Zależą od vsftpdSą to bardzo przydatne informacje przed odinstalowaniem usługi na serwerze produkcyjnym.
Wyświetl pełne drzewo zależności za pomocą apt-rdepends
Kiedy potrzebujesz nie tylko płaskiej listy, ale rekurencyjny łańcuch zależności (zależności zależności itd. szczegółowo), narzędziem gwiazdy jest apt-rdepends:
apt-rdepends nazwa_pakietu
To narzędzie zwykle nie jest instalowane domyślnie, dlatego musisz je najpierw dodać za pomocą:
sudo apt-get install apt-rdepends
Po zainstalowaniu apt-rdepends umożliwia dość zaawansowane przeglądanie stron internetowych. Oto kilka przydatnych opcji:
- -b (-build): pokazuje bezpośrednie zależności potrzebne do skompilowania pakietu.
- -p (-print-state): uwzględnia status pakietu i wersję w wynikach.
- -f (-follow=ZALEŻY):śledzi zależności i zależności, generując bardziej wyczerpujące drzewo.
Jeśli w dowolnym momencie zgubisz się w składni, zawsze możesz sprawdzić instrukcję narzędzia, korzystając z:
człowiek apt-rdepends
Automatyczna instalacja zależności kompilacji za pomocą apt-get build-dep
W środowiskach programistycznych bardzo często zachodzi potrzeba wszystkie zależności potrzebne do skompilowania pakietu z jego kodu źródłowegoWłaśnie do tego służy poniższe polecenie:
sudo apt-get build-dep nazwa_pakietu
To podpolecenie przeszukuje repozytoria w celu znalezienia informacji o pakiecie źródłowym i Instaluje wszystkie pakiety, od których zależy proces kompilacji.Należy jednak pamiętać, że nie powoduje to zainstalowania samego programu, a jedynie zależności kompilacji.
Na przykład podczas uruchamiania:
sudo apt-get build-dep gmc
System wyświetli podsumowanie, na przykład „Zostaną zainstalowane następujące NOWE pakiety…”, zawierające listę wszystkich bibliotek programistycznych, które zostaną dodane (-dev, narzędzia do kompilacji itp.). Następnie możesz zaimportować swój kod za pomocą:
apt-get source nazwa_pakietu
i skompiluj za pomocą standardowych narzędzi. To całkiem czysty sposób na przygotowanie środowiska bez konieczności ręcznego wyszukiwania zależności.
Wyświetlanie zależności luźnych pakietów DEB (pobranych plików .deb)
Kiedy to co masz jest Plik .deb pobrany ręcznie (na przykład ze strony internetowej osoby trzeciej) i chcesz sprawdzić jego zależności przed instalacją, możesz skorzystać z narzędzia niskiego poziomu dpkg-deb:
dpkg-deb -I mypackage.deb
To polecenie wyświetli nagłówek pakietu, w tym pole „Zależy:”, w którym wyraźnie widać Jakie inne pakiety powinien zainstalować system? aby plik .deb działał poprawnie. Przydaje się również, jeśli pracujesz z alternatywne pakiety, takie jak AppImageponieważ pomaga porównać, które zależności będą zarządzane przez system, a które przez sam pakiet.
Jest szczególnie przydatny w środowiskach, w których Nie chcesz uszkodzić menedżera pakietów poprzez dodawanie zewnętrznych pakietów bez ich sprawdzenia. co zawierają i czy są kompatybilne z wersją dystrybucji, z której korzystasz.
Inne przydatne polecenia w DEB: apt, dpkg, dpkg-query, which, whereis i locate
Oprócz listy zależności, pomocne będzie opanowanie kilku poleceń zapytań, aby dowiedzieć się, czy pakiet jest zainstalowany i gdzie się znajdujePomoże Ci to sprawdzić, czy zależności są faktycznie spełnione w Twoim systemie.
- apt -qq list nazwa_pakietu:pokazuje, czy pakiet jest zainstalowany, a także jego wersję i architekturę.
- apt-cache policy nazwa_pakietu: pokazuje zainstalowaną wersję, kandydata na wersję i repozytorium źródłowe.
- dpkg -l | grep -i nazwa_pakietu o dpkg-query –list | grep -i nazwa_pakietu:Wyświetlają listę pakietu, jego status i opis z bazy danych dpkg.
- który binarny:jeśli plik wykonywalny znajduje się w zmiennej środowiskowej PATH użytkownika, zwracana jest jego ścieżka (na przykład /bin/nano).
- gdzie jest binarne:pokazuje nie tylko plik wykonywalny, ale także powiązana dokumentacja i pliki (strony podręcznika, informacje, itp.).
- zlokalizuj wzór: bardzo szybko wyszukuje pliki w bazie danych lokalizacji, choć wymaga zainstalowanej i zaktualizowanej wersji Locale.
Łącząc te narzędzia z apt-cache i apt-rdepends można zbudować dość kompleksową mapę co jest zainstalowane, kto tego używa i czego brakuje tak, aby wszystko do siebie pasowało.
Wymień zależności i zależności odwrotne w środowisku RPM (Fedora, RHEL, CentOS, openSUSE)
Dystrybucje oparte na RPM oferują kilka potężnych narzędzi. Podstawą jest rpm, który współpracuje bezpośrednio z bazą danych pakietów i na niej opiera się na menedżerach wysokiego szczebla, takich jak mniam (w klasycznych systemach) lub dnf (w nowocześniejszych wersjach Fedory i pochodnych).
Sprawdź zależności zainstalowanego pakietu RPM lub pakietu RPM w repozytorium
Aby zapytać rpm o zależności zainstalowanego pakietu, należy użyć następującego polecenia:
rpm -qR nazwa_pakietu
opcja -qR (-wymaga) mówi rpm, aby wyświetlił listę wszystkie pakiety i możliwości, od których zależy ten pakietJest to odpowiednik, na niskim poziomie, funkcji zależnej od apt-cache w świecie DEB.
Jeśli to co masz to luźny plik .rpm (niezainstalowany) i chcesz sprawdzić jego zależności przed zainstalowaniem w systemie, polecenie zmienia się nieznacznie:
rpm -qpR plik .rpm
Tutaj -p Każe RPM działać. o pliku pakietu na dysku zamiast na podstawie zainstalowanych pakietów.
Oprócz -R, rpm akceptuje bardzo przydatne kombinacje pozwalające uzyskać szerszy kontekst, na przykład: -ql Wypisz pliki zawarte w pakiecie, -qi Oferuje szczegółowe informacje (podsumowanie, wersję, grupę itp.) i -V Zweryfikuj jego integralność w odniesieniu do bazy danych (właściciele, uprawnienia, skróty…).
Wyświetlaj zależności, odwracaj zależności i wiele więcej dzięki Yum/DNF
W warstwie RPM menedżery takie jak yum i dnf znacznie upraszczają wykonywanie zapytań i rozwiązywanie zależności, a także zarządzanie repozytoriami, aktualizacjami i całym cyklem życia oprogramowania.
W przypadku yum masz kilka bardzo przydatnych podpoleceń bezpośrednio związanych z zależnościami:
- yum deplit nazwa_pakietu: pokazuje zależności konkretnego pakietu, niezależnie od tego, czy jest on zainstalowany lub dostępny w repozytoriach.
- yum solvedep dependency: zwraca pakiety, które spełniają daną zależność (nazwę biblioteki, pojemność wirtualną itp.).
- yum udostępnia ścieżkę_lub_plik:mówi ci do którego pakietu należy konkretny plik?, bardzo przydatne, gdy wiesz, jakiego pliku binarnego lub biblioteki brakuje, ale nie wiesz, w którym pakiecie go brakuje.
Również z yum info nazwa_pakietu Można zobaczyć szczegółowe informacje o pakiecie (w tym podsumowanie i repozytorium źródłowe) oraz yum list nazwa_pakietu Porównujesz zainstalowaną wersję z tą dostępną do aktualizacji.
W bardziej zaawansowanych scenariuszach yum integruje również szybki przewodnik po czynnościach takich jak instalowanie, aktualizowanie, usuwanie, wyświetlanie grup pakietów, przeglądanie aktywnych repozytoriów, zarządzanie historią transakcji i wiele innych, umożliwiając nie tylko po to, by sprawdzić zależności, ale także po to, by zrozumieć, co zostało zainstalowane, kiedy i skąd.
Podobieństwa między poleceniami RPM i Yum
Jeśli przełączasz się między rpm i yum, warto pamiętać o kilku podstawowych równoważnościach, aby się nie pogubić:
- Zainstaluj pakiet: rpm -ivh - o obr./min -Uvh ≈ yum zainstalować (ten ostatni rozwiązuje i instaluje zależności).
- Usuń pakiet: obr./min -e ≈ mniam usuń.
- Sprawdź informacje o pakiecie: obr./min -qi ≈ mniam informacja.
- Wyszukaj pakiet według nazwy: ciąg wyszukiwania yum ≈ rpm -qa | grep chain (ten ostatni informuje, czy jest zainstalowany).
Morał tej historii jest taki, że w przypadku pytań o zależności, rpm udostępnia „surowe” szczegóły, a yum ułatwia rozwiązywanie problemów., pobieranie i operacje zbiorcze na pakietach ze zdalnych repozytoriów.
Wyświetlanie zależności w systemie Arch Linux i pochodnych (Pacman/Pactree)
W dystrybucjach Arch Linux i opartych na Pacmanie (Manjaro, EndeavourOS itp.) dostępne jest bardzo wydajne i wygodne narzędzie do wizualizacji relacji: pactreeW przeciwieństwie do płaskich wyników innych systemów, Pactree reprezentuje hierarchiczne drzewo zależności, o wiele bardziej czytelne na pierwszy rzut oka.
Na przykład, aby sprawdzić drzewo zależności vim, możesz uruchomić:
pactree vim
Dane wyjściowe wyświetlane są w stylu podobnym do polecenia drzewa, rozgałęziając każdą zależność i jej podzależności:
vim
├─vim-runtime
├─gpm
│ └─bash
│ ├─readline
│ │ ├─glibc
│ │ ├─nagłówki-api-linux
│ │ ├─tzdata
│ │ └─system plików
└─acl
└─atrybut
└─glibc
Jak widać, bardzo łatwo jest to śledzić wizualnie. które paczki wiszą na każdym poziomieJeśli chcesz odwrócić perspektywę i zobaczyć, które pakiety zależą od konkretnego, możesz także użyć innych narzędzi Pacman, ale jeśli chodzi o widok „od dołu”, Pactree jest trudny do pobicia.
Jeśli chcesz w pełni wykorzystać jego możliwości, zapoznaj się z stronami podręcznika:
mężczyzna pactree
Wyświetlanie zależności w SUSE i openSUSE (Zypper)
W dystrybucjach takich jak openSUSE i SLE referencyjnym menedżerem pakietów jest zypperOprócz instalowania, aktualizowania i usuwania oprogramowania umożliwia również wygodne sprawdzanie zależności.
Aby sprawdzić, czego wymaga konkretny pakiet, np. vim, możesz użyć:
zypper info –wymaga vim
To polecenie wyświetli standardowe informacje o pakiecie (nazwę, wersję, repozytorium itp.) wraz z sekcją zawierającą listę wymagań wszystkie zależności, które muszą być obecne w systemieJest to odpowiednik polecenia „Depends” w poleceniu apt-cache lub polecenia „Requires” w poleceniu rpm -qR.
W połączeniu z innymi opcjami Zyppera (takimi jak wyszukiwanie wzorców, lista repozytoriów itp.) umożliwia ona utrzymanie dość dokładna kontrola nad tym, które pakiety zawierają które biblioteki w środowisku SUSE.
Jak sprawdzić, które pakiety zależą od innych (zależności odwrotne)
Tak samo ważne jak wiedza o tym, od czego zależy pakiet, jest poznanie które inne pakiety od niego zależąTaka odwrotna kontrola zależności jest kluczowa przed odinstalowaniem czegoś pozornie „nieszkodliwego”, co w rzeczywistości może być wykorzystane w połowie systemu.
W systemach Debian/Ubuntu możesz użyć:
- apt-cache rdepends nazwa_pakietu: wyświetla listę pakietów zależnych od określonego pakietu.
- apt-cache showpkg nazwa_pakietuOprócz informacji o pakiecie i jego zależnościach zawiera sekcję „Reverse Depends” zawierającą informacje o pakietach, które tego wymagają.
W świecie RPM yum oferuje również sposoby jego przeglądania:
- yum deplit nazwa_pakietu:na podstawie wyników można pośrednio zobaczyć, kto przyczynia się do każdej zależności.
- yum udostępnia file_or_capacityInformuje Cię, które pakiety zapewniają konkretną bibliotekę lub plik, dzięki czemu możesz wnioskować Co by się stało, gdybym je usunął?.
Łącząc te zapytania, można łatwo odpowiedzieć na pytania takie jak: „Jeśli usunę tę bibliotekę, które aplikacje przestaną działać?”. A w przypadku serwera lub krytycznego środowiska graficznego jest to czyste złoto.
Sprawdź zależności plików binarnych za pomocą ldd
Oprócz menedżerów pakietów czasami możesz być zainteresowany poznaniem z których bibliotek dynamicznych korzysta konkretny plik binarnyNa przykład w celu debugowania błędu ładowania lub problemu z wersjami biblioteki libc.
Standardowym narzędziem do tego w systemach typu Unix jest lddJego podstawowe użycie jest bardzo proste:
ldd /ścieżka/do/pliku_binarnego
Wynik pokaże każdą bibliotekę współdzieloną potrzebną plikowi binarnemu, wraz ze ścieżką, z której jest odczytywana, oraz kierunkiem ładowania. Jeśli którakolwiek z nich wyświetla się jako „nie znaleziono”, oznacza to, że… Brak zależności w systemie lub nie znajduje się ona na prawidłowej ścieżce wyszukiwania.
Jeśli chcesz zobaczyć informacje bardziej szczegółowo i prześledzić wewnętrzne zależności samych bibliotek, możesz użyć:
ldd -v /ścieżka/do/pliku_binarnego
Opcja -v dodaje dodatkowe informacje i może pomóc weryfikować wersje, eksportowane symbole i inne szczegóły, które w środowiskach produkcyjnych często decydują o tym, czy usługa uruchomi się poprawnie, czy ulegnie awarii.
Naprawianie uszkodzonych pakietów i niespełnionych zależności w systemach Debian/Ubuntu
Jakkolwiek ostrożny byś nie był, prędzej czy później natkniesz się na system, który narzeka uszkodzone pakiety, niespełnione zależności lub zablokowane plikiZanim wpadniesz w panikę, ważne jest, aby zrozumieć koncepcję i ustalić rozsądną kolejność odzyskiwania danych.
Uszkodzony pakiet pojawia się zazwyczaj, gdy instalacja lub aktualizacja zostanie przerwana, gdy zostaną zainstalowane źle skonstruowane pakiety zewnętrzne lub gdy Niezgodne repozytoria są mieszane razemTypowy objaw: nie można zainstalować ani zaktualizować czegokolwiek, ponieważ apt odmawia kontynuowania pracy do momentu rozwiązania konfliktu.
Pierwsza próba: dpkg i apt w celu rekonfiguracji i naprawy
Pierwszym logicznym krokiem jest poproszenie programu dpkg o dokończenie konfiguracji tego, co pozostało niedokończone:
sudo dpkg –konfiguruj -a
To polecenie wymusza konfigurację wszystkich rozpakowanych, ale nieskonfigurowanych pakietów. Jeśli po instalacji były jakieś oczekujące skrypty, zostaną one teraz wykonane. Często samo to wystarcza. „Stany niespójne są rozwiązywane”.
Jeśli nadal nie działa, zaleca się wyczyszczenie lokalnej pamięci podręcznej .deb, aby uniknąć uszkodzonych pozostałości i zwolnij miejsce na dysku:
sudo apt-get clean && sudo apt-get autoclean
Następnie regenerujemy informacje o repozytorium i pozwalamy programowi apt spróbować odbudować zależności, korzystając z opcji fix:
sudo apt-get update –fix-missing
sudo apt-get install -f
Połączenie –Popraw brakujące y -f (-fix-broken) To nakazuje programowi podjąć próbę rozwiązania niespójnych pakietów i niespełnionych zależności, instalując lub naprawiając to, co jest potrzebne. To jedno z najskuteczniejszych narzędzi przed uciekaniem się do bardziej agresywnych środków.
Jeśli nadal widzisz komunikat blokady, taki jak „Nie można zablokować”, może to oznaczać, że przestarzałe pliki blokadyW takim przypadku, i tylko jeśli masz pewność, że nie jest uruchomiony żaden apt lub dpkg, możesz je usunąć:
sudo rm /var/lib/apt/lists/lock && sudo rm /var/cache/apt/archives/lock && sudo rm /var/lib/dpkg/lock
Następnie powtórz poprzednią sekwencję poleceń (configure, clean, update, install -f), aby sprawdzić, czy system wrócił do prawidłowego stanu.
Ręcznie usuń uszkodzony pakiet za pomocą dpkg
Jeśli problem nadal występuje, następnym krokiem będzie dokładne ustalenie jego przyczyny. Który pakiet jest uszkodzony. W tym celu możesz użyć:
sudo dpkg -l | grep ^..r
Pakiety oznaczone literą „r” w swoim statusie oznaczają niekompletne lub uszkodzone instalacjePo zidentyfikowaniu nazwy możesz spróbować ją siłą usunąć:
sudo dpkg –remove –force-remove-reinstreq nazwa_pakietu
To polecenie wymusza na programie dpkg usunięcie pakietu powodującego konflikt, nawet jeśli jego stan jest niespójny. Następnie czyści pamięć podręczną i ponownie aktualizuje.
sudo apt-get clean && sudo apt-get autoclean
sudo apt-get update && sudo apt-get dist-upgrade
Jeżeli system aktualizuje się bez zarzutów, to najprawdopodobniej przywróciłeś bazę danych pakietów do stanu stabilnego i możesz normalnie kontynuować pracę.
Użyj Synaptic do graficznej naprawy uszkodzonych pakietów
Jeśli wolisz bardziej wizualne podejście lub pomagasz komuś, kto nie czuje się pewnie w terminalu, menedżer pakietów Synaptic Nadal jest to bardzo potężne narzędzie.
Najpierw zainstaluj (jeśli jeszcze go nie masz):
sudo apt-get install synaptic
Następnie otwórz go i:
- Aktywuj Filtros i wybierz filtr Złamany.
- Znajdź przesyłkę, która wygląda na uszkodzoną.
- Kliknij prawym przyciskiem myszy i wybierz «Zaznacz, aby całkowicie odinstalować».
- Zastosuj zmiany, aby Synaptic mógł spróbować Usuń problematyczny pakiet i odbuduj zależności.
Dodatkowo w menu Edytuj → Napraw uszkodzone pakietySynaptic zawiera opcję automatyczną, która próbuje rozwiązywać nieścisłości w partiach, co może zaoszczędzić Ci kilku czynności wykonywanych ręcznie.
Ostateczność: edytuj plik statusu dpkg
Jeśli wszystko inne zawiedzie, pozostaje jedno zaawansowane i delikatne rozwiązanie: bezpośrednio edytuj plik /var/lib/dpkg/status, w którym dpkg przechowuje stan każdego zainstalowanego pakietu.
Pomysł polega na otwarciu go za pomocą edytora tekstu w trybie superużytkownika:
sudo nano /var/lib/dpkg/status
Po wejściu do środka poszukaj bloku opisującego uszkodzony pakiet (zaczyna się od „Pakiet: nazwa_pakietu” i zawiera kilka pól, takich jak „Status:”, „Wersja:” itd.) i usuń cały ten blokTo tak, jakby usunąć jego istnienie z bazy danych dpkg.
Zapisz zmiany, zamknij edytor, a następnie uruchom:
sudo apt-get clean && sudo apt-get update && sudo apt-get dist-upgrade
Jeśli nie ma dalszych niespójności, system powinien być sprawny. Technikę tę należy stosować ostrożnie i, jeśli to możliwe, wraz z kopią zapasową pliku stanu na wypadek konieczności cofnięcia zmiany.
Dzięki temu arsenałowi poleceń — apt-cache, apt-rdepends, rpm, yum, pactree, zypper, ldd oraz narzędziom naprawczym dpkg i apt — masz teraz całkiem obszerny przegląd Jak wyświetlić listę zależności pakietów w systemie Linux, dowiedzieć się, co od czego zależy i jak zareagować, gdy coś ulegnie awarii.Znajomość tych narzędzi nie tylko zapewni Ci spokój ducha podczas instalowania oprogramowania, ale także umożliwi Ci odczytywanie komunikatów systemu przy każdym błędzie i podejmowanie świadomych decyzji bez działania w ciemno.
Pisarz z pasją zajmujący się światem bajtów i technologii w ogóle. Uwielbiam dzielić się swoją wiedzą poprzez pisanie i właśnie to będę robić na tym blogu, pokazywać Ci wszystkie najciekawsze rzeczy o gadżetach, oprogramowaniu, sprzęcie, trendach technologicznych i nie tylko. Moim celem jest pomóc Ci poruszać się po cyfrowym świecie w prosty i zabawny sposób.
