Skip to content

dr34m-cn/taosync

Repository files navigation

logo

TaoSync是一个适用于AList v3的自动化同步工具。


桃桃是我女儿的乳名,我是桃桃她爸,这也是本程序的logo。

本程序开发之初,主要是为了保存桃桃成长的照片,故名taoSync

如果好用,请Star!非常感谢! GitHub Gitee DockerHub

点击展开截图

由于更新频繁,截图仅供参考,以实际为准

引擎管理

引擎列表

引擎编辑

引擎编辑

新建作业

新建作业

作业列表

作业列表

作业详情(任务列表)

任务列表

任务详情

任务详情

须知

Important

使用本工具前你必须了解并且会使用AList;本工具没有集成AList,你需要额外启动AList

Warning

警告!不要在外网暴露本系统,否则后果自负!
本系统已经做了一定的安全方面的工作,但仍不能保证绝对安全。如确实需要,请务必使用强密码,并使用SSL

用途举例

1. 同步备份

把本地文件备份到多个网盘或FTP之类的存储,或者在多个网盘之间同步文件等;

可以定时扫描指定目录下文件差异,让目标目录与源目录相同(全同步模式);或仅新增存在于源目录,却不存在于目标目录的文件(仅新增模式)

2. 定时下载

可以设置一次性任务(cron方式设置年月日时分秒,将在指定时间执行一次),可在闲时自动从特定网盘下载文件到本地

特性

  • 开源免费,几乎支持所有常用平台
    • windows-amd64
    • darwin-amd64
    • darwin-arm64
    • linux-amd64
    • linux-arm64
    • linux-386
    • linux-arm-v6
    • linux-arm-v7
    • linux-s390x
    • linux-ppc64le
  • Github Actions自动打包与发布构建好的可执行程序,并支持Docker,下载即用
  • 干净卸载,不用的时候删掉即可,无任何残留或依赖,不影响系统里其他程序
  • 密码加密不可逆,永远不会泄露您的密码,敏感信息均被加密
  • 完全离线运行(仅连接AList),永不上传用户隐私
  • 完善的错误处理,稳定可靠,逻辑自洽;可能出错,但永不崩溃(我猜的)
  • 完善的日志,所有错误都会被记录
  • 引擎管理,可以自由增删改查AList
  • 作业管理,可以新增/删除/启用/禁用/编辑/手动执行作业
  • 支持排除项规则,可以排除指定目录或文件不同步
  • 仅新增与全同步模式
  • 定时同步支持间隔、cron方式
  • 同步进度实时可视化查看与筛选
  • 存储可控,合理配置任务记录与日志保留天数,可以控制本程序所占用存储在可控范围内

使用方法

先启动

  • 可执行程序

前往Release下载对应平台的可执行程序,直接执行

Tip

开机自启、守护进程等可以参考AList的方式,把其中的alist改为taoSync;注意,本程序不需要server参数

  • docker
docker run -d --restart=always -p 8023:8023 -v /opt/data:/app/data --name=taoSync dr34m/tao-sync:latest

把其中/opt/data替换为你实际的目录

在绿联NAS中使用可以参考这里如何在绿联NAS中使用TaoSync同步我的文件到各个网盘,在其他支持Docker的NAS中使用大同小异

再使用

访问http://127.0.0.1:8023

如果你没有修改,默认账号为admin,密码请到日志中查看输出,登录后请立即前往系统设置修改密码

Note

如果没有显示这个日志,可以到同级目录的data/log/sys_xxx.log文件查看,通常在第一行

进入系统后先到引擎管理菜单创建引擎,然后前往作业管理创建同步作业

配置项

点击展开配置项

配置优先级:data/config.ini>环境变量>默认值;前一个存在,则后边都将被忽略。修改配置需重启程序或Docker。

data/config.ini文件示例(如该文件存在,则优先级最高

[tao]
# 运行端口号
port=8023
# 登录有效期,单位天
expires=2
# 日志等级:0-DEBUG,1-INFO,2-WARNING,3-ERROR,4-CRITICAL;数值越大,产生的日志越少,推荐1或2
log_level=1
# 控制台日志等级:适用于v0.2.3及之后版本,与上同
console_level=2
# 系统日志保留天数,该天数之前的日志会自动清理,单位天,0表示不自动清理
log_save=7
# 任务记录保留天数,该天数之前的记录会自动清理,单位天,0表示不自动清理
task_save=0
# 任务执行超时时间,单位小时。一定要设置长一点,以免要备份的东西太多
task_timeout=72

上边的文件默认不存在,如需要,您可以手动在程序同级目录的data目录下创建config.ini,并填入上边的内容。注意,文件应使用UTF-8编码

config.ini Docker环境变量 描述 默认值
port TAO_PORT 运行端口号 8023
expires TAO_EXPIRES 登录有效期,单位天 2
log_level TAO_LOG_LEVEL 日志等级:0-DEBUG,1-INFO,2-WARNING,3-ERROR,4-CRITICAL;数值越大,产生的日志越少,推荐1或2 1
console_level TAO_CONSOLE_LEVEL 控制台日志等级:适用于v0.2.3及之后版本;与上同 2
log_save TAO_LOG_SAVE 系统日志保留天数,该天数之前的日志会自动清理,单位天,0表示不自动清理 7
task_save TAO_TASK_SAVE 任务记录保留天数,该天数之前的记录会自动清理,单位天,0表示不自动清理 0
task_timeout TAO_TASK_TIMEOUT 任务执行超时时间,单位小时。一定要设置长一点,以免要备份的东西太多 72
- TZ 时区 Asia/Shanghai

研发状态

历史记录在这里

如想体验研发中的版本,可以尝试到DockerHubRelease找最新的含devpre的tag,例如v0.1.0-dev-build0

规划中(随时改变or因太难不做了,概不负责)

  • windows版本优化(开机自启,隐藏页面,启动停止等)#13
  • Alist支持加密同步 #18
  • 边扫描边同步,扫描失败不中断任务 #19
  • 移动端适配(可能顺便开发个app?)
  • 支持本地引擎(不基于AList
  • 任务剩余时间预估
  • 任务同步速度计算
  • 本地引擎支持加密同步
  • 保留历史N个版本(N可自定义,可无限)
  • 配置导入导出
  • 任务整体进度条展示(目前只能展示每个文件的进度条)
  • 多语言支持
  • linux一键安装、更新与卸载脚本

0.2.5(规划开发中,随时调整)

  • 移动模式 #16