The Linux cloud sync problem
is still unsolved.

Most tools are single-provider, lack placeholders, skip bidirectional sync, or treat Linux as a second-class citizen. UniDrive is a provider-agnostic sync engine with sparse file placeholders, move detection, and conflict resolution — built for Linux first.

Open Source Kotlin / JDK 25 6 provider types Bidirectional sync Sparse placeholders CLI-first

What sets UniDrive apart

Features that most Linux sync tools lack entirely.

Real bidirectional sync

Three-phase engine: Gather (delta + local scan) → Reconcile (move detection, conflicts) → Apply (dependency-ordered actions). Not a polling loop or manual copy.

Sparse file placeholders

Files appear at full size but consume zero disk blocks. Hydrate on demand with get, reclaim space with free. No FUSE dependency.

Move detection

Detects rename/move by matching Delete+Create pairs via remote ID. Folder moves propagate to children automatically — no re-upload.

Conflict resolution

Per-folder policy: keep_both (creates .conflict-remote copy) or last_writer_wins (mtime comparison). Not a silent overwrite.

6 provider types

OneDrive, HiDrive, Internxt, S3-compatible (AWS, Hetzner, Backblaze, Wasabi, OVH, MinIO), SFTP, and WebDAV — one engine, one config.

Size-tiered concurrency

16 slots for small files (≤1 MB), 6 for medium, 2 for large. Optimizes throughput without saturating the connection on big files.

Pin rules (glob patterns)

Eager-download files matching *.kdbx, Documents/work/**. Include/exclude lists. Custom regex-safe glob engine.

👁 inotify + echo suppression

Daemon mode watches for local changes between sync cycles. Sync-caused events suppressed automatically to prevent loops.

🔒 Client-side encryption

Internxt provider: AES-256-GCM names, AES-256-CTR content, BIP39 key derivation. Streaming encrypt/decrypt — peak RAM ~256 KB.

Feature comparison // all Linux sync tools

Side-by-side across open source, freemium, and proprietary solutions.

Tool License Price Providers Bidir Sync Placeholders Move Detect Conflicts Client Encrypt Delta Sync Bandwidth Ctl Pin / Selective CLI GUI
UniDrive OSS Free 6 types ✓ 3-phase ✓ sparse ✓ ID+size ✓ per-folder ✓ AES-256 ✓ cursor+snapshot ✓ throttle ✓ glob pins planned
rclone MIT Free 70+ bisync (stable 2025) ✗ FUSE mount basic ✓ NaCl crypt partial filters web UI
Syncthing MPL-2 Free P2P only untrusted device ✓ block-level ✓ ignore ✓ web
Nextcloud GPLv2 Free Nextcloud only experimental basic server E2EE ✓ selective nextcloudcmd ✓ Qt
ownCloud GPLv2 Free ownCloud only ✓ VFS basic server-side ✓ selective owncloudcmd ✓ Qt
onedrive (abraunegg) GPLv3 Free OneDrive only basic ✓ delta API ✓ skip_dir
Maestral MIT Free Dropbox only ✓ longpoll ✓ gitignore ✓ tray
FreeFileSync GPLv3 Free local/FTP/SFTP ✓ manual comparison ✓ filters batch
Internxt CLI OSS Freemium Internxt only ✗ manual ✓ AES-256
Internxt Desktop OSS Freemium Internxt only FUSE write-back FUSE mount byte compare ✓ AES-256 ✗ full poll ✓ Electron
Dropbox Proprietary Freemium Dropbox only ✗ Linux ✓ block-level ✓ selective
MEGA Custom Freemium MEGA only basic ✓ AES-128 E2EE ✓ selective ✓ mega-cmd
pCloud Proprietary Freemium pCloud only ✓ FUSE vdrive basic Crypto add-on ✓ block-level ✓ selective pfs CLI
Tresorit Proprietary from $4.75/mo Tresorit only basic ✓ E2EE ✓ selective
Insync Proprietary ~$30/acct GDrive, OneDrive, Dropbox basic ✓ selective ✓ headless ✓ Qt
ExpanDrive Proprietary Free personal 20+ ✗ mount only ✓ net mount

= full support   partial/limited   = no support   Data as of April 2026.

UniDrive provider support

One sync engine, six provider types, dozens of backends.

Microsoft OneDrive

Personal & Business. MS Graph delta API for efficient change tracking.

OAuth2 (browser + device code)

IONOS HiDrive

REST API v2.1 with snapshot-based delta detection.

OAuth2 (browser)

Internxt Drive

E2EE with AES-256-GCM names, AES-256-CTR content, BIP39 keys.

email + password + 2FA

S3-compatible

AWS, Hetzner, Backblaze B2, Wasabi, OVH, MinIO. SigV4 auth.

env vars (access key + secret)

SFTP

Apache MINA SSHD. Key or password auth. Auto-detect ~/.ssh keys.

SSH key / password

WebDAV

Nextcloud, ownCloud, Synology, QNAP, Hetzner Storage. HTTP Basic.

user + password

Sync engine architecture

Three-phase sync with provider-agnostic reconciliation.

┌─────────────────────────────────────────────────────────────────┐ GATHER Remote delta ──────┐ ┌────── Local scan (inotify) (cursor or snapshot) │ │ (mtime + size vs SQLite DB) ▼ ▼ ├─────────────────────────────────────────────────────────────────┤ RECONCILE ┌──────────┐ ┌───────────┐ ┌──────────┐ ┌───────────────┐ Move │ │ Conflict │ │ Case │ │ Pin rules detection │ │ policy │ │ collision│ │ (glob match) └──────────┘ └───────────┘ └──────────┘ └───────────────┘ ▼ ordered action list ├─────────────────────────────────────────────────────────────────┤ APPLY Pass 1 (sequential) Pass 2 (concurrent) ┌─────────────────────┐ ┌────────────────────────────┐ │ placeholders │ │ downloads ≤1MB → 16 slots│ │ deletes, moves │ │ uploads 1-20MB → 6 slots│ │ folder creates │ │ >20MB → 2 slots│ │ conflicts │ └────────────────────────────┘ └─────────────────────┘ │ │ └──── SQLite state DB (1 txn) ──┘ └─────────────────────────────────────────────────────────────────┘

The placeholder gap on Linux

Most cloud tools can't show files without downloading them. Here's the 2026 landscape.

Tool Placeholder / on-demand files on Linux Mechanism
UniDrive ✓ Production-ready Sparse files via RandomAccessFile.setLength() — zero disk blocks, real size in stat. No kernel module.
ownCloud ✓ Stable Qt VFS layer with file manager integration (Nautilus, Dolphin).
pCloud ✓ Stable FUSE virtual drive — files fetched on open. Requires FUSE kernel module.
ExpanDrive ✓ Network mount Network filesystem mount. Files not available offline. Proprietary.
rclone mount Approximation FUSE mount with VFS cache modes. Not integrated into file manager. Requires FUSE.
Nextcloud Experimental VFS on Linux is marked experimental. Stability issues and data loss bugs reported in 2026.
Dropbox ✗ Smart Sync is Win/Mac only Linux client lacks Smart Sync. Selective sync only (invisible if not synced).
Everyone else Syncthing, MEGA, Maestral, Insync, Tresorit, abraunegg/onedrive — no placeholder support.

Where UniDrive wins and where it doesn't // honest take

No tool does everything. Here's where UniDrive excels and where alternatives are stronger.

UniDrive advantages

  • Only multi-provider tool with true bidirectional sync + sparse placeholders on Linux
  • Move detection avoids pointless re-uploads (most tools delete + re-upload)
  • Per-folder conflict policy — not a silent overwrite or a global setting
  • Snapshot-based delta for providers without native change APIs (S3, SFTP, WebDAV)
  • Size-tiered concurrency adapts to file mix automatically
  • No FUSE, no Electron, no kernel modules — pure userspace JVM binary
  • Pin rules with glob patterns for eager download
  • Case collision detection (OneDrive vs ext4)
  • Bandwidth throttling built into the provider layer
  • inotify daemon with echo suppression for near-real-time local change detection

Where alternatives are stronger

  • rclone: 70+ providers vs UniDrive's 6 types. Massive community. Stable FUSE mount.
  • Syncthing: Block-level delta sync (only changed bytes). P2P with no cloud dependency.
  • Dropbox: Block-level sync (LAN sync, delta encoding). Mature file manager integration.
  • MEGA / Tresorit: E2EE enabled by default for all files, not just one provider.
  • Nextcloud / ownCloud: Native Qt GUI with file manager overlay icons.
  • Insync: Polished multi-provider GUI with headless mode. Proven at scale.
  • No GUI yet — CLI-only today (systray UI is Phase 3 on the roadmap)
  • No block-level delta — full file uploads even for small changes
  • No sharing, trash, or file versioning features
  • JVM startup overhead vs native Go/C++ tools (mitigated by daemon mode)

Best-in-class for this use case

  • You use multiple cloud providers and want one sync tool → UniDrive
  • You need placeholder files on Linux without FUSE → UniDrive
  • You sync a NAS via SFTP/WebDAV and want bidirectional sync → UniDrive
  • You want zero-knowledge E2EE with Internxt from a real sync engine → UniDrive
  • You need maximum provider coverage (70+) → rclone
  • You want P2P without any cloud → Syncthing
  • You need a polished GUI today → Insync or native clients