Reflector (简体中文)
Reflector 是一个脚本程序,从镜像状态页面获取镜像列表,过滤出还在更新的页面并根据速度排列,然后覆盖文件/etc/pacman.d/mirrorlist
。
Contents
安装
用法
To see all of the available commands, run the following command:
# reflector --help
示例
通过下载速度进行排序,筛选前五位镜像并写入到/etc/pacman.d/mirrorlist
:
# reflector --verbose -l 5 --sort rate --save /etc/pacman.d/mirrorlist
Verbosely rate the 200 most recently synchronized HTTP servers, sort them by download rate, and overwrite the file /etc/pacman.d/mirrorlist
:
# reflector --verbose -l 200 -p http --sort rate --save /etc/pacman.d/mirrorlist
Verbosely rate the 200 most recently synchronized HTTPS servers located in the US, sort them by download rate, and overwrite the file /etc/pacman.d/mirrorlist
:
# reflector --verbose --country 'United States' -l 200 -p https --sort rate --save /etc/pacman.d/mirrorlist
Systemd Service
/etc/systemd/system/reflector.service
[Unit] Description=Pacman mirrorlist update [Service] Type=oneshot ExecStart=/usr/bin/reflector --protocol https --latest 30 --number 20 --sort rate --save /etc/pacman.d/mirrorlist
Then starting reflector.service
will update your mirrorlist.
To update your mirrorlist every time your computer boots you can enable the following service definition.
/etc/systemd/system/reflector.service
[Unit] Description=Pacman mirrorlist update Requires=network-online.target After=network-online.target [Service] Type=oneshot ExecStart=/usr/bin/reflector --protocol https --latest 30 --number 20 --sort rate --save /etc/pacman.d/mirrorlist [Install] RequiredBy=multi-user.target
Make sure you activate the appropriate services so that network.target
really reflects your network status.
Systemd 定时
如果你想每周一次运行 reflector.service
:
/etc/systemd/system/reflector.timer
[Unit] Description=Run reflector weekly [Timer] OnCalendar=weekly RandomizedDelaySec=12h Persistent=true [Install] WantedBy=timers.target
然后仅需 启动reflector.timer
.
AUR
Install the reflector-timerAUR package to run reflector daily, or install the reflector-timer-weeklyAUR to run it weekly.
reflector-timer
The default configuration is:
/usr/share/reflector-timer/reflector.conf
AGE=6 COUNTRY=Germany LATEST=30 NUMBER=20 SORT=rate
To override this configuration, edit /etc/conf.d/reflector.conf
:
/etc/conf.d/reflector.conf
COUNTRY=US
Be sure to enable reflector.timer
.
reflector-timer-weekly
The default configuration is:
/etc/reflector.conf
--save /etc/pacman.d/mirrorlist --country China --sort rate
Each line (except that begins with '#') should be valid reflector
option.
Be sure to enable reflector.timer
.