https://github.com/taoky/admirror-speedtest
A simple rsync/http(s)/git speedtest program for multiple-IPs (ISP) environment
https://github.com/taoky/admirror-speedtest
git mirrors rsync speedtest
Last synced: 5 months ago
JSON representation
A simple rsync/http(s)/git speedtest program for multiple-IPs (ISP) environment
- Host: GitHub
- URL: https://github.com/taoky/admirror-speedtest
- Owner: taoky
- License: mit
- Created: 2022-09-11T19:07:30.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-12-04T10:12:00.000Z (10 months ago)
- Last Synced: 2024-12-04T11:22:04.307Z (10 months ago)
- Topics: git, mirrors, rsync, speedtest
- Language: Rust
- Homepage:
- Size: 101 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# admirror-speedtest
(Old name: rsync-speedtest)
A simple speedtest program for multiple-IPs (ISP) environment, to optimize the speed of syncing from upstream. **Supports rsync, curl, wget and git**.
PS: There's a racing bug in rsync that prevents proper termination of rsync processes, and it has been workarounded in rsync-speedtest. See comments of [`kill_children()` in main.rs](src/main.rs) for details.
## Args
```
$ ./admirror-speedtest --help
admirror-speedtest 0.3.3
Test speed (bandwidth) of different bind IP to rsync, http(s) and git upstream. Alleviate mirror
site admin's trouble choosing fastest bind IP.USAGE:
admirror-speedtest [OPTIONS]ARGS:
Upstream path. Will be given to specified programOPTIONS:
-c, --config Config file (IP list) path. Default to ~/.admirror-speedtest or (if
not exist) ~/.rsync-speedtest
-h, --help Print help information
--log Log file. Default to /dev/null
-p, --pass Passes number [default: 3]
--program Program to use. It will try to detect by default (here curl will be
used default for http(s)) [possible values: rsync, wget, curl, git]
-t, --timeout Timeout (seconds) [default: 30]
--tmp-dir Tmp file path. Default to env::temp_dir() (/tmp in Linux system)
-V, --version Print version information
```### Git support
`libbinder.so` will be searched by this order:
- Same path as admirror-speedtest executable
- `deps` directory in admirror-speedtest executable's parent directoryNote that libbinder is now seperated to another repo: , with glibc & musl support.
It throws error and git support will not be available if `libbinder.so` is not found.
## Config file format
```
114.5.1.4 example_ip_1
2001:19:19:8::10 example_ip_2
```## Screenshot
