docs: refresh for 02.61.0
+41
-87
@@ -1,103 +1,57 @@
|
||||
# MokoSuiteBackup
|
||||
|
||||
Full-site backup and restore for Joomla — database, files, and configuration.
|
||||
Full-site backup and restore for Joomla — database, files, and configuration. A modern replacement for Akeeba Backup Pro, built as a native Joomla 6 package with pre-update/pre-uninstall safety backups, content snapshots, remote storage, encryption, a REST API, scheduled tasks, and native CLI commands.
|
||||
|
||||
| Field | Value |
|
||||
## Overview
|
||||
|
||||
| Item | Value |
|
||||
|---|---|
|
||||
| **Package** | `pkg_mokosuitebackup` |
|
||||
| **Version** | 01.45.07 |
|
||||
| **Type** | Joomla Package (9 sub-extensions + MokoSuiteClient) |
|
||||
| **Joomla** | 6.x+ |
|
||||
| **PHP** | 8.3+ |
|
||||
| **Version** | 02.60.00 |
|
||||
| **Joomla** | 6.x or later (compatible with 4.x / 5.x update/uninstall flows) |
|
||||
| **PHP** | 8.3 or later |
|
||||
| **License** | GPL-3.0-or-later |
|
||||
| **Author** | Moko Consulting |
|
||||
|
||||
---
|
||||
## Package contents
|
||||
|
||||
MokoSuiteBackup installs as a single package that bundles the following sub-extensions:
|
||||
|
||||
| Sub-extension | Type | Purpose |
|
||||
|---|---|---|
|
||||
| `com_mokosuitebackup` | Component | Admin backend, backup engine, profiles, records, snapshots, Web Services API resources, CLI script |
|
||||
| `plg_system_mokosuitebackup` | System plugin | Pre-update / pre-uninstall interception, hourly retention cleanup |
|
||||
| `plg_task_mokosuitebackup` | Task plugin | Scheduled Tasks integration (Run Backup Profile / Run Snapshot task types) |
|
||||
| `plg_webservices_mokosuitebackup` | Web Services plugin | REST API for backups, profiles, downloads, and snapshot injection |
|
||||
| `plg_console_mokosuitebackup` | Console plugin | Native `joomla` CLI commands (run, list, profiles, restore, cleanup, snapshot) |
|
||||
| `plg_actionlog_mokosuitebackup` | Action Log plugin | User Action Log entries for backup events |
|
||||
| `plg_quickicon_mokosuitebackup` | Quick Icon plugin | Control Panel quick icon |
|
||||
| `plg_content_mokosuitebackup` | Content plugin | Content-side integration |
|
||||
| `mod_mokosuitebackup_cpanel` | Admin module | cPanel dashboard module |
|
||||
|
||||
## Guides
|
||||
|
||||
- [Installation](guides/Installation)
|
||||
- [Configuration](guides/Configuration)
|
||||
- [Backup Profiles](Backup-Profiles)
|
||||
- [Scheduled Tasks](guides/Scheduled-Tasks)
|
||||
- [CLI Usage](guides/CLI-Usage)
|
||||
- [Akeeba Migration](guides/Akeeba-Migration)
|
||||
- [Installation](Installation) — install via the Joomla installer, update site, or CLI; requirements and verification
|
||||
- [Configuration](Configuration) — every option in the component Options screen, grouped by tab
|
||||
- [Pre-Update-Backup](Pre-Update-Backup) — automatic full-screen backups before extension/core updates and uninstalls
|
||||
- [Snapshot-Transfer](Snapshot-Transfer) — export, import, and inject content snapshots between sites
|
||||
|
||||
## Reference
|
||||
|
||||
- [Database Schema](Database-Schema)
|
||||
- [Architecture](Architecture)
|
||||
- [REST API](reference/REST-API)
|
||||
- [Remote Storage](reference/Remote-Storage)
|
||||
- [Encryption](reference/Encryption)
|
||||
- [Differential Backups](reference/Differential-Backups)
|
||||
- [Changelog](Changelog)
|
||||
- [Troubleshooting](guides/Troubleshooting)
|
||||
|
||||
---
|
||||
- [Changelog](Changelog) — release history through 02.60.00
|
||||
|
||||
## Features
|
||||
|
||||
### Backup
|
||||
- Full site, database-only, files-only, differential
|
||||
- Pre-flight validation before backup starts
|
||||
- Auto-verify archive integrity after creation
|
||||
- Archive formats: ZIP, tar.gz, 7z
|
||||
- AES-256 encryption (ZIP) or 7z native encryption
|
||||
- Data sanitization: clear passwords, emails, sessions
|
||||
- Manual purge by date with count preview
|
||||
|
||||
### Content Snapshots
|
||||
- Lightweight JSON snapshots of articles, categories, modules
|
||||
- Includes tags, custom fields, workflow associations
|
||||
- Restore: Replace / Merge / Selective article restore
|
||||
- Scheduled snapshot task + automatic retention
|
||||
|
||||
### Remote Storage
|
||||
- Multi-remote: multiple destinations per profile (SFTP + S3 + GDrive simultaneously)
|
||||
- SFTP with SSH key file auth + remote directory browser
|
||||
- Amazon S3 (and S3-compatible)
|
||||
- Google Drive with OAuth2
|
||||
- FTP/FTPS
|
||||
- Graceful degradation — local backup preserved if upload fails
|
||||
|
||||
### MokoRestore Standalone Wizard
|
||||
- 9-step restore wizard that works without Joomla installed
|
||||
- Per-table conflict resolution: Replace / Skip / Merge / Data Only
|
||||
- Post-restore: reset passwords, hits, versions, sessions, cache
|
||||
- Auto-detect sanitized passwords and prompt for reset
|
||||
- Standalone mode: restore script scans directory for ZIP files
|
||||
- Customizable restore script filename per profile
|
||||
|
||||
### Bundled: MokoSuiteClient
|
||||
- Full MokoSuiteClient package installed automatically alongside MokoSuiteBackup
|
||||
- Admin dashboard, security firewall, tenant management, developer tools
|
||||
|
||||
### Admin Dashboard
|
||||
- CPanel module with backup status and quick action buttons
|
||||
- Snapshot widget, backup trend chart, storage breakdown
|
||||
- System health checks
|
||||
- Backup comparison: side-by-side diff between two backups
|
||||
- Archive browser: view files inside backup without extracting
|
||||
|
||||
### Security
|
||||
- 14 ACL permissions with full enforcement across all controllers
|
||||
- Data sanitization: passwords, emails, sessions
|
||||
- SSH key stored base64-encoded, never exposed in UI
|
||||
- Path traversal protection on all archive extraction
|
||||
- Webcron secret hardening + IP whitelist
|
||||
|
||||
### CLI
|
||||
- `mokosuitebackup:run` • `mokosuitebackup:restore` • `mokosuitebackup:snapshot`
|
||||
- `mokosuitebackup:list` • `mokosuitebackup:profiles` • `mokosuitebackup:cleanup`
|
||||
|
||||
### REST API
|
||||
- Backup: start, list, download, delete, profiles
|
||||
- Snapshots: create, list, restore, delete, download
|
||||
|
||||
---
|
||||
|
||||
## Quick Start
|
||||
|
||||
1. Download from [Releases](https://git.mokoconsulting.tech/MokoConsulting/MokoSuiteBackup/releases)
|
||||
2. Install via Extensions > Install
|
||||
3. Components > MokoSuiteBackup > Dashboard > Backup Now
|
||||
- **Full-screen pre-update / pre-uninstall backup** — before a core Joomla update, an extension update, or an extension uninstall, MokoSuiteBackup runs a stepped, full-page backup with a real progress bar (Akeeba-style), then automatically continues the original action. Fires once per Update action for every extension, super-user only, and gated by the `backup_before_update` / `backup_before_uninstall` options.
|
||||
- **Content snapshot transfer & master→slave injection** — export a content snapshot as a portable `.msbsnap` file (zip of `manifest.json` + `snapshot.json` with a SHA-256 integrity check), import one on another site, or push one directly into a slave site via the injection API. Conflict modes: **overwrite**, **create**, and **duplicate** (remapped IDs).
|
||||
- **Remote retention pruning** — when a backup is pruned by age or count, its archive is also deleted from every enabled remote destination (SFTP / FTP / S3 / Google Drive), not just the local copy.
|
||||
- **Remote storage** — upload archives to SFTP, FTP, Amazon S3, and Google Drive, configured per destination, with an optional "keep local copy" per destination.
|
||||
- **Encryption** — protect backup archives.
|
||||
- **Differential backups** — capture only what changed since a prior backup.
|
||||
- **REST API** — manage backups, profiles, downloads, deletion, and snapshot injection over Joomla Web Services.
|
||||
- **Scheduled tasks** — run backup profiles and snapshots on a schedule through Joomla's Scheduled Tasks (com_scheduler).
|
||||
- **CLI** — native `joomla mokosuitebackup:*` console commands plus a standalone cron script.
|
||||
- **Restore options** — no restore script, a wrapped restore, or a standalone `restore.php` generated alongside the archive.
|
||||
- **Data sanitization** — optionally sanitize passwords, emails, and sessions in the database dump.
|
||||
- **Notifications** — email and ntfy notifications on success and/or failure.
|
||||
- **Web-cron support** — trigger backups via a secret-protected URL with optional IP whitelisting.
|
||||
|
||||
Reference in New Issue
Block a user