Server Sync Documentation
Automatic file synchronization between two Pelican servers — unidirectional and bidirectional, full or path-based, with automatic scheduling, schedule integration, and subuser permissions.
About Server Sync
Server Sync is a proprietary Pelican Panel plugin by Eranio that enables automatic file synchronization between two Pelican servers. It's ideal for server networks, staging environments, or backup scenarios.
Key Features
| Feature | Description |
|---|---|
| Unidirectional Sync | Main → Sub or Sub → Main |
| Bidirectional Sync | Main ↔ Sub, Main takes priority on conflicts |
| Full Directory Sync | Synchronize the entire server directory |
| Path-Based Sync | Synchronize only selected paths |
| Exclude Paths | Manually or via File Browser exclude files/folders |
| Live Sync | Synchronize files while servers are running |
| On-Restart Sync | Stop servers, synchronize, restart |
| Automatic Scheduling | Configurable sync interval per pair |
| Schedule Integration | As a task type in the Pelican Schedule system |
| Schedule Mirroring | Mirror schedules to the partner server |
| Incremental Sync | After the first sync, only transfer changed files |
| Batch Splitting | Automatic splitting for large data volumes |
| Subuser Permissions | Granular permissions (view, manage, trigger) |
| 11 Languages | EN, DE, ES, FR, IT, JA, KO, NL, PT-BR, TR, ZH-CN |
| Auto-Update | Automatic updates via GitHub Releases |
Architecture
The plugin operates entirely within the Pelican Panel and leverages the existing Daemon infrastructure:
Admin/Server Panel → SyncService → DaemonFileRepository → Wings Daemon
→ NodeJWTService (Authentication)
Synchronization Flow:
- Compress files on the source server into a
.tar.gzarchive - Create a JWT token for authenticated download (valid for 15 minutes)
- Transfer the archive via HTTP Pull to the target server
- Decompress the archive on the target server
- Clean up temporary archives on both servers
Data Storage
| Data | Location |
|---|---|
| Sync Pairs | server_sync_pairs database table |
| Sync Logs | server_sync_logs database table |
| Plugin Settings | server_sync_settings database table |
| Per-Server Limit | servers.server_sync_limit column |
| Temporary Archives | .server_sync_* files on the servers |
Requirements
- Pelican Panel with plugin support
- PHP 8.2 or newer
- Database user with CREATE TABLE privileges
- Wings Daemon reachable on both servers
storage/andbootstrap/cache/writable (permissions0755)
Guides
Installation & Setup
# Installation & Setup Complete step-by-step guide to installing the Server S...
Configuration
# Configuration Detailed description of all configuration options for the Ser...
Database Schema
# Database Schema Overview of all database tables and columns of the Server S...
Admin Panel
# Admin Panel: SyncOverview The admin page at `/admin/server-sync` provides a...
Server Panel
# Server Panel: ServerSync The server page at `/server/{server}/server-sync`...
Sync Mechanism
# Sync Mechanism Detailed description of how file synchronization works inter...
Schedule Integration
# Schedule Integration Server Sync integrates directly into the Pelican Sched...
Permissions & Security
# Permissions & Security Overview of the Server Sync plugin's permission syst...