Skip to content

NJUPT-Mirrors-Group/mirror

 
 

Repository files navigation

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.

Homepage: http://mirror.bjtu.edu.cn

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.

screenshot

Contact/Support

Email: idealities@gmail.com

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...

About

rsync scheduler for open source mirror site

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.3%
  • Shell 0.7%