Total Pageviews

Monday, 8 October 2018

一个用来给站点做镜像的python程序-Mirror


PyPi version Build Status
Mirror is an open source python application for mirror site (e.g. mirror.bjtu.edu.cn) to sync files from upstreams (it uses rsync internally), it actually works like a cron, but still has some differences. It has been served for mirror.bjtu.edu.cn with more than 40 rsync tasks.
You are welcome to send comments, patches and any others to github or to @idealities.

Authors

  • Shang Yuanchun
  • Bob Gao
For contributors and past developers see: AUTHORS

Installation Instructions

You can install mirror by running pip:
sudo pip install mirror
Or if you want to build and install from source:
python setup.py build
sudo python setup.py install
If from source, you can install it to a custom directory:
python setup.py install --root=/tmp
After that, you are going to set up environment, you are encouraged to add a specific user to run mirrord, here we suppose the username is mirror and its home directory is /home/mirror.
Make necessary directories:
sudo mkdir /var/log/mirrord /var/log/rsync
sudo chown mirror:mirror /var/log/mirrord /var/log/rsync
mkdir ~/.config/mirror
cp config/mirror.ini ~/.config/mirror/
Now you can edit mirror.ini to fit your needs and run:
mirrord
and that's done. Also you can use man mirrord or mirrord -h to read the documents.
If mirrord is running, you can run:
mirrord -t
to show the current task queue.

Contact/Support

Features

  • It's simple and easy to add a mirror
  • You can set a priorty for each mirror, from 1 to 10, 1 is highest
  • And scheduler will schedule a task depending on current conditions
  • You can also set a timeout for each mirror
  • Support for two stage syncing (for ubuntu, debian)
  • You can also use it as another cron...

from https://github.com/ideal/mirror
演示站点:https://mirror.bjtu.edu.cn/ ,北京交通大学自由与开源软件镜像站

No comments:

Post a Comment