Ranking mirrorów Archa
Dziś coś z cyklu „Mała rzecz a cieszy…”. Otóż od dłuższego czasu irytowała mnie powolność działania pacmana w Archu. W szczególności nawiązanie połączenia z repozytorium nierzadko trwało wieki. W końcu postanowiłem coś z tym zrobić. Oczywiście, okazało się, że problem można rozwiązać w ciągu kilku minut, włączając to odnalezienie stosownej informacji na wiki dystrybucji.
Zaczynamy od przygotowania rankingu mirrorów. W najprostszym wypadku możemy po prostu wpisać:
# cd /etc/pacman.d/
# rankmirrors mirrorlist
Po kilku minutach otrzymamy listę mirrorów posortowanych wedle szybkości połączenia. Listę kopiujemy do pliku mirrorlist-rankmirrors. Możemy też od razu zapisać np. 5 najszybszych mirrorów do pliku:
# rankmirrors -n 5 mirrorlist > mirrorlist-rankmirrors
Później w /etc/pacman.conf linie
Include = /etc/pacman.d/mirrorlist
poprawiamy na
Include = /etc/pacman.d/mirrorlist-rankmirrors
Na koniec wymuszamy aktualizację aktualnej bazy pakietów:
# pacman -Syy
Na anglojęzycznym wiki Archa można też znaleźć opis innych sposobów na przyspieszenie pacmana. Ja pokusiłem się tylko o optymalizację bazy danych:
# pacman-optimize && sync
Jak mówi pomoc do tego programiku:
Ponieważ pacman używa wielu małych plików aby śledzić pakiety pliki te mają tendencję do fragmentacji w miarę upływu czasu. Ten skrypt próbuje przenieść je w jedno ciągłe miejsce na dysku. W rezultacie dysk twardy powinien czytać je szybciej, ponieważ jego głowica nie musi się często przemieszczać.
Oczywiście, powinien
nie jest równoważne z „musi”, ale zawsze możemy liczyć na efekt placebo… ;)
