Działasz sudo apt updatena Pardusie 23, ale polecenie zatrzymuje się z komunikatami takimi jak „Nie można rozwiązać”, „Przekroczono limit czasu połączenia” lub „Nie udało się pobrać”. Dopóki APT nie odświeży indeksów pakietów, instalacje i aktualizacje oprogramowania mogą się nie powieść lub wyświetlać nieaktualne informacje o pakietach. Sformułowanie pierwszego błędu jest przydatne: awaria DNS, niedostępny serwer, nieprawidłowy zestaw repozytoriów i wygasły klucz podpisu wymagają różnych poprawek.
Przeprowadź poniższe kontrole, od najmniej uciążliwych do najbardziej szczegółowych. Oficjalne informacje o wydaniu Pardusa 23 wymieniają pakiety repozytoriów jako yirmiuci yirmiuc-deb; nie zastępuj ich bookwormpakietami Debiana tylko dlatego, że Pardus jest oparty na Debianie. Opublikowana lista repozytoriów Pardusa 23.4 znajduje się poniżej, a stan repozytoriów może się zmieniać z czasem, dlatego przed edycją porównaj swoje wpisy z oficjalną dokumentacją Pardusa.
1. Przeczytaj dokładny błąd APT przed zmianą czegokolwiek
Uruchom aktualizację raz i zanotuj pierwszy błędny wiersz i adres URL repozytorium:
sudo apt update
Typowe wskazówki obejmują:
Temporary failure resolvinglub Could not resolve: wyszukiwanie DNS nie powiodło się. APT może w ogóle nie mieć dostępu do repozytorium.Connection timed out, Network is unreachable, lub Could not connect: urządzenie, brama, zapora sieciowa, serwer proxy lub serwer zdalny jest niedostępny.404 Not Foundlub „nie ma pliku Release”: skonfigurowana ścieżka, pakiet lub komponent może być błędny lub kopia lustrzana może nie zawierać tego repozytorium.NO_PUBKEY„niepodpisany” lub wygasły podpis: jest to problem z uwierzytelnianiem lub zegarem, a nie powód do wyłączenia sprawdzania podpisów.Hash Sum mismatch:pobrany indeks może być niespójny lub nieaktualny w pamięci podręcznej lustrzanej lub lokalnej; sprawdź łączność i spróbuj ponownie przed zmianą definicji repozytorium.
Nie zaczynaj od usuwania plików APT ani dodawania losowego lustra. Zachowaj pełne dane wyjściowe; wskazują one, która gałąź rozwiązywania problemów ma zastosowanie.
2. Sprawdź połączenie i DNS
Potwierdź, że komputer ma trasę sieciową, a następnie sprawdź, czy nazwa hosta repozytorium Pardus jest rozpoznawana:
ip route
getent hosts depo.pardus.org.tr
Pierwsze polecenie powinno wyświetlić domyślną trasę dla zwykłego połączenia internetowego. Drugie powinno zwrócić jeden lub więcej adresów. Jeśli nic nie wyświetli lub zgłosi błąd wyszukiwania, przetestuj inną znaną nazwę hosta, na którą zezwala Twoja sieć. Jeśli wiele niepowiązanych nazw nie zostanie wyświetlonych, ponownie połącz się z siecią Wi-Fi lub Ethernet, zrestartuj router, jeśli to konieczne, lub zapytaj administratora sieci, czy DNS jest filtrowany. W sieci zarządzanej serwer proxy lub portal uwierzytelniający może również blokować dostęp do repozytorium; należy wykonać wymagane logowanie lub użyć zatwierdzonych ustawień serwera proxy.
Jeśli to depo.pardus.org.trsię nie powiedzie, odczekaj chwilę i spróbuj ponownie z innej sieci, jeśli to możliwe. Pomaga to oddzielić problem z lokalnym serwerem DNS lub zaporą sieciową od problemu z tymczasowym repozytorium lub trasą. Test ping nie jest rozstrzygający: serwery i sieci mogą blokować ICMP, jednocześnie zezwalając na ruch sieciowy.
3. Sprawdź zegar systemowy i inspekcję HTTPS
Znaczne opóźnienie lub przesunięcie zegara może sprawić, że certyfikaty repozytorium będą wydawać się nieważne lub wygasłe, a także może to utrudniać sprawdzanie poprawności podpisu. Sprawdź zegar i stan synchronizacji za pomocą:
timedatectl status
Popraw datę, godzinę i strefę czasową systemu w ustawieniach Pardusa, a następnie włącz synchronizację czasu sieciowego, jeśli urządzenie ma do niej dostęp. Uruchom ponownie sudo apt update. Jeśli błąd dotyczy certyfikatu, najpierw sprawdź zegar. W sieci firmowej, która inspekcji szyfrowanego ruchu, administrator może być zmuszony do podania zaufanego certyfikatu organizacji za pośrednictwem obsługiwanego procesu systemowego; nie wyłączaj protokołu TLS ani weryfikacji podpisów, aby to obejść.
4. Sprawdź każdy plik źródłowy APT
APT odczytuje /etc/apt/sources.listi źródło plików w formacie /etc/apt/sources.list.d/. Aplikacja innej firmy, ręczna edycja lub stara próba aktualizacji mogą spowodować pozostawienie nieprawidłowego pakietu lub duplikatu wpisu. Sprawdź pliki przed edycją:
cat /etc/os-release
sudo grep -R -n -E '^(deb|deb-src|Types:|URIs:|Suites:|Components:)' \\
/etc/apt/sources.list /etc/apt/sources.list.d/
Sprawdź, czy instalacja to faktycznie Pardus 23, czy host i ścieżka repozytorium Pardus są poprawnie zapisane oraz czy wiersz nie został przypadkowo zawinięty lub obcięty. APT obsługuje tradycyjne .listwpisy i .sourcessekcje deb822, więc nie zakładaj, że każdy aktywny wpis znajduje się w jednym sources.listpliku. Podczas diagnostyki oddziel repozytoria niezależnych dostawców; tymczasowo wyłącz źródło zewnętrzne tylko wtedy, gdy jego adres URL jest tym, który powoduje błąd.
5. Popraw błędny lub nieaktualny wpis w repozytorium Pardus 23
Oficjalne informacje o wydaniu Pardusa 23.4 zawierają następujące źródła pakietów. Wpisy dotyczące pakietów binarnych używają deb; deb-srcsłużą one do pobierania pakietów źródłowych i są opcjonalne w przypadku standardowej instalacji oprogramowania.
deb http://depo.pardus.org.tr/pardus yirmiuc main contrib non-free non-free-firmware
deb-src http://depo.pardus.org.tr/pardus yirmiuc main contrib non-free non-free-firmware
deb http://depo.pardus.org.tr/pardus yirmiuc-deb main contrib non-free non-free-firmware
deb-src http://depo.pardus.org.tr/pardus yirmiuc-deb main contrib non-free non-free-firmware
deb http://depo.pardus.org.tr/guvenlik yirmiuc-deb main contrib non-free non-free-firmware
deb-src http://depo.pardus.org.tr/guvenlik yirmiuc-deb main contrib non-free non-free-firmware
Te wiersze stanowią odniesienie, a nie polecenie wklejenia do istniejącego pliku: duplikaty źródeł mogą powodować ostrzeżenia, a instalacja może używać innego obsługiwanego układu. Najpierw wykonaj kopię zapasową konfiguracji źródłowej:
backup="/root/apt-sources-backup-$(date +%F-%H%M%S)"
sudo mkdir -m 700 "$backup"
sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.d "$backup"/
Jeśli plik nie istnieje w systemie, skopiuj pliki, które istnieją. Otwórz odpowiedni plik w edytorze tekstu z uprawnieniami administratora. Porównaj aktywne wiersze Pardusa z oficjalną listą, zakomentuj tylko niepoprawne lub przestarzałe wiersze, umieszczając je #na ich początku, i zachowaj wszystkie poprawnie skonfigurowane wpisy. W szczególności nie zmieniaj yirmiucna bookworm, stable, ani inną wersję Pardusa w celu naprawy łączności. Mieszanie pakietów może spowodować rozbieżność wersji i zależności pakietów.
Po zapisaniu ponownie odśwież indeksy. Jeśli pojawi się błąd 404, sprawdź ponownie pełny adres URL i pakiet w błędnym wierszu; jeśli poprawny oficjalny wpis nadal zwraca błąd 404, spróbuj ponownie później lub skonsultuj się z pomocą techniczną Pardus, ponieważ zdalne repozytorium może być tymczasowo niespójne.
6. Rozwiąż problem z lustrem, serwerem proxy lub lokalną pamięcią podręczną
Jeśli DNS się sprawdza i inne witryny działają, ale oficjalny host przekracza limit czasu, spróbuj ponownie po krótkiej przerwie. Możesz sprawdzić, czy repozytorium odpowiada przez HTTP, używając curl, jeśli jest zainstalowane:
curl -I --connect-timeout 10 http://depo.pardus.org.tr/
Odpowiedź z serwera WWW nie dowodzi dostępności wszystkich pakietów APT, ale przekroczenie limitu czasu wskazuje na problem z łącznością, filtrowaniem lub tymczasowy problem z serwerem. W sieci szkolnej lub firmowej należy zapytać, czy sieć wymaga serwera proxy lub blokuje repozytoria pakietów. Unikaj zastępowania nieoficjalnego serwera lustrzanego, chyba że Pardus zidentyfikuje go jako obsługiwany i będziesz mógł zweryfikować, czy obsługuje on odpowiednie pakiety i podpisane metadane.
W przypadku niezgodności hasha lub przerwania pobierania, uruchom sudo apt updateponownie po sprawdzeniu łączności. Jeśli problem będzie się powtarzał, zapisz adres URL repozytorium i błąd, a następnie skontaktuj się z pomocą techniczną Pardus lub administratorem sieci. Nie usuwaj /var/lib/apt/listsw pierwszej kolejności; usunięcie indeksów z pamięci podręcznej nie naprawi błędu źródła ani niedostępności serwera.
7. Pozostaw włączoną autoryzację repozytorium
APT weryfikuje podpisane metadane repozytorium, aby móc wykrywać zmienione lub nieuwierzytelnione indeksy pakietów. Jeśli zobaczysz komunikat NO_PUBKEY„repozytorium nie jest podpisane” lub ostrzeżenie o wygaśnięciu klucza, upewnij się, że używasz oficjalnego adresu URL repozytorium Pardus i prawidłowego pakietu, a następnie sprawdź zegar i spróbuj ponownie. W przypadku działającej instalacji Pardus, skorzystaj z obsługiwanej ścieżki aktualizacji pakietów i pęku kluczy danej dystrybucji lub z dokumentacji Pardus, aby dowiedzieć się, jak dokładnie przeprowadzić zmianę klucza.
Nie należy używać opcji --allow-unauthenticated, trusted=yesani opcji insecure-repository jako ogólnego rozwiązania. Opcje te osłabiają ochronę APT i mogą ukryć naruszone połączenie lub błędnie skonfigurowane źródło. Podręcznik bezpieczeństwa APT w Debianie wyjaśnia, że niepodpisane archiwa są domyślnie odrzucane i zdecydowanie odradza wymuszanie ich użycia. Jeśli błąd nadal występuje po sprawdzeniu adresu URL, pakietu i czasu, należy zapisać cały wynik i poprosić wsparcie Pardus o potwierdzenie bieżących instrukcji klucza podpisu zamiast importowania niezweryfikowanego klucza.
8. Sprawdź, czy występują backporty Pardus 23
Jeśli błędny wiersz wskazuje na /backports, jest to źródło oddzielne od standardowych repozytoriów Pardus. Pardus dokumentuje pakiet backportów Pardus 23 jako yirmiuc-backportsi zaznacza, że pakiety backportowane nie są testowane w takim samym stopniu, jak pakiety stabilne. Jeśli celowo włączono backporty, porównaj dokładny wiersz z oficjalnymi instrukcjami Pardus dotyczącymi backportów. Jeśli nie używasz tego, wyłącz tylko ten wpis backportów po utworzeniu kopii zapasowej konfiguracji; nie usuwaj standardowych repozytoriów, aby wyciszyć ten błąd.
Sprawdź, czy poprawka zadziałała
Uruchom ponownie polecenie aktualizacji:
sudo apt update
Pomyślne uruchomienie kończy się bez nieudanego pobrania repozytorium, błędu DNS, błędu 404, ostrzeżenia o sygnaturze ani błędu indeksu pakietu. APT może wyświetlać komunikaty Hito błędach dla indeksu, który jest już aktualny, oraz Getdla indeksu, który pobiera; same te etykiety nie są błędami. Upewnij się, że wyszukiwanie pakietów działa z nieszkodliwym zapytaniem, takim jak apt-cache policylub wyszukaj pakiet, który prawdopodobnie istnieje. Nie rozpoczynaj dużej aktualizacji, dopóki dane wyjściowe aktualizacji nie będą czyste.
Jeśli wystąpi ten sam pierwszy błąd, należy zapisać dokładny adres URL i komunikat, który spowodował błąd, a także informację, czy rozpoznawanie nazw DNS działa i który aktywny plik źródłowy zawiera ten wpis. Takie dowody ułatwiają ustalenie, czy przyczyną jest sieć, tymczasowy problem z lustrem, czy konfiguracja repozytorium wymagająca potwierdzenia ze strony Pardusa.
Oficjalne referencje