Настройка mirrorlist в Arch Linux с помощью Reflector
Правильная настройка mirrorlist в Arch Linux критически важна для скорости обновлений системы. Reflector: инструмент для автоматического выбора самых быстрых зеркал.
Установка Reflector
sudo pacman -S reflector
Резервное копирование текущего mirrorlist
sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
Автоматический выбор зеркал
Базовая команда
sudo reflector --latest 25 --country RU,NL,BY --sort rate --save /etc/pacman.d/mirrorlist
--latest 25: выбрать 25 последних обновлённых зеркал--country RU,NL,BY: использовать зеркала из указанных стран--sort rate: сортировать по скорости--save: сохранить в указанный файл
Расширенная команда с фильтрацией
sudo reflector \
--latest 25 \
--country RU,NL,BY,DE,UA \
--protocol https \
--completion-percent 100 \
--sort rate \
--save /etc/pacman.d/mirrorlist
--protocol https: только HTTPS зеркала (безопаснее)--completion-percent 100: только полностью синхронизированные зеркала- Дополнительные страны для большего выбора
Проверка результата
cat /etc/pacman.d/mirrorlist
Должны увидеть список зеркал, отсортированный по скорости.
Обновление системы
sudo pacman -Syu
Автоматическое обновление mirrorlist
Через systemd timer
Создайте сервис:
sudo nano /etc/systemd/system/reflector.service
[Unit]
Description=Update pacman mirrorlist
After=network-online.target
Wants=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/bin/reflector --latest 25 --country RU,NL,BY --protocol https --sort rate --save /etc/pacman.d/mirrorlist
Создайте таймер:
sudo nano /etc/systemd/system/reflector.timer
[Unit]
Description=Run reflector weekly
Requires=reflector.service
[Timer]
OnCalendar=weekly
Persistent=true
[Install]
WantedBy=timers.target
Включите таймер:
sudo systemctl enable reflector.timer
sudo systemctl start reflector.timer
Через cron (альтернативный метод)
sudo crontab -e
Добавьте:
0 0 * * 0 /usr/bin/reflector --latest 25 --country RU,NL,BY --protocol https --sort rate --save /etc/pacman.d/mirrorlist
Ручной выбор зеркал
Если автоматический выбор не даёт желаемых результатов, можно выбрать зеркала вручную:
sudo reflector --list https --country RU,NL,BY --sort rate
Скопируйте нужные зеркала в /etc/pacman.d/mirrorlist вручную.
Решение проблем
Проблема: Reflector не находит зеркала
Проверьте подключение к интернету:
ping archlinux.org
Попробуйте без фильтрации по странам:
sudo reflector --latest 50 --sort rate --save /etc/pacman.d/mirrorlist
Проблема: Медленные обновления после настройки
Проверьте, что mirrorlist обновился:
cat /etc/pacman.d/mirrorlist
Попробуйте другие страны:
sudo reflector --latest 25 --country DE,FR,PL --sort rate --save /etc/pacman.d/mirrorlist
Проблема: Ошибка при обновлении системы
Восстановите из бэкапа:
sudo cp /etc/pacman.d/mirrorlist.backup /etc/pacman.d/mirrorlist
Полезные команды
# Проверить скорость зеркал без сохранения
sudo reflector --latest 25 --country RU,NL,BY --sort rate
# Показать все доступные зеркала
sudo reflector --list-countries
# Проверить статус зеркал
sudo reflector --score 10 --sort rate
Рекомендации
- Используйте HTTPS зеркала для безопасности
- Делайте бэкап перед изменениями
- Настройте автоматическое обновление через systemd timer
- Проверяйте результат после каждого обновления mirrorlist
- Используйте несколько стран для большей надёжности
Полезные ресурсы
Автор: ordanax.github.io
Не получилось? Поможем настроить
Задай вопрос в чате — отвечаем быстро, по делу и без воды.

Комментарии