Każda dystrybucja Linuksa posiada własne oficjalne repozytoria pakietów, które zawierają pakiety zaprojektowane specjalnie dla danej dystrybucji.
Instalowanie oprogramowania z repozytoriów pakietów jest jednym z najbezpieczniejszych i najłatwiejszych sposobów zarządzania oprogramowaniem w systemie Linux.
Istnieje wiele repozytoriów pakietów Linux, zarówno oficjalnych, jak i innych firm.
Istnieją repozytoria pakietów innych firm, które mogą zawierać pakiety, których nie ma w oficjalnych repozytoriach lub nowsze wersje pakietów niż te w oficjalnych repozytoriach.
Korzystając z repozytoriów pakietów innych firm, należy zachować ostrożność i sprawdzić, kto zarządza repozytorium i jak bardzo jest ono zaufane.
Oficjalne repozytoria dystrybucji Linuksa zapewniają dostęp do dużej ilości oprogramowania, które może być instalowane i aktualizowane przy użyciu standardowych narzędzi do zarządzania pakietami.
Po zaktualizowaniu listy dostępnych pakietów przez menedżera pakietów można użyć polecenia sudo apt-get install lub sudo apt install, aby zainstalować żądany pakiet.
Aby zaktualizować zainstalowane pakiety, użyj polecenia "sudo apt-get upgrade" lub "sudo apt upgrade".
Aby znaleźć konkretny pakiet w repozytorium, użyj polecenia sudo apt-cache search lub sudo apt search.
Jeśli chcesz usunąć zainstalowany pakiet, użyj polecenia sudo apt-get remove lub sudo apt remove.
Są to podstawowe polecenia do pracy z oficjalnymi repozytoriami dystrybucji Linuksa.
| Polecenie | Zastosowanie |
|---|---|
| sudo apt install | Instalacja pakietu |
| sudo apt upgrade | Aktualizacja zainstalowanych pakietów |
| sudo apt search | Wyszukiwanie pakietu |
| sudo apt remove | Usuwanie pakietu |
Ważne: wiele umów PPA Launchpad nie jest obsługiwanych przez Debiana, ponieważ pakiety zawierają zależności specyficzne dla Ubuntu.
Inne umowy PPA działają na Debianie.
Od Debiana 7 można używać add-apt-repository aby dodać Launchpad PPA.
Jeśli jednak PPA zostanie dodany w ten sposób, plik źródłowy PPA będzie używał aktualnej wersji Debiana (na przykład »wheezy»).
Jeśli uruchomimy aktualizację apt-get, zobaczymy błąd 404, ponieważ w repozytoriach Launchpad PPA nie ma pakietów dla Debiana Wheezy.
Wszystkie są pakietami zbudowanymi dla różnych wersji Ubuntu.
Jak to rozwiązać?
Aby to działało poprawnie, po użyciu polecenia "ppa add-apt-repository ppa: tu / ppa" musisz edytować plik źródłowy PPA znajdujący się w folderze /etc/apt/sources.list .d / i zamień wersję Debiana (na przykład „wheezy”) na wersję Ubuntu.
Oto przykład.
Powiedzmy, że dodajemy webupd8team / java ppa w Debianie Wheezy za pomocą „add-apt-repository: webupd8team / java”.
W rezultacie plik /etc/apt/sources.list.d/webupd8team-java-wheezy.list musiał zostać utworzony.
Pozostaje tylko zmienić „wheezy” na nazwę kodową dystrybucji Ubuntu, której chcemy używać.
W tym przypadku możemy na przykład skorzystać z Trusty, czyli najnowszej wersji LTS Ubuntu.
Sztuczka polega na tym, aby wybrać wersję Ubuntu „odpowiednika” wersji Debiana, której używamy na stronie PPA.

Przede wszystkim musimy zrozumieć, jak w Debianie zarządzane są repozytoria . ) oznacza typ pliku znalezionego w repozytorium. dla Debiana lub opartych na nim dystrybucji.
Pierwszą rzeczą, którą musimy zrobić, jest znalezienie strony repozytorium PPA w Launchpad.
Na stronie repozytorium PPA znajduje się zielony link z napisem „Szczegóły techniczne tego PPA ”.
Dodatkowo, możemy zobaczyć menu rozwijane z listą dystrybucji obsługiwanych przez tę aplikację.
W idealnym przypadku znajdziesz najnowszą wersję aplikacji dla wszystkich dystrybucji, ale w niektórych przypadkach każda dystrybucja ma inną wersję pakietu, zazwyczaj starsze wersje dla starszych dystrybucji.
W tych szczegółach technicznych możemy również znaleźć numer klucza publicznego, którego użyjemy do cyfrowego podpisania repozytorium.
Znając wszystkie te bardzo ważne informacje, dochodzimy do części, której wszyscy się spodziewaliśmy, przede wszystkim musimy otworzyć plik /etc/apt/sources.list, aby dodać nowe repozytorium.
Zarządzanie repozytoriami oprogramowania to jedna z najbardziej fundamentalnych odpowiedzialności każdego administratora systemu Linux.
Niezależnie od tego, czy uruchamiasz serwer produkcyjny czy osobistą stację roboczą, jedno wadliwe repozytorium może spowodować przerwane instalacje pakietów, nierozwiązywalne konflikty zależności i poważne luki bezpieczeństwa.
Problematyczne repozytoria mogą powodować:
Terminowe zidentyfikowanie i usunięcie tych repozytoriów nie jest opcjonalne - jest to kluczowa część odpowiedzialnej administracji systemem Linux.
Jeśli zarządzasz środowiskiem VPS Hosting lub Dedicated Server, higiena repozytoriów jest szczególnie krytyczna, ponieważ konflikty pakietów na maszynie produkcyjnej mogą spowodować przestoje i problemy z integralnością danych.
Zanim cokolwiek usuniesz, musisz wskazać, które repozytorium powoduje problem.
W: Some index files failed to download. They have been ignored, or old ones used instead.
Lub błędów związanych z GPG:
W: An error occurred during the signature verification. and the previous index files will be used.
Zostaniesz poproszony o przeładowanie pamięci podręcznej pakietów - kliknij Reload.
Ta metoda jest idealna dla mniej doświadczonych użytkowników lub do szybkiego audytu wszystkich aktualnie włączonych repozytoriów w jednym miejscu.
Jednak może nie wyświetlać wszystkich plików repozytorium, szczególnie tych dodanych ręcznie do /etc/apt/sources.list.d/, dlatego zawsze sprawdzaj krzyżowo metodami wiersza poleceń poniżej.
Dla zaawansowanych użytkowników i środowisk serwerowych - szczególnie headless VPS lub Dedicated Server bez graficznego pulpitu - bezpośrednia manipulacja plikami konfiguracyjnych repozytoriów daje Ci najdokładniejszą kontrolę.
Zawsze utwórz kopię zapasową przed edycją krytycznych plików systemowych:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
Otwórz główny plik konfiguracyjny repozytorium w edytorze tekstu:
sudo nano /etc/apt/sources.list
Zlokalizuj linię odnoszącą się do problematycznego repozytorium.
ls /etc/apt/sources.list.d/*.sources
Usuń je w ten sam sposób, jeśli dotyczy:
sudo rm /etc/apt/sources.list.d/problematic-repo.sources
Po zidentyfikowaniu problematycznego pliku .list, usuń go:
sudo rm /etc/apt/sources.list.d/problematic-repo.list
W nowszych wersjach Ubuntu (22.04+) repozytoria mogą używać plików .sources w formacie DEB822 zamiast plików .list. Sprawdź również te pliki:
Jeśli repozytorium miało powiązany klucz podpisywania GPG, usuń go, aby utrzymać czystość pęku kluczy.
Najpierw wyświetl listę wszystkich przechowywanych kluczy:
sudo apt-key list
Lub dla nowszego katalogu pęku kluczy:
ls /etc/apt/trusted.gpg.d/
Usuń odpowiedni plik klucza:
sudo rm /etc/apt/trusted.gpg.d/problematic-repo.gpg
sudo apt update
Sprawdź, czy komunikaty o błędach związane z usuniętym repozytorium całkowicie zniknęły.
Po usunięciu problematycznego repozytorium dobrą praktyką jest przeprowadzenie pełnego czyszczenia systemu w celu rozwiązania wszelkich pozostałych problemów spowodowanych przez złe pakiety, które mogło ono wprowadzić.
Usuń wszystkie pliki pakietów z pamięci podręcznej, aby wyeliminować uszkodzone lub przestarzałe pobierania:
sudo apt clean
Odinstaluj pakiety, które zostały zainstalowane jako zależności oprogramowania z usuniętego repozytorium i nie są już potrzebne:
sudo apt autoremove
Jeśli problematyczne repozytorium pozostawiło uszkodzone zależności pakietów, spróbuj automatycznej naprawy:
sudo apt install -f
Flaga -f (skrót od --fix-broken) instruuje apt do rozwiązania i poprawienia wszelkich uszkodzonych łańcuchów zależności.
Uruchom pełną aktualizację, aby upewnić się, że system jest spójny i aktualny z pozostałymi repozytoriami:
sudo apt full-upgrade
Jeśli nadal widzisz błędy po wykonaniu powyższych kroków, rozważ te dodatkowe działania rozwiązywania problemów:
| Problem | Rozwiązanie |
|---|---|
| Adres URL repozytorium nadal pojawia się w błędach | Uruchom grep -r "repo-url" /etc/apt/ aby znaleźć ukryte odwołania |
| Błąd GPG NO_PUBKEY się utrzymuje | Usuń klucz z /etc/apt/trusted.gpg.d/ |
| apt update nadal się nie powodzi | Przywróć z kopii zapasowej: sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list |
| Uszkodzone pakiety pozostają | Uruchom sudo dpkg --configure -a a następnie sudo apt install -f |
| Konfliktujące wersje pakietów | Użyj sudo apt-cache policy package-name aby sprawdzić źródła wersji |
Przeszukaj wszystkie pliki konfiguracyjne w poszukiwaniu pozostałych wpisów
Użyj grep aby rekurencyjnie skanować wszystkie pliki konfiguracyjne APT w poszukiwaniu wszelkich pozostałych odwołań do usuniętego repozytorium:
grep -r "problematic-repo-url" /etc/apt/
To wyłapie wszelkie wpisy, które mogłeś pominąć w podkatalogach lub niestandardowych plikach konfiguracyjnych.
Niezależnie od tego, czy zarządzasz jednym VPS czy flotą serwerów dedykowanych, przestrzeganie tych najlepszych praktyk zapobiegnie problemom związanym z repozytoriami, zanim się pojawią:
Jeśli hostujesz aplikacje internetowe, bazy danych lub usługi na swoim serwerze Linux, utrzymanie czystego i niezawodnego systemu zarządzania pakietami jest bezpośrednio związane z czasem dostępności i bezpieczeństwem.
Plany Shared Web Hosting AlexHost zawierają wstępnie skonfigurowane, stabilne środowiska, podczas gdy nasze opcje VPS z cPanel dają Ci pełną kontrolę nad Twoim stosem oprogramowania z wygodą graficznego interfejsu zarządzania.
tags: #repozytoria #ubuntu #w #debianie
About the author