以下是根据 Synology_app_mover 项目编写的 中文使用说明:
Synology 应用迁移工具 (syno_app_mover) 使用指南
功能:安全迁移群晖套件到其他存储卷,或备份/恢复套件数据。支持 DSM 7。
一、安装准备
- 下载脚本
- 从 GitHub 下载项目 ZIP 文件:007revad/Synology_app_mover
- 解压 ZIP 到群晖的任意文件夹(如
/volume1/scripts/
)。
- 配置文件设置
编辑
syno_app_mover.conf
文件(与脚本同目录):# 备份路径(需提前创建) backuppath="/volume1/backups" # 示例路径 # 空间检查缓冲(单位:GB,避免目标卷写满) buffer=50 # 跳过近期备份(单位:分钟,0=始终备份) skip_minutes=360 # 排除特定套件(使用系统名称,逗号分隔) exclude="DownloadStation,ContainerManager"
- 设置脚本权限
通过 SSH 执行:
sudo chmod +x /volume1/scripts/syno_app_mover.sh
二、运行脚本
sudo -s /path/to/syno_app_mover.sh [选项]
常用选项
选项 | 说明 |
---|---|
--list |
列出已安装套件的系统名称(迁移时需用此名称) |
--auto=套件名 |
自动备份指定套件(支持逗号分隔或 all 全备份)示例: --auto=ContainerManager 或 --auto=all |
--autoupdate=天数 |
自动更新脚本(如 --autoupdate=7 每周更新) |
-h / --help |
查看帮助文档 |
三、迁移套件流程
- 运行脚本选择
Move a package
- 选择要迁移的套件(使用方向键+空格选中)
- 选择目标存储卷
- 脚本将自动完成:
- 停止套件服务
- 迁移数据到新卷
- 修复符号链接
- 重启套件
注意:
- Docker/Container Manager 需额外导出容器设置(见下文)。
- 部分套件需手动修改存储路径(如 Active Backup)。
四、备份与恢复
- 备份:选择
Backup a package
→ 选套件 → 自动压缩到backuppath
- 恢复:选择
Restore a package
→ 选备份文件 → 自动解压并修复权限
备份规则:
- 跳过
skip_minutes
内已备份的套件。- 排除
exclude
列表中的套件。
五、特殊套件处理
1. Docker / Container Manager
# 在 syno_app_mover.conf 中配置:
delete_older=30 # 自动删除超过30天的旧设置
ignored_containers="libraspeed-1" # 忽略的容器名
迁移前会自动导出容器设置(保存到 backuppath
)。
2. 已知兼容套件
套件名称 (系统名) | 状态 | 备注 |
---|---|---|
ContainerManager | ✅ | 支持 v20.10.23 |
Docker | ✅ | 需手动导出设置 |
SynologyDrive | ✅ | |
PlexMediaServer | ✅ | |
完整列表 | 见项目 README |
六、常见问题
- 脚本无法运行
- 确认路径无空格(如有空格需加引号:
"/volume1/my scripts/syno_app_mover.sh"
) - 检查文件权限(执行
chmod +x
)
- 确认路径无空格(如有空格需加引号:
- 迁移后套件异常
- 检查依赖套件是否迁移(如 PHP 依赖 Web Station)
- 部分套件需重配置存储路径(如 SurveillanceStation)
- 备份到 USB 设备
- 确保 USB 文件系统为 ext3/ext4/btrfs(NTFS/FAT 不支持权限)
风险提示:
务必提前备份重要数据!迁移系统套件存在风险,非兼容套件可能导致故障。
七、视频演示
- 迁移 Container Manager
- 更多截图见项目
/images
文件夹
Credits: wallacebrf (测试), ctrlaltdelete (Docker 导出代码)
项目更新:使用 --autoupdate
选项自动获取新版本!
评论
还没有任何评论,你来说两句吧!