A tool for synchronizing files with S3-compatible storage
Project description
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
-
Install Python 3.11 or later
-
Install pip (if not installed)
-
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file s3_remotely_sync-0.1.1.tar.gz.
File metadata
- Download URL: s3_remotely_sync-0.1.1.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a5ff1179b7819ab8bfaabb58aad1fcccdcfc1c1e9cf228e24866ef8c608715e
|
|
| MD5 |
8099e258dd4e0fe6f92e93e8f202e0a5
|
|
| BLAKE2b-256 |
5a20191eea3c34d91f456e44bda7282f54f85d095d8eb62bbbeba6dfd97ee5d6
|
File details
Details for the file s3_remotely_sync-0.1.1-py3-none-any.whl.
File metadata
- Download URL: s3_remotely_sync-0.1.1-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35be391cf27af44641ee2c1ac1c4f88ebcaef994b05fd737635cac78b14e015a
|
|
| MD5 |
a24527ae4fa8025e46bd43a11058c933
|
|
| BLAKE2b-256 |
0d24ec19c49f8f5ffaa52d26712ac9cb64336b0888d6e34a2a1566876e7b5b8b
|