Docs

Arkivix

Self-hosted client/server file backup with deduplication, remote agents, and verified recovery.

Arkivix – Documentation | Stoxello
Stoxello | Arkivix

Arkivix is a client/server file backup system inspired by UrBackup. A central server protects folders on enrolled devices through installable Windows/Linux agents, storing each backup as a point-in-time manifest over a SHA-256 content-addressed object store, so unchanged files are stored once and shared across snapshots. Scheduled jobs are durable — they recover across server restarts and retry failures with exponential backoff.

The product is operated from a responsive web dashboard served on loopback: overview, per-device views, snapshot browsing and restore, activity diagnostics, monitoring, and settings. Beyond raw backups it verifies repository integrity on a schedule, applies retention tiers with orphan-object cleanup, runs automated recovery drills that restore and hash sample files, watches capacity and offline agents, and notifies through Slack webhooks or SMTP email. Machine-count licensing (10 machines included) is validated against license.stoxello.com.

Product
Arkivix Backup Server & Agents
Platforms
Windows x64, Linux x64/arm64, Docker
Distribution
Docker image, self-contained server/agent archives, Windows agent MSI
Type
Backup server (web-managed) with installable agents

Key Features

  • Incremental backups – full point-in-time file manifests where unchanged files reference existing content objects, keeping subsequent backups fast and space-efficient.
  • Deduplicated object store – SHA-256 content-addressed storage deduplicates across all snapshots; agent uploads are re-hashed server-side before commit.
  • Durable scheduling – background backup jobs with live progress, restart recovery, and three-attempt exponential retry.
  • Retention tiers – daily, weekly, and monthly retention plus automatic cleanup of objects no longer referenced by any recovery point.
  • Integrity verification – scheduled SHA-256 repository verification with corruption detection, plus automated recovery drills that restore and hash a deterministic sample from each latest recovery point.
  • Secure remote agents – one-time enrollment codes, per-device bearer credentials (only hashes stored), constant-time token comparison, and an agent-only remotely reachable API surface.
  • Snapshot-consistent backups – Windows VSS shadow copies, Linux Btrfs subvolume snapshots, or LVM copy-on-write snapshots with Auto/Required/Off modes recorded in every manifest.
  • Browsing and restore – browse any snapshot's file tree and queue selected paths for agent-side restore to a chosen folder on the original or another protected machine.
  • Operational monitoring – utilization, growth-per-day, estimated days until full, offline agents, and job-duration outliers with deduplicated Slack/SMTP alerts.
  • Diagnostics – daily rolling server/agent logs, per-machine live log dialogs, and durable retry/failure details in the Activity view.
  • Fast re-scans – a durable SQLite agent file index skips re-hashing unchanged files, with staggered cache revalidation.
  • Machine licensing – privacy-preserving machine fingerprints; 10 machines included, additional capacity activated against the Stoxello license server.

System Requirements

RequirementDetails
Server OSWindows x64, Linux x64, or any Docker host (multi-arch linux/amd64 + linux/arm64 image)
Protected machinesWindows or Linux x64 for the installed agent
NetworkDashboard on loopback port 5198; agent traffic on HTTPS port 5199 when protecting remote machines
LicensingInternet access to license.stoxello.com for machine-count validation (10 machines included)
RuntimeNone beyond the shipped binaries — server and agent packages are self-contained

Installation

Arkivix ships as ready-to-run binaries through the Arkivix Releases package: a Docker Compose file for the server, self-contained Windows/Linux server archives, agent packages with installer scripts, and a SHA256SUMS.txt checksum manifest.

  1. Verify your download against SHA256SUMS.txt.
  2. Docker (recommended): download the Compose file, pull the image, and start the stack.
  3. Native server: extract arkivix-server-win-x64.zip (run Arkivix.exe) or arkivix-server-linux-x64.tar.gz (run ./Arkivix) into a dedicated writable folder.
  4. Open http://127.0.0.1:5198, then use the global Add device action to enroll a machine — the dashboard generates a one-time enrollment code and the exact installer command.
  5. On the protected machine, run the matching agent installer (install-agent.ps1 / install-agent.sh) with your server URL and enrollment token.
# Deploy the server container
docker compose pull
docker compose up -d

# Windows agent (elevated PowerShell, from the extracted archive)
.\install-agent.ps1 `
  -ServerUrl https://backup.example:5199 `
  -EnrollmentToken YOUR_ONE_TIME_CODE `
  -SourcePath C:\Users\you\Documents `
  -SnapshotMode Required `
  -InstallMode Service

# Linux agent
sudo ./install-agent.sh \
  --server https://backup.example:5199 \
  --enrollment-token YOUR_ONE_TIME_CODE \
  --path /home/you/Documents \
  --snapshot-mode Required

To upgrade the container deployment, run docker compose pull && docker compose up -d; data lives in the persistent volume. Native servers are upgraded by replacing the extracted folder (keep its data directory).

Usage

Day-to-day operation happens in the dashboard. The Overview summarizes devices, running jobs, snapshots, and recent activity. Per-device pages start backups and show live progress plus a live log dialog of that machine's latest file events. The Recovery page browses any recovery point's manifest, selects files, and queues an agent-side restore; recovery points can also be deleted there, reclaiming only unreferenced content. Activity records retries and terminal failures with error details. The Monitoring view tracks capacity trends, offline agents, and slow jobs, while scheduled recovery drills continuously prove that restores work. Settings controls the repository path, retention, exclusions, SMTP details, and machine licensing.

Configuration

Most settings live in the dashboard's Settings page (repository path, retention, exclusions, SMTP host/port/username/sender/recipients). Secrets stay out of the interface through environment variables:

  • ARKIVIX_SLACK_WEBHOOK_URL — Slack incoming webhook for alerts.
  • ARKIVIX_SMTP_PASSWORD — SMTP password (other SMTP fields come from Settings).
  • ARKIVIX_BACKUP_SOURCE — host storage exposed to the container at /mnt/data (e.g., a mounted USB drive).
  • Arkivix__AllowNonLoopbackAdmin — accounts for Docker bridge networking in Compose; keep the dashboard bound to loopback or front it with authentication.
  • ARKIVIX_LICENSE_SERVER_URL / ARKIVIX_LICENSE_PURCHASE_URL — override licensing endpoints for self-hosted/test environments.
  • ARKIVIX_AGENT_RELEASE_BASE_URL — mirror location for agent release assets (defaults to the public latest-release path).

TLS for remote agents: create appsettings.Production.json beside the server executable (an example ships with the package), set the certificate path, and supply its password through a secret provider or environment configuration. The example keeps the dashboard on loopback port 5198 and exposes agent traffic on HTTPS port 5199. Daily logs roll under the data directory's logs/ folder on the server (App_Data/logs/arkivix-YYYYMMDD.log) and in the agent data directory (C:\ProgramData\ArkivixAgent\logs or ~/.config/arkivix-agent/logs).