Parallel rsync-like pull sync over SSH with resume
  • Rust 96.2%
  • Shell 2.4%
  • PowerShell 1.2%
  • Makefile 0.2%
Find a file
2026-03-17 13:44:50 +04:30
.github/workflows ci: prevent duplicate push/pull request jobs (#9) 2026-03-17 13:03:45 +04:30
assets chore: add demo 2026-03-05 23:06:25 +04:30
scripts [ci skip] chore: add install scripts 2026-03-06 04:46:08 +04:30
src feat: local transfers (#6) 2026-03-17 13:43:43 +04:30
tests feat: local transfers (#6) 2026-03-17 13:43:43 +04:30
.gitignore chore: add demo 2026-03-05 23:06:25 +04:30
Cargo.lock chore: rename project to parsync 2026-03-06 03:38:25 +04:30
Cargo.toml [ci skip] fix: add repo/homepage/documentation to Cargo.toml 2026-03-06 04:32:56 +04:30
LICENSE chore: add license 2026-03-05 13:43:54 +04:30
Makefile chore: add delta mode and rolling checksumming 2026-03-05 13:41:49 +04:30
README.md [ci skip] chore: simplify readme 2026-03-17 13:44:50 +04:30

parsync

parsync is a high-throughput, resumable sync tool for SSH remotes and local-to-local transfers, with parallel file transfers and optional block-delta sync.

demo

Installation

Linux and macOS:

curl -fsSL https://alpindale.net/install.sh | bash

Windows:

powershell -ExecutionPolicy Bypass -c "irm https://alpindale.net/install.ps1 | iex"

You can also install with cargo:

cargo install parsync

You may also download the binary for your platform from the releases page, or install from source:

make build
make install

Platform support

  • Linux: x86_64-unknown-linux-gnu, aarch64-unknown-linux-gnu
  • macOS: aarch64-apple-darwin, x86_64-apple-darwin
  • Windows: x86_64-pc-windows-msvc (best-effort metadata support)

Usage

parsync -vrPlu user@example.com:/remote/path /local/destination

With non-default SSH port:

parsync -vrPlu user@example.com:2222:/remote/path /local/destination

SSH config host aliases are supported.