Arch linux mirrorlist generated by reflector

Mirrors (Русский)

Состояние перевода: На этой странице представлен перевод статьи Mirrors. Дата последней синхронизации: 31 января 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

На этой странице представлено руководство по выбору и настройке зеркал, а также список зеркал, доступных в настоящее время.

Официальные зеркала

Список официальных зеркал предоставляется пакетом pacman-mirrorlist . Наиболее свежий список зеркал доступен на странице Pacman Mirrorlist Generator.

Проверить статус зеркал Arch возможно на странице Mirror Status. Рекомендуется использовать только актуальные (синхронизированные) зеркала.

Если вы хотите добавить своё зеркало в официальный список, см. DeveloperWiki:NewMirrors. Тем временем добавьте его в статью Неофициальные зеркала.

IPv6-зеркала

Pacman Mirrorlist Generator можно также использовать для получения списка доступных IPv6-зеркал.

Включение определённого зеркала

Чтобы включить зеркала, откройте файл /etc/pacman.d/mirrorlist и найдите ваш географический регион, после чего раскомментируйте необходимые зеркала.

# Any # Server = http://mirrors.kernel.org/archlinux/$repo/os/$arch Server = https://mirrors.kernel.org/archlinux/$repo/os/$arch 

См. #Сортировка зеркал для получения информации об утилитах по выбору зеркал.

  • Раскомментируйте 5 наиболее подходящих зеркал и поместите их наверху файла mirrorlist. Таким образом, их можно легко найти и поменять приоритет в случае возникновения проблем с первым зеркалом в списке. Это также упрощает слияние файлов mirrorlist при обновлении.
  • HTTP-зеркала быстрее FTP-зеркал из-за постоянного HTTP-соединения — в случае с FTP, необходимо устанавливать новое соединение с сервером при каждом запросе pacman на скачивание, что приводит к небольшим задержкам.

Также можно указать зеркала в /etc/pacman.conf . В случае с репозиторием [core], по умолчанию это выглядит следующим образом:

[core] Include = /etc/pacman.d/mirrorlist

Например, если необходимо по умолчанию использовать зеркало HostEurope, укажите его перед строкой Include :

[core] Server = http://ftp.hosteurope.de/mirror/ftp.archlinux.org/core/os/$arch Include = /etc/pacman.d/mirrorlist

Теперь pacman будет первым делом пытаться соединиться с этим зеркалом. Аналогично можно сделать и для остальных репозиториев: [core-testing], [extra], и [extra-testing].

Примечание: Если вы указываете зеркала напрямую в pacman.conf , следует использовать одно и то же зеркало для всех репозиториев. В противном случае можно столкнуться с тем, что будут установлены несовместимые версии пакетов, например, linux из [core] и более старые модули ядра из [extra].

Читайте также:  Installing mysql client on linux

Принудительное обновление списка пакетов pacman

Зеркала могут быть рассинхронизированы, из-за чего список пакетов на старом зеркале не будет соответствовать списку на новом зеркале, несмотря на дату, указанную в обоих списках.

После создания файла /etc/pacman.d/mirrorlist или его изменения выполните следующую команду:

Совет: Указание двух аргументов —refresh / -y заставляет pacman обновить списки пакетов, даже если они уже считаются актуальными. Запуск pacman -Syyu — излишняя трата ресурсов в большинстве случае, но иногда позволяет исправить проблемы, возникающие при смене неисправного зеркала на исправное. См. также Is -Syy safe?.

Важно: В большинстве случаев, при принудительном обновлении базы данных pacman, необходимо также принудительно откатить «слишком новые» пакеты, чтобы их версии соответствовали версиям на новом зеркале. Это предотвращает проблемы, приводящие к частичному обновлению системы.

Также данная процедура необязательна при использовании временных отметок (timestamps) для обеспечения обновления зеркал.

Сортировка зеркал

При загрузке пакетов pacman использует зеркала в том порядке, в котором они перечислены в /etc/pacman.d/mirrorlist . Порядок серверов в списке задаёт их приоритет.

Сортировать зеркала только по скорости — не самый оптимальный вариант, так как самые быстрые сервера могут быть рассинхронизированы. Рекомендуется сначала отсортировать зеркала по скорости, после чего, в соответствии с их статусом, убрать из списка рассинхронизированые зеркала.

Также рекомендуется повторять данную процедуру перед каждым обновлением системы для поддержания списка зеркал в актуальном состоянии.

Сортировка по скорости

Ранжирование существующего списка зеркал

Пакет pacman-contrib предоставляет Bash-скрипт /usr/bin/rankmirrors , который можно использовать для ранжирования зеркал в соответствии со скоростями подключения и нахождения наиболее быстрых местных зеркал.

Создайте резервную копию текущего файл /etc/pacman.d/mirrorlist :

# cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup

Необходимо выполнить следующие действия, чтобы подготовить файл mirrorlist.backup к к ранжированию с помощью rankmirrors:

  • Отредактируйте mirrorlist.backup , раскомментировав сервера, которые необходимо протестировать
  • Если сервера в файле сгруппированы по странам, возможно извлечь все сервера определённой страны следующим образом:
$ awk '/^## Название страны$/f==0/^$/' /etc/pacman.d/mirrorlist.backup
# sed -i 's/^#Server/Server/' /etc/pacman.d/mirrorlist.backup

И наконец, отсортируйте сервера. В данном случае, -n 6 выводит только 6 наиболее быстрых зеркал:

# rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist

Получение и ранжирование свежего списка зеркал

Воспользуйтесь Pacman Mirrorlist Generator, чтобы получить список актуальных зеркал определённых стран и отсортировать его с помощью rankmirrors. Команда ниже скачивает актуальный список зеркал во Франции и Великобритании, использующих протокол https, после чего удаляет комментарии, ранжирует сервера и выводит 5 наиболее быстрых из них.

$ curl -s "https://archlinux.org/mirrorlist/?country=FR&country=GB&protocol=https&use_mirror_status=on" | sed -e 's/^#Server/Server/' -e '/^#/d' | rankmirrors -n 5 -

Совет: Данные действия можно также выполнить интерактивно на странице https://archlinux.org/mirrorlist с помощью любого текстового браузера, например, elinks(1) .

  • Rate Mirrors — извлекает список зеркал, исключает устаревшие или находящиеся в процессе обновления, после чего выбирает страну с наиболее «быстрыми» зеркалами на основе информации о местонахождении подводных кабелей и узлов обмена трафиком. Работает в том числе и с произвольным списком зеркал, поданным на стандартный поток ввода. Приложение довольно быстрое, поэтому можно запускать его перед каждым обновлением системы.

Ранжирование на стороне сервера

Официальный Pacman Mirrorlist Generator предоставляет возможность легко получить ранжированный список зеркал. Весь процесс сортировки происходит на одном сервере с учётом различных факторов, что значительно снижает нагрузку на зеркала и клиентов в сравнении с ранжированием с каждого отдельного клиента.

Другая популярная альтернатива:

Reflector — получает последний список зеркал со страницы MirrorStatus, фильтрует их, сортирует по скорости и перезаписывает /etc/pacman.d/mirrorlist

Решение проблем

Если вы столкнулись со следующей ошибкой:

error: config file /etc/pacman.d/mirrorlist could not be read: No such file or directory

Загрузите список зеркал напрямую с сайта:

# curl -o /etc/pacman.d/mirrorlist https://archlinux.org/mirrorlist/all/

Раскомментируйте предпочитаемые зеркала, как описано выше, после чего выполните следующую команду:

# pacman -Syu pacman-mirrorlist

Смотрите также

Источник

Reflector

Reflector is a Python script which can retrieve the latest mirror list from the Arch Linux Mirror Status page, filter the most up-to-date mirrors, sort them by speed and overwrite the file /etc/pacman.d/mirrorlist .

Installation

Usage

  • In the following examples, /etc/pacman.d/mirrorlist will be overwritten. Make a backup before proceeding.
  • Make sure the resulting /etc/pacman.d/mirrorlist does not contain entries that you consider untrustworthy before syncing or updating with pacman.

To see all of the available options, run the following command:

Examples

See reflector(1) § EXAMPLES . Examples overwriting /etc/pacman.d/mirrorlist need to be run as root.

Tip: To include Worldwide servers, pass an empty string to the country flag. For example, to include France, Germany, and Worldwide mirrors, one should use —country ‘France,Germany,’ .[1]

Automation

systemd service

Reflector ships with a reflector.service . The service will run reflector with the parameters specified in /etc/xdg/reflector/reflector.conf . The default options in this file should serve as a good starting point and example.

For example, to select the 5 most up-to-date mirrors from France and Germany that support HTTPS and overwrite /etc/pacman.d/mirrorlist , use

/etc/xdg/reflector/reflector.conf
--save /etc/pacman.d/mirrorlist --country France,Germany --protocol https --latest 5

Enable reflector.service to run Reflector on boot. To run it immediately, start the service.

Note: reflector.service depends on a network wait service to be configured via network-online.target.

systemd timer

Reflector provides a systemd timer ( reflector.timer ) that starts the #systemd service reflector.service weekly. The schedule can be changed by editing reflector.timer .

First edit the configuration file as described in #systemd service. After you have updated the configuration file, start and enable reflector.timer .

To refresh the mirrorlist ahead of schedule, start reflector.service .

pacman hook

pacman-mirrorlist is not updated regularly, invoking reflector only because some mirror in some part of the globe was added or removed is not relevant. Use instead the timer-based automation. If you do not want mirrorlist.pacnew to be installed at all, use NoExtract in pacman.conf .

See also

Источник

DESCRIPTION

reflector is a Python script and associated Python module that can retrieve up-to-date Arch Linux mirror data from the Mirror Status (https://www.archlinux.org/mirrors/status/) web interface.

ARGUMENTS

EXAMPLES

Print the latest mirrorlist to STDOUT:

Sort the five most recently synchronized mirrors by download speed and overwrite the local mirrorlist:

reflector --latest 5 --sort rate --save /etc/pacman.d/mirrorlist

Select the 200 most recently synchronized HTTP or HTTPS mirrors, sort them by download speed, and overwrite the file /etc/pacman.d/mirrorlist:

reflector --latest 200 --protocol http,https --sort rate --save /etc/pacman.d/mirrorlist

Select the HTTPS mirrors synchronized within the last 12 hours and located in either France or Germany, sort them by download speed, and overwrite the file /etc/pacman.d/mirrorlist with the results:

reflector --country France,Germany --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist

SYSTEMD INTEGRATION

Reflector includes systemd service and timer units that can be used to automatically update Pacman’s mirrorlist. To use the timer, edit the configuration file at /etc/xdg/reflector/reflector.conf and then enable the timer with

systemctl enable reflector.timer systemctl start reflector.timer

Check that status with systemctl list-timers. To update the mirrorlist immediately instead of waiting for the scheduled operation, run systemctl start reflector.service.

SEE ALSO

AUTHORS

Package name: extra/reflector Version: 2023-1 Upstream: https://xyne.dev/projects/reflector Licenses: GPL2 Manuals: /listing/extra/reflector/ Table of contents

Powered by archmanweb, using mandoc for the conversion of manual pages.

The website is available under the terms of the GPL-3.0 license, except for the contents of the manual pages, which have their own license specified in the corresponding Arch Linux package.

Источник

Оцените статью
Adblock
detector