Skip to main content

S3 Sync Tool

A Python-based synchronization tool for S3-compatible storage services that supports concurrent multi-user operations.

Features

  • Multi-user concurrent synchronization support
  • File extension filtering (whitelist/blacklist)
  • Recursive directory synchronization
  • Timestamp-based sync decisions
  • Support for S3-compatible services (AWS S3, Aliyun OSS, Tencent COS, etc.)
  • Metadata-based optimization for large-scale synchronization
  • Command-line interface

Installation

  1. Install Python 3.11 or later

  2. Install pip (if not installed)

  3. Install s3-remotely-sync

pip install s3-remotely-sync

Usage

Configure Credentials

s3rs configure --profile your_profile_name

or use default profile name:

s3rs configure

Basic Synchronization

Sync with custom endpoint (e.g., Aliyun OSS):

s3rs sync /local/path --bucket bucket-name --prefix prefix --endpoint-url https://oss-cn-beijing.aliyuncs.com

Exclude specific file types:

s3rs sync /local/path --bucket bucket-name --prefix prefix --extensions .tmp .log --blacklist

Arguments

  • local_path: Local directory path to sync
  • --bucket: S3 bucket name
  • --prefix: S3 prefix (directory path in bucket)
  • --endpoint-url: S3-compatible service endpoint URL
  • --extensions: File extensions to include/exclude
  • --blacklist: Treat extensions as blacklist instead of whitelist

Configuration

You can also use a configuration file .s3-remotely-sync.yml to store in your local path root directory that you want to sync.

# S3/OSS configuration
bucket: s3-remotely-sync
prefix: test
endpoint-url: https://oss-cn-shanghai.aliyuncs.com
region: oss-cn-shanghai

# Sync options
extensions:
  - .md
  - .pages
blacklist: true

License

This project is licensed under the MIT License - see the LICENSE file for details.

Release files for s3-remotely-sync 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for s3-remotely-sync 0.1.1
File Size Uploaded
s3_remotely_sync-0.1.1.tar.gz 10.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for s3-remotely-sync 0.1.1
File Interpreter ABI Platform
s3_remotely_sync-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 23.1 kB

Release files / s3_remotely_sync-0.1.1.tar.gz

Download URL s3_remotely_sync-0.1.1.tar.gz
Size 10.5 kB
Tags Source
SHA-256 checksum
How to use checksums
1a5ff1179b7819ab8bfaabb58aad1fcccdcfc1c1e9cf228e24866ef8c608715e
BLAKE2b-256 checksum
How to use checksums
5a20191eea3c34d91f456e44bda7282f54f85d095d8eb62bbbeba6dfd97ee5d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.5

Release files / s3_remotely_sync-0.1.1-py3-none-any.whl

Download URL s3_remotely_sync-0.1.1-py3-none-any.whl
Size 12.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
35be391cf27af44641ee2c1ac1c4f88ebcaef994b05fd737635cac78b14e015a
BLAKE2b-256 checksum
How to use checksums
0d24ec19c49f8f5ffaa52d26712ac9cb64336b0888d6e34a2a1566876e7b5b8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.5

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page