Jak zapobiegać i naprawić błędy zależności pakietu w Ubuntu

Jak zapobiegać i naprawić błędy zależności pakietu w Ubuntu
Błędy zależności pakietu mogą wystąpić w Ubuntu po zainstalowaniu niektórych aplikacji. Decyzje podejmowane przez użytkowników podczas instalacji lub problemów systemowych wymykające się z kontroli użytkowników mogą prowadzić do zepsutych pakietów.

Jeśli widzisz słowa takie jak „niezaspokojone zależności”, „zepsute pakiety”, „pakiety zostały powstrzymane” pod względem wyników końcowych, są szanse, że możesz mieć konflikty zależności. W tym artykule wymieniono kilka metod, które można zastosować do zapobiegania i naprawy tego rodzaju błędów zależności. Zauważ, że metody sugerowane poniżej nie są w żadnej kolejności.

Zaktualizuj pakiety

Pierwszą rzeczą do zrobienia w przypadku błędów jest uruchomienie polecenia aktualizacji. Odświeży wszelkie oficjalne i zewnętrzne repozytoria, które dodałeś do swojego systemu, i wyciągnie nową listę pakietów. Uruchamianie polecenia aktualizacji z terminal omija fazowe wdrażanie oficjalnych pakietów Ubuntu za pośrednictwem GUI Updater, więc zawsze otrzymujesz najnowszą listę pakietów.

Możesz aktualizować repozytoria, uruchamiając następujące polecenie:

Aktualizacja $ sudo apt

Zmień serwer pobierania pakietu

Jeśli otrzymasz błędy „Nie możesz zlokalizować pakietu” podczas uruchamiania powyższego polecenia aktualizacji, spróbuj zmienić lustra pobierania. Pakiety Ubuntu są podawane użytkownikom końcowym z serwerów znajdujących się na całym świecie. Czasami na tych serwerach dostępne są tylko częściowe lub zepsute aktualizacje pakietów, co powoduje błędy podczas aktualizacji. Ten problem jest zwykle rozwiązywany automatycznie po pewnym czasie, gdy wszystkie pakiety Ubuntu są prawidłowo sklonowane w tych lustrach. Możesz jednak ręcznie zmienić lokalizację lustra, aby rozwiązać ten problem.

Aby zmienić serwer do pobrania, uruchom aplikację „Oprogramowanie i aktualizacje” z uruchamiania aplikacji. Na karcie „Ubuntu Software” wybór „głównego serwera” na liście rozwijanej „Pobierz z” jest prawie gwarantowane, aby naprawić wszelkie problemy z dostępnością pakietu. Jednak prędkość pobierania może być niska w zależności od lokalizacji i bliskości serwerów. Ubuntu domyślnie wybiera serwer, który zapewni maksymalną prędkość w oparciu o bieżącą lokalizację. Możesz go zastąpić, wybierając dowolny wymieniony serwer lub klikając „Wybierz najlepszy serwer”, aby pozostawić wybór na Ubuntu.

Pakiety aktualizacji

Uaktualnienie zainstalowanych pakietów może naprawić błędy zależności. Dostępne są dwa polecenia do aktualizacji pakietów Ubuntu, oba mają różne zachowania:

  • „Aktualizacja”: aktualizacje zainstalowane pakiety Jeśli dostępne są jakieś aktualizacje, nie usuwają żadnego pakietu, nawet jeśli są niezaspokojone i zepsute zależności
  • „Dist-Upgrade”: próby eleganckiej aktualizacji pakietów i rozwiązywania zależności, usuwania zepsutych i instalujących nowe zależności wszędzie tam, gdzie jest to wymagane, aby naprawić błędy

Polecenia do aktualizacji i rozszerzenia odpowiednio to:

Aktualizacja $ sudo apt
$ sudo apt dist-upgrade

Oczyść buforowane i resztkowe pakiety

Menedżer pakietów Ubuntu „Apt” utrzymuje pobierane pakiety w folderze pamięci podręcznej. Następnym razem, gdy będziesz musiał ponownie zainstalować pakiet, który został już buforowany, Ubuntu otrzyma pakiet Deb z folderu pamięci podręcznej zamiast ponownego pobrania z serwera. Wyczyszczenie tej pamięci podręcznej usuwa miejsce na dysku, a także pomaga w ustalaniu błędów zależności i instalacji w niektórych przypadkach.

Pamięć podręczną pakietu APT można usunąć, uruchamiając poniższe polecenie:

$ sudo apt czysty

Istnieje inne apt „autoklean”, które usuwa pamięć podręczną pakietu. Jednak zamiast wyczyścić cały folder, usuwa tylko pakiety, które zostały usunięte z serwerów repozytorium.

$ sudo apt autoklean

Wykonaj próbną instalację

Możliwe jest symulacja instalacji pakietu, aby sprawdzić wszelkie potencjalne błędy występujące podczas prawdziwej instalacji. Uruchom poniższe polecenie, zastępując „Nazwa pakietu” żądaną nazwą pakietu (bez cytatów), aby wykonać próbną instalację.

$ sudo apt instal-sucha „nazwa pakietu”

Wyprowadzanie próbnego można wykonać w ten sam sposób:

$ sudo apt usuń-suszony „nazwa pakietu”

Napraw złamane pakiety

Możliwe jest, że są zepsute pakiety i niezaspokojone zależności, szczególnie gdy instalujesz wiele pakietów jednocześnie. Poniższe polecenie podejmie próbę rozwiązania tych problemów, instalując i naprawiając zepsute zależności lub usuwając pakiet, który jest odpowiedzialny za konflikt zależności.

$ sudo apt -f instalacja

Skonfiguruj pakiety nie udało się zainstalować z powodu przerw

Czasami APT Pakiet Manager zatrzymuje się nagle, pozostawiając pakiety, które nie skonfigurowały. Te przerwy są zwykle spowodowane czynnikami wymykającymi się z kontrolą nad menedżerem pakietów Apt. Na przykład, jeśli przypadkowo zamkniesz terminal lub komputer nagle się wyłączy, Apt nie będzie w stanie zakończyć konfiguracji. Uruchomienie poniższego polecenia naprawi błędy pakietu i problemy zależności wynikające z tego problemu.

$ sudo dpkg -configure -a

Użyj PPA-Purge

„Archiwum osobistego pakietu” lub PPA to repozytorium oprogramowania, które pozwala użytkownikom Ubuntu na aktualizację lub instalowanie nowych pakietów z nieoficjalnych źródeł. PPA-Purge to narzędzie, które usuwa te zewnętrzne źródła PPA i obniża pakiety zainstalowane z PPA do wersji magazynowych. Korzystanie z PPA-PURGE rozwiąże wszelkie konflikty zależności wynikające z zainstalowanych lub zaktualizowanych pakietów z PPA. Aby zainstalować aplikację wiersza poleceń PPA-PURGE w Ubuntu, uruchom następujące polecenie:

$ sudo apt instinst instaluj pPA-purge

Aby usunąć PPA, uruchom polecenie w następującym formacie:

$ sudo pPA-Purge „PPA: Adres”

Na przykład dodany stąd edytor tekstu Geane można usunąć, aby uruchomić polecenie:

$ sudo pPA-Purge PPA: Geane-dev/pPA

Użyj menedżera pakietów Aptitude

Zamiast domyślnego menedżera pakietów Apt APT może być używany. Aptitude jest nowsze niż APT Pakiet Manager i zapewnia dodatkowe opcje, frontend oparty na terminalu i ogólna łatwość użycia. Aptitude łączy wiele opcji trafnych w jednym poleceniu, dzięki czemu nie musisz uruchamiać wielu poleceń, aby naprawić błędy.

Na przykład użycie menedżera pakietów Aptitude w celu usunięcia nawet pojedynczego pakietu zapewni opcję usunięcia nieużywanych i resztek pakietów, podczas gdy istnieje osobne polecenie w APT, aby zrobić to samo. Zdolność jest znacznie mądrzejsza w rozdzielczości konfliktów zależności niż APT, zwykle zawiera szczegółowe informacje zwrotne w celu rozwiązania konfliktów, z wieloma opcjami, które mogą być wybrane przez użytkownika. Zawsze upewniam się, że w moim systemie są instalowane umiejętności i PPA.

Udoskonalanie można zainstalować, uruchamiając polecenie poniżej:

$ sudo apt instaluj umiejętności

Zdolność i apt dzielą wiele opcji wiersza poleceń z umiejętnościami o kilku różnicach. Możesz zbadać wszystkie opcje umiejętności stąd.

Ponownie zainstaluj pakiet pulpitu Ubuntu

Ponowna instalowanie pakietu „Ubuntu-Desktop” przyciągnie niezbędne pakiety, które zostały domyślnie zainstalowane w Ubuntu. Otrzymuje wszystkie pakiety, które zależy od pakietu meta. Aby ponownie zainstalować Ubuntu-Desktop, uruchom polecenie poniżej:

$ sudo apt instal --reinstall Ubuntu-Desktop

Zauważ, że powyższe polecenie zainstaluje tylko podstawowe pakiety, a nie aplikacje takie jak Firefox, Thunderbird, Video Player itc.

Usuń lub wyłącz PPA przed aktualizacją do nowszej wersji Ubuntu

Mimo że Ubuntu wyłącza dowolne PPA przed dokonaniem aktualizacji systemu, aby zapobiec niezaspokojonym błędom zależności podczas aktualizacji systemu i po nim, powinieneś ręcznie usunąć dowolne PPA stron trzecich. Najlepszym sposobem na to jest uruchomienie polecenia PPA-Purge wyjaśnione powyżej.

Możesz także usunąć tylko repozytoria PPA. Nie może to jednak zapobiec błędom zależności podczas aktualizacji. PPA można usunąć na dwa sposoby, pierwszy obejmuje użycie wiersza poleceń, a drugi wymaga użycia aplikacji GUI. Należy zauważyć, że metody te usuną tylko repozytoria PPA, pozostawiając wszelkie wcześniej zaktualizowane lub zainstalowane pakiety w systemie.

Aby usunąć PPA za pomocą wiersza polecenia, uruchom polecenie poniżej w następującym formacie:

$ sudo add-apt-repozytory-Remove „PPA: Nazwa”

Na przykład dodana stąd edytor tekstu Geane można usunąć, uruchamiając polecenie:

$ sudo add-apt-repozytory-Remove PPA: Geane-dev/pPA

Aby usunąć PPA za pomocą metody GUI, zwykle musisz uruchomić aplikację „Oprogramowanie i aktualizacje” z uruchamiania aplikacji. Jednak z powodu błędu w Ubuntu ta metoda nie zawsze działa i nie jest wyłączona PPA.

Aby to obejść, musimy zainstalować Menedżer Pakietów Synaptic, który jest frontendą dla APT. Aby zainstalować synaptyczne, uruchom polecenie:

$ sudo apt instint synaptyczne

Uruchom „Synaptic Pakiet Manager” z aplikacji Launcher. Kliknij „Ustawienia”> „Repozytoria”. Przejdź do zakładki „Inne oprogramowanie” i kliknij PPA, który chcesz usunąć, aby ją podkreślić. Kliknij przycisk „Usuń” na dole, aby usunąć PPA z systemu. Możesz także wyłączyć PPA bez jego usuwania, aby można go było ponownie włączyć po aktualizacji systemu. Po prostu odznacz pole wyboru przed PPA. Po wykonaniu powyższych kroków zamknij okno „oprogramowanie i aktualizacje”. Po wyświetleniu monitu o odświeżenie repozytoriów kliknij przycisk „Załaduj”.

Bądź ostrożny, dodając nowe PPA do systemu

Większość razy błędy zależności pojawiają się podczas korzystania z PPA osób trzecich lub instalacji pakietów Deb z nieoficjalnych źródeł. Istnieje również szansa na złośliwe oprogramowanie w systemie przez PPA. Dlatego zawsze należy zachować ostrożność przy dodawaniu dowolnego losowego PPA do swojego systemu. Dodaj PPA tylko wtedy, gdy ufasz jego źródłowi i opiekunom / programistom. Chociaż do tej pory nie słyszeliśmy o złośliwym oprogramowaniu ani oprogramowaniu adwera.

Wniosek

Są to niektóre metody, które można użyć do naprawy i zapobiegania błędom zależności w Ubuntu. Rzeczy mają tendencję do pękania, szczególnie podczas korzystania z Ubuntu jako głównego środowiska programistycznego z mnóstwem aplikacji zewnętrznych i narzędzi wiersza poleceń. Jednak większość tych błędów zależności można zminimalizować, instalując aplikacje z oficjalnych, renomowanych i zaufanych źródeł.