Reflector (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи Reflector. Дата последней синхронизации: 6 декабря 2022. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

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

Установка

Установите пакет reflector.

Использование

Важно:
  • Приведённые примеры перезапишут /etc/pacman.d/mirrorlist. Заранее сделайте его резервную копию.
  • После обновления /etc/pacman.d/mirrorlist, взгляните на содержимое файла и убедитесь, что он не содержит подозрительных зеркал перед тем, как выполнять синхронизацию базы данных пакетов pacman.

Чтобы увидеть список всех доступных опций, наберите

$ reflector --help

Примеры

Смотрите reflector(1) § EXAMPLES. Примеры, перезаписывающие /etc/pacman.d/mirrorlist, нужно запускать от имени root.

Совет: Чтобы включить всемирные (Worldwide) сервера, пропишите пустую строку как код страны. Например, чтобы включить Францию, Германию и всемирные зеркала, используйте --country 'France,Germany,'.[1]

Автоматизация

Служба systemd

Reflector поставляется со службой reflector.service. Она запускает reflector с параметрами, указанными в файле /etc/xdg/reflector/reflector.conf. Опции по умолчанию должны быть хорошей отправной точкой.

Например, чтобы выбрать 5 наиболее актуальных (up-to-date) зеркал из Франции и Германии с поддержкой HTTPS и перезаписать /etc/pacman.d/mirrorlist, используйте

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

Включите службу reflector.service для запуска Reflector при загрузке системы. Чтобы запустить его прямо сейчас, запустите эту службу.

Примечание: reflector.service зависит от службы ожидания сети, настроенной в network-online.target.

Таймер systemd

Reflector поставляется с systemd-таймером (reflector.timer), который запускает службу reflector.service еженедельно. Расписание можно изменить путём редактирования файла юнита reflector.timer.

Сперва настройте Reflector как описано в разделе #Служба systemd. После обновления настроек запустите и включите reflector.timer.

Чтобы обновить список зеркал прямо сейчас, не дожидаясь расписания, запустите reflector.service.

pacman hook

pacman-mirrorlist обновляется не регулярно, вызов Reflector только потому, что какое-то зеркало в какой-то части земного шара было добавлено или удалено, не актуален. Вместо этого используйте автоматизацию по таймеру. Если вы не хотите, чтобы mirrorlist.pacnew вообще устанавливался, используйте NoExtract в pacman.conf.

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