From 80196eae9398b7be0652cc4de8a2e24f88e31524 Mon Sep 17 00:00:00 2001 From: Awuqing <3184394176@qq.com> Date: Sat, 21 Mar 2026 16:22:26 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E6=9B=B4=E6=96=B0=20README=20=E6=96=87?= =?UTF-8?q?=E6=A1=A3=EF=BC=8C=E6=B7=BB=E5=8A=A0=20SAP=20HANA=20=E5=92=8C?= =?UTF-8?q?=20FTP=20=E6=94=AF=E6=8C=81=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 简介描述新增 FTP/FTPS 存储选项 - 备份类型列表新增 SAP HANA(通过 hdbsql 工具) - 存储后端表格新增 FTP / FTPS 行 - 架构图 Storage Registry 新增 FTP / FTPS - 项目结构树新增 backup/saphana 和 storage/ftp - 技术栈表格新增 jlaffaye/ftp 依赖 - 同步更新中英文双语 README --- README.md | 10 +++++++--- README_EN.md | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 7a479c4..f02480f 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ --- -BackupX 是一个面向 **Linux / macOS 服务器**的自托管备份管理平台。通过企业级 Web 控制台,轻松配置目录备份、数据库备份,并将备份文件安全存储到阿里云 OSS、腾讯云 COS、七牛云 Kodo、Google Drive、S3 兼容存储、WebDAV 或本地磁盘。 +BackupX 是一个面向 **Linux / macOS 服务器**的自托管备份管理平台。通过企业级 Web 控制台,轻松配置目录备份、数据库备份,并将备份文件安全存储到阿里云 OSS、腾讯云 COS、七牛云 Kodo、Google Drive、S3 兼容存储、WebDAV、FTP/FTPS 或本地磁盘。 支持 **多节点集群管理**,可统一管控分布在不同服务器上的备份任务。 @@ -68,6 +68,7 @@ BackupX 是一个面向 **Linux / macOS 服务器**的自托管备份管理平 - **MySQL** — 通过 `mysqldump` 原生工具 - **SQLite** — 安全文件拷贝 - **PostgreSQL** — 通过 `pg_dump` 原生工具 +- **SAP HANA** — 通过 `hdbsql` 原生工具(支持多租户数据库) ### ☁️ 多云存储后端 | 厂商 | 类型 | 说明 | @@ -78,6 +79,7 @@ BackupX 是一个面向 **Linux / macOS 服务器**的自托管备份管理平 | 🌍 **S3 Compatible** | `s3` | AWS S3 / MinIO / Cloudflare R2 等 | | 🌍 **Google Drive** | `google_drive` | 完整 OAuth 2.0 授权流程 | | 🌍 **WebDAV** | `webdav` | 坚果云 / Nextcloud 等 | +| 🌍 **FTP / FTPS** | `ftp` | 标准 FTP 协议,支持 Explicit TLS 加密 | | 💾 **本地磁盘** | `local_disk` | 备份到服务器本地目录 | > 国内云厂商仅需填写 **Region** 和 **AccessKey**,系统自动完成 Endpoint 组装,底层复用 S3 引擎零额外依赖。 @@ -188,6 +190,7 @@ log: │ │Scheduler │ │ │ S3 Compatible │ ││ │ └──────────┘ │ │ Google Drive │ ││ │ │ │ WebDAV │ ││ +│ │ │ FTP / FTPS │ ││ │ ┌──────────┐ │ │ Local Disk │ ││ │ │ Notify │ │ └─────────────────┘ ││ │ │ Module │ └───────────────────────┘│ @@ -211,7 +214,7 @@ log: |------|------| | **后端** | Go · Gin · GORM · SQLite · robfig/cron | | **前端** | React 18 · TypeScript · ArcoDesign · Vite · Zustand · ECharts | -| **存储** | AWS SDK v2 (S3/OSS/COS/Kodo) · Google Drive API v3 · gowebdav | +| **存储** | AWS SDK v2 (S3/OSS/COS/Kodo) · Google Drive API v3 · gowebdav · jlaffaye/ftp | | **安全** | JWT · bcrypt · AES-256-GCM | | **日志** | zap + lumberjack (自动轮转) | @@ -249,7 +252,7 @@ BackupX/ │ ├── internal/ │ │ ├── app/ # 应用组装 (DI) │ │ ├── apperror/ # 统一错误类型 -│ │ ├── backup/ # 备份引擎 (file/mysql/sqlite/pgsql) +│ │ ├── backup/ # 备份引擎 (file/mysql/sqlite/pgsql/saphana) │ │ │ └── retention/ # 保留策略 │ │ ├── config/ # 配置加载 (viper) │ │ ├── database/ # 数据库初始化 + 迁移 @@ -272,6 +275,7 @@ BackupX/ │ │ ├── webdav/ # WebDAV 核心 │ │ ├── webdavprovider/ # WebDAV Provider 辅助 │ │ ├── localdisk/ # 本地磁盘 +│ │ ├── ftp/ # FTP / FTPS │ │ └── codec/ # 配置编解码 │ └── pkg/ # 工具包 (compress/crypto/response) ├── web/ # React 前端 diff --git a/README_EN.md b/README_EN.md index 9a2711b..bb82bdb 100644 --- a/README_EN.md +++ b/README_EN.md @@ -29,7 +29,7 @@ --- -BackupX is a self-hosted backup management platform for **Linux / macOS servers**. Through an enterprise-grade Web console, you can easily configure directory backups, database backups, and securely store backup files to Alibaba Cloud OSS, Tencent Cloud COS, Qiniu Cloud Kodo, Google Drive, S3-compatible storage, WebDAV, or local disk. +BackupX is a self-hosted backup management platform for **Linux / macOS servers**. Through an enterprise-grade Web console, you can easily configure directory backups, database backups, and securely store backup files to Alibaba Cloud OSS, Tencent Cloud COS, Qiniu Cloud Kodo, Google Drive, S3-compatible storage, WebDAV, FTP/FTPS, or local disk. Supports **multi-node cluster management** for unified control of backup tasks across different servers. @@ -68,6 +68,7 @@ Supports **multi-node cluster management** for unified control of backup tasks a - **MySQL** — Via native `mysqldump` tool - **SQLite** — Safe file copy - **PostgreSQL** — Via native `pg_dump` tool +- **SAP HANA** — Via native `hdbsql` tool (multi-tenant database support) ### ☁️ Multi-Cloud Storage Backends | Provider | Type | Description | @@ -78,6 +79,7 @@ Supports **multi-node cluster management** for unified control of backup tasks a | 🌍 **S3 Compatible** | `s3` | AWS S3 / MinIO / Cloudflare R2, etc. | | 🌍 **Google Drive** | `google_drive` | Full OAuth 2.0 flow | | 🌍 **WebDAV** | `webdav` | Nextcloud / Nutstore, etc. | +| 🌍 **FTP / FTPS** | `ftp` | Standard FTP protocol with Explicit TLS support | | 💾 **Local Disk** | `local_disk` | Backup to local server directory | > Chinese cloud providers only require **Region** and **AccessKey** — the system auto-assembles the endpoint. Powered by the S3 engine under the hood with zero extra dependencies. @@ -189,6 +191,7 @@ log: │ │Scheduler │ │ │ S3 Compatible │ ││ │ └──────────┘ │ │ Google Drive │ ││ │ │ │ WebDAV │ ││ +│ │ │ FTP / FTPS │ ││ │ ┌──────────┐ │ │ Local Disk │ ││ │ │ Notify │ │ └─────────────────┘ ││ │ │ Module │ └───────────────────────┘│ @@ -212,7 +215,7 @@ log: |-----------|-----------| | **Backend** | Go · Gin · GORM · SQLite · robfig/cron | | **Frontend** | React 18 · TypeScript · ArcoDesign · Vite · Zustand · ECharts | -| **Storage** | AWS SDK v2 (S3/OSS/COS/Kodo) · Google Drive API v3 · gowebdav | +| **Storage** | AWS SDK v2 (S3/OSS/COS/Kodo) · Google Drive API v3 · gowebdav · jlaffaye/ftp | | **Security** | JWT · bcrypt · AES-256-GCM | | **Logging** | zap + lumberjack (auto-rotation) | @@ -250,7 +253,7 @@ BackupX/ │ ├── internal/ │ │ ├── app/ # App assembly (DI) │ │ ├── apperror/ # Unified error types -│ │ ├── backup/ # Backup engine (file/mysql/sqlite/pgsql) +│ │ ├── backup/ # Backup engine (file/mysql/sqlite/pgsql/saphana) │ │ │ └── retention/ # Retention policy │ │ ├── config/ # Config loading (viper) │ │ ├── database/ # Database init + migrations @@ -273,6 +276,7 @@ BackupX/ │ │ ├── webdav/ # WebDAV core │ │ ├── webdavprovider/ # WebDAV Provider helper │ │ ├── localdisk/ # Local disk +│ │ ├── ftp/ # FTP / FTPS │ │ └── codec/ # Config codec │ └── pkg/ # Utilities (compress/crypto/response) ├── web/ # React frontend