Ubuntu

Jak zapobiegać i naprawiać błędy zależności pakietów w Ubuntu?

Jak zapobiegać i naprawiać błędy zależności pakietów w Ubuntu?
Błędy zależności pakietów mogą wystąpić w Ubuntu po zainstalowaniu niektórych aplikacji. Decyzje podejmowane przez użytkowników podczas instalacji lub problemy na poziomie systemu pozostające poza kontrolą użytkowników mogą prowadzić do uszkodzenia pakietów.

Jeśli widzisz słowa takie jak „niezaspokojone zależności”, „uszkodzone pakiety”, „pakiety zostały zatrzymane” w wynikach terminala, są szanse, że możesz mieć konflikty zależności. W tym artykule wymienimy kilka metod, których można użyć, aby zapobiegać tego rodzaju błędom zależności i je naprawiać. Zauważ, że metody sugerowane poniżej nie są w dowolnej kolejności any.

Aktualizuj pakiety

Pierwszą rzeczą do zrobienia w przypadku błędów jest uruchomienie polecenia aktualizacji. Odświeży wszystkie repozytoria oficjalne i stron trzecich, które dodałeś do swojego systemu i pobierze nową listę pakietów. Uruchomienie polecenia aktualizacji z terminala omija stopniowe wdrażanie oficjalnych pakietów Ubuntu za pośrednictwem aktualizatora GUI, dzięki czemu zawsze otrzymujesz najnowszą listę pakietów.

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

$ sudo apt aktualizacja

Zmień serwer pobierania pakietów

Jeśli po uruchomieniu powyższego polecenia aktualizacji pojawią się błędy „nie można zlokalizować pakietu”, spróbuj zmienić serwery lustrzane pobierania. Pakiety Ubuntu są dostarczane użytkownikom końcowym z serwerów zlokalizowanych na całym świecie. Czasami z tych serwerów dostępne są tylko częściowe lub uszkodzone aktualizacje pakietów, co powoduje błędy podczas aktualizacji. Ten problem jest zwykle rozwiązywany automatycznie po pewnym czasie, gdy wszystkie pakiety Ubuntu zostaną poprawnie sklonowane w tych serwerach lustrzanych. Możesz jednak ręcznie zmienić lokalizację lustra, aby rozwiązać ten problem.

Aby zmienić serwer pobierania, uruchom aplikację „Oprogramowanie i aktualizacje” z poziomu uruchamiania aplikacji. Na karcie „Oprogramowanie Ubuntu” wybranie „Serwer główny” z listy rozwijanej „Pobierz z” prawie na pewno naprawi wszelkie problemy z dostępnością pakietu. Jednak prędkość pobierania może być niska w zależności od Twojej lokalizacji i bliskości serwerów. Ubuntu domyślnie wybiera serwer, który zapewni maksymalną prędkość na podstawie Twojej aktualnej lokalizacji. Możesz to zmienić, wybierając dowolny serwer z listy lub klikając „Wybierz najlepszy serwer”, aby pozostawić wybór na Ubuntu.

Pakiety uaktualnień

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

Polecenia aktualizacji i dist-upgrade to odpowiednio:

$ sudo apt aktualizacja
$ sudo apt dist-upgrade

Wyczyść buforowane i pozostałe pakiety

Menedżer pakietów Ubuntu „apt” przechowuje pobrane pakiety w folderze pamięci podręcznej. Następnym razem, gdy będziesz musiał ponownie zainstalować pakiet, który został już zbuforowany, Ubuntu pobierze pakiet deb z folderu pamięci podręcznej zamiast ponownie pobrać go z serwera. Wyczyszczenie tej pamięci podręcznej zwalnia miejsce na dysku, a także pomaga w niektórych przypadkach naprawić błędy zależności i instalacji.

Pamięć podręczną pakietów Apt można wyczyścić, uruchamiając poniższe polecenie:

$ sudo apt czyste

Jest jeszcze jedno polecenie apt „autoclean”, które czyści pamięć podręczną pakietów. Jednak zamiast czyścić cały folder, usuwa tylko pakiety, które zostały usunięte z serwerów repozytorium.

$ sudo apt autoczyszczenie

Wykonaj próbną instalację

Możliwa jest symulacja instalacji pakietu w celu sprawdzenia ewentualnych błędów występujących podczas rzeczywistej instalacji. Uruchom poniższe polecenie, zastępując „nazwę pakietu” żądaną nazwą pakietu (bez cudzysłowów), aby wykonać symulowaną instalację.

$ sudo apt install --dry-run „nazwa pakietu”

Próbne usunięcie można wykonać w ten sam sposób:

$ sudo apt remove --dry-run „nazwa pakietu”

Napraw uszkodzone pakiety

Możliwe jest posiadanie uszkodzonych pakietów i niezaspokojonych zależności, zwłaszcza gdy instalujesz wiele pakietów jednocześnie. Poniższe polecenie podejmie próbę naprawienia tych problemów poprzez zainstalowanie i naprawę uszkodzonych zależności lub całkowite usunięcie pakietu odpowiedzialnego za konflikt zależności.

$ sudo apt -f zainstaluj

Konfiguracja pakietów nie powiodła się z powodu przerw

Czasami menedżer pakietów apt nagle przestaje zostawiać pakiety, których nie udało się skonfigurować. Przerwy te są zwykle spowodowane czynnikami poza kontrolą menedżera 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 pakietów i problemy z zależnościami wynikające z tego problemu.

$ sudo dpkg --configure -a

Użyj PPA-Purge

„Osobiste archiwum pakietów” lub PPA to repozytorium oprogramowania, które pozwala użytkownikom Ubuntu aktualizować lub instalować nowe pakiety z nieoficjalnych źródeł. PPA-Purge to narzędzie, które usuwa te źródła PPA stron trzecich i obniża wersję zainstalowanych pakietów z PPA do wersji stockowych. Korzystanie z PPA-Purge rozwiąże wszelkie konflikty zależności wynikające z pakietów zainstalowanych lub uaktualnionych z PPA. Aby zainstalować aplikację wiersza poleceń PPA-Purge w Ubuntu, uruchom następujące polecenie:

$ sudo apt install ppa-purge

Aby wyczyścić PPA, uruchom polecenie w następującym formacie:

$ sudo ppa-purge “ppa:adres”

Na przykład edytor tekstu Geany PPA dodany z tutaj można wyczyścić, uruchamiając polecenie:

$ sudo ppa-purge ppa:geany-dev/ppa

Użyj Menedżera pakietów Aptitude

Menedżer pakietów Aptitude może być użyty zamiast domyślnego menedżera pakietów apt w Ubuntu w celu rozwiązania błędów zależności. Aptitude jest nowszy niż menedżer pakietów apt i zapewnia dodatkowe opcje, interfejs oparty na terminalu i ogólną łatwość użytkowania. Aptitude łączy wiele trafnych opcji 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 do usunięcia nawet jednego pakietu da ci opcję usunięcia nieużywanych i pozostałych pakietów, podczas gdy w apt jest osobne polecenie, które robi to samo. Aptitude jest znacznie mądrzejszy w rozwiązywaniu konfliktów zależności niż apt, zwykle daje szczegółowe informacje zwrotne w celu rozwiązania konfliktów, z wieloma opcjami, które może wybrać użytkownik. Zawsze upewniam się, że aptitude i PPA-Purge są zainstalowane w moim systemie przed otrzymaniem jakichkolwiek wysoce eksperymentalnych pakietów.

Aptitude można zainstalować, uruchamiając poniższe polecenie:

$ sudo apt install aptitude

Aptitude i apt mają wiele opcji wiersza poleceń, a aptitude ma kilka różnic. Możesz zapoznać się ze wszystkimi opcjami umiejętności od tutaj.

Zainstaluj ponownie pakiet Ubuntu Desktop

Ponowna instalacja pakietu „ubuntu-desktop” spowoduje pobranie niezbędnych pakietów, które były domyślnie instalowane w Ubuntu. Otrzyma wszystkie pakiety zależne od pakietu meta ubuntu-desktop. Aby ponownie zainstalować Ubuntu-desktop, uruchom poniższe polecenie:

$ sudo apt install --reinstall ubuntu-desktop

Zauważ, że powyższe polecenie zainstaluje tylko podstawowe pakiety, a nie aplikacje takie jak Firefox, Thunderbird, odtwarzacz wideo itp.

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

Mimo że Ubuntu wyłącza wszelkie umowy PPA przed aktualizacją systemu, aby zapobiec niespełnionym błędom zależności podczas i po aktualizacji systemu, należy ręcznie usunąć wszystkie umowy PPA innych firm. Najlepszym sposobem na to jest uruchomienie opisanego powyżej polecenia PPA-Purge.

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

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

$ sudo add-apt-repository --remove „ppa:nazwa”

Na przykład edytor tekstu Geany PPA dodany z tutaj można usunąć, uruchamiając polecenie:

$ sudo add-apt-repository --remove ppa:geany-dev/ppa

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

Aby obejść ten problem, musimy zainstalować menedżera pakietów Synaptic, który jest nakładką na apt. Aby zainstalować Synaptic, uruchom polecenie:

$ sudo apt install synaptic

Uruchom „Synaptic Package Manager” z poziomu uruchamiania aplikacji. Kliknij „Ustawienia” > „Repozytoria”. Przejdź do zakładki „Inne oprogramowanie” i kliknij PPA, który chcesz usunąć, aby go podświetlić. Kliknij przycisk „Usuń” na dole, aby usunąć PPA z systemu. Możesz także wyłączyć PPA bez usuwania go, aby można go było ponownie włączyć po aktualizacji systemu. Aby to zrobić, usuń zaznaczenie pola 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 „Odśwież”.

Zachowaj ostrożność podczas dodawania nowych umów PPA do systemu

W większości przypadków błędy zależności pojawiają się podczas korzystania z zewnętrznych umów PPA lub instalowania pakietów deb z nieoficjalnych źródeł. Istnieje również ryzyko, że złośliwe oprogramowanie dostanie się do twojego systemu przez PPA. Dlatego zawsze powinieneś być ostrożny podczas dodawania losowych PPA do swojego systemu. Dodaj PPA tylko wtedy, gdy ufasz jego źródłu i opiekunom / programistom. Mimo że do tej pory nie słyszeliśmy o złośliwym oprogramowaniu lub adware rozpowszechnianym za pośrednictwem umów PPA, zawsze istnieje ryzyko, ponieważ są to repozytoria stron trzecich zawierające pakiety niezweryfikowane przez programistów Ubuntu.

Wniosek

Oto kilka metod, których można użyć do naprawy i zapobiegania błędom zależności w Ubuntu. Rzeczy zwykle się psują, zwłaszcza gdy używasz Ubuntu jako głównego środowiska programistycznego z mnóstwem aplikacji innych firm i narzędzi wiersza poleceń. Jednak większość z tych błędów zależności można zminimalizować, instalując aplikacje z oficjalnych, renomowanych i zaufanych źródeł.

Gry Zainstaluj najnowszy emulator Dolphin dla Gamecube i Wii w systemie Linux
Zainstaluj najnowszy emulator Dolphin dla Gamecube i Wii w systemie Linux
Emulator Dolphin pozwala grać w wybrane gry Gamecube i Wii na komputerach osobistych z systemem Linux (PC). Będąc ogólnodostępnym emulatorem gier o o...
Gry Jak korzystać z GameConqueror Cheat Engine w systemie Linux
Jak korzystać z GameConqueror Cheat Engine w systemie Linux
Artykuł zawiera przewodnik dotyczący korzystania z silnika oszukującego GameConqueror w systemie Linux. Wielu użytkowników, którzy grają w gry w syste...
Gry Najlepsze emulatory konsoli do gier dla systemu Linux
Najlepsze emulatory konsoli do gier dla systemu Linux
W tym artykule wymienimy popularne oprogramowanie do emulacji konsoli do gier dostępne dla systemu Linux. Emulacja to warstwa kompatybilności oprogram...