Code Monkey home page Code Monkey logo

aliyunpan's Introduction

AliYunPan-Logo

备份助手

一款可以定时备份本地目录到阿里云盘的小工具

码云Gitee GitHub stars GitHub release GitHub license

支持的平台

Windows • Linux • macOS

环境

Java Swing + FlatLaf + Hutool + Okhttp3

如果觉得不错希望您能留下真贵的Star,您的Star就是我的动力,感谢!

由来

工作中会经常接收到各个客户发来的种种文件,这些文件又比较重要,搞丢了就会很麻烦。

而且公司电脑的文件回家后要改就很麻烦,不能同步,苦于网上没有找到类似的备份软件,咱自己动手写一个!

哪我为什么不用百度云盘???因为穷!!!因为限速。。。

截图速览

AliYunPan

AliYunPan

AliYunPan

下载安装

备份助手下载地址

更新日志

2022-7-31
  • 1.新增停止备份功能
  • 2.相同文件改为覆盖模式
  • 3.修改文件比较逻辑
  • 4.修复登录失败异常问题
  • 5.优化更新DB异常的处理
2022-3-26
  • 1.修复无法获取版本信息
  • 2.新增启动时检测更新开关
  • 3.优化mac系统的兼容性
  • 4.去掉请求间隔时长
2022-3-13
  • 1.新增文件秒传
  • 2.优化程序检测更新
  • 3.优化与本地文件比对
  • 4.优化右键开始备份
  • 5.优化关闭最小化窗口
  • 6.优化429错误出现次数
2022-3-2
  • 2.1全新版本,新的开始!
  • 软件UI重新布局美化
  • 修复了N个BUG
  • 强烈建议升级!!!
  • 调整打包方式内置运行环境,各平台安装更便捷
2022-2-6
  • 优化扫描目录逻辑
  • 优化目录监听上传
  • 修改获取contentType方法
2022-1-16
  • 新增微信备份模式(仅对一级目录分类,二级目录不分类)
  • 新增记录运行日志
  • 优化更新检测
  • 优化登录逻辑,修复登录异常
  • 优化文件夹、文件获取方式,修复一直获取文件夹
2021-12-5
  • 优化用户界面
  • 新增检测是否更新
  • 优化上传逻辑,新增分片上传
  • 支持大文件上传,显示文件上传进度
  • 修复开启目录检测不准确bug
2021-11-28
  • 新增更多设置界面,配置自动备份时间
  • 文件目录监控改为手动开启关闭
  • 重点修复429请求频繁错误
  • 优化代码结构
2021-09-20
  • 自定义设置自动备份时间
  • 优化文件监控
  • 修复偶尔发生的排版错乱
  • 优化代码结构,修复N个BUG
  • 去掉账号密码登录和短信验证码登录
2021-06-03
  • 新增二维码登录
  • 修复阿里云盘更新导致无法登录
  • 优化代码结构

内置功能

  1. 刷新Token:每小时刷新一次Token,避免token失效。
  2. 文件分类:支持按文件类型分类上传,按【文档、图片、视频、音乐等】
  3. 上传记忆:记录已经上传的文件,下次执行进行增量上传。
  4. 目录监控:软件启动后自动监听当前需要备份的目录,产生新文件或文件修改时自动上传新文件。
  5. 定时同步:开启程序后,每晚20:30 自动上传本地目录到【阿里云盘】
    PS:如需修改执行时间请到back_config.setting文件中修改backupTime参数,注意格式不要写错哦~如【20:30:00】
  6. 登录状态:自动保存登录状态,减少登录次数,提升用户体验

开发计划....

1.生成上传日志文件 2.是否开启压缩后备份 3.按关键字、按类型上传

使用说明

  1. 双击打开程序,登录阿里云盘账号
  2. 选择要备份的目录
  3. 备份目录则填写想要上传到【阿里云盘】的目录名称
  4. 备份模式:
    1. 普通备份:会按本地目录结构上传文件
    2. 分类备份:会将本地文件按文档、压缩包、软件、音乐、图片、视频等分类上传
  5. 点击开始备份,即可全量备份所选目录。

常见问题

出现【请您先在电脑网页登录成功后,再登录本软件。】是因为第一次在本设备登录需要进行二次认证。。。暂未兼容

特别感谢

zhoubochina
FlatLaf
Hutool

aliyunpan's People

Contributors

chenxingk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

aliyunpan's Issues

文件修改后不会上传

这样的,我昨天上传备份一次,今天我有1个或多个文件修改了一下,我再点开始备份,是不是应该上传新的文件呢,现在是只要检测到有同名文件,备份任务就算完成了。

深色模式异常

在扫码登录页面调为深色模式后,扫码登录进入主界面,主界面并不会是深色模式的

复现

扫码登录页面调为深色模式
登录

解决思路

扫码登录后,若为深色模式,执行一遍浅色模式+深色模式

备份到本地功能

本程序添加一个备份到本地的功能应该不难吧

目的

有的人手头有1TB移动硬盘,可以往里面备份东西(比如我就是把U盘的东西往里面备份,因为U盘太容易坏太容易丢了)

实现思路

把上传阿里云盘的代码改写成copy files

备份失败,提示:遇到异常情况:java.lang.NullPointerException

[2023-04-22 00:59:07] 开始上传:D:\百度网盘\packages\ADC\LCC\LCC.sig
[2023-04-22 00:59:08] 文件上传,请求状态码:400
[2023-04-22 00:59:08] 遇到异常情况:java.lang.NullPointerException
at xin.xingk.www.util.BackupUtil.doUploadFile(BackupUtil.java:186)
at xin.xingk.www.util.BackupUtil.uploadFileList(BackupUtil.java:146)
at xin.xingk.www.util.BackupUtil.scanFolders(BackupUtil.java:98)
at xin.xingk.www.util.BackupUtil.scanFolders(BackupUtil.java:105)
at xin.xingk.www.util.BackupUtil.scanFolders(BackupUtil.java:105)
at xin.xingk.www.util.BackupUtil.scanFolders(BackupUtil.java:105)
at xin.xingk.www.util.BackupUtil.backupTask(BackupUtil.java:64)
at xin.xingk.www.util.BackupUtil.startBackup(BackupUtil.java:51)
at xin.xingk.www.ui.Home.backupTable(Home.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
/接着进行下一个文件的上传,出现相同错误,没有一个复制成功。本地文件路径检查正确,云盘路径用alist+raidriver挂载在本地,云盘路径检查正确,并且手动可复制、删除等一系列操作。更换两个地址,都出现相同错误。/

上传大文件报错

09:05:53.560 [pool-1-thread-4] INFO xin.xingk.www.util.UIUtil :50 - [2022-11-09 09:05:53] 开始上传:F:\下载\Romance.Of.Three.Kingdom.XIV.With.PowerUp.Kit.v1.0.8.zip
09:05:54.438 [pool-1-thread-4] INFO xin.xingk.www.util.UIUtil :50 - [2022-11-09 09:05:54] 文件上传,请求状态码:400
09:05:54.456 [pool-1-thread-4] INFO xin.xingk.www.util.UIUtil :50 - [2022-11-09 09:05:54] 遇到异常情况:java.lang.NullPointerException
at xin.xingk.www.util.BackupUtil.doUploadFile(BackupUtil.java:186)
at xin.xingk.www.util.BackupUtil.uploadFileList(BackupUtil.java:146)
at xin.xingk.www.util.BackupUtil.scanFolders(BackupUtil.java:98)
at xin.xingk.www.util.BackupUtil.backupTask(BackupUtil.java:64)
at xin.xingk.www.util.BackupUtil.startBackup(BackupUtil.java:46)
at xin.xingk.www.ui.Home.lambda$null$3(Home.java:117)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

扫码后无反应

出现扫描登录页面, 阿里云盘扫码后,没有任何反应, 请问是什么原因?

能提供ARM64架构的deb包吗?

首先感谢作者提供了这么好的软件,在linux系统下一直找不到合适的同步软件,很多都只支持x86架构,支持国产网盘的就更少了。
现在办公用的是ARM64架构的银河麒麟系统,建议作者能编译一个支持ARM64的deb安装包,相信信创用户会很欢迎的。谢谢。

当备份目录下有先前备份过的文件时,新文件不会被备份

15:52:27.745 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:27] 开始获取:C:\storage\biliup\backup\foftg 15:52:28.057 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:28] 文件列表,请求状态码:200 15:52:38.323 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:38] C:\storage\biliup\backup\foftg\foftg2023-02-05T20_14_15.flv 云盘已存在 跳过 15:52:38.323 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:38] 本次备份:C:\storage\biliup\backup\foftg 下所有文件成功!... 15:52:38.620 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:38] 开始获取:C:\storage\biliup\backup\edmunddzhang 15:52:38.948 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:38] 文件列表,请求状态码:200 15:52:44.151 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:44] C:\storage\biliup\backup\edmunddzhang\edmunddzhang2023-02-05T19_06_08.flv 云盘已存在 跳过 15:52:44.151 [pool-1-thread-6] INFO xin.xingk.www.util.UIUtil :50 - [2023-02-07 15:52:44] 本次备份:C:\storage\biliup\backup\edmunddzhang 下所有文件成功!...

备份目录扫描出现缓存异常的情况

具体表现为如果对同目录下的文件进行修改,甚至直接在云盘里删除文件后,备份助手依旧能够识别到已存在,从而触发跳过指令。最终备份失败

同步

以后会考虑同步么

使用2小问题

1 上传记忆下次增量,但是网盘更新时间没有变,还是第一次传输时间
2 运行这个程序内存和cpu占有量比较严重

停止备份后再重新备份的问题

感谢作者提供的好软件, 使用中发现停止备份后再重新备份需要重新搜索,跳过已备份文件,如果文件多的话需要耗费大量时间了。另外,在备份时修改文件,可能导致无法备份了。显示跳过文件夹备份,而实际上文件还很多尚无备份完成。

功能增加建议

1.选择每天定时多久同步一次文件
2.可以选择上传文件后自动删除本地文件,减少本地文件存储空间

建议支持多账户,增量备份

希望本工具软件可以实现:

  1. 全盘备份到第一账号网盘;
  2. 增量备份上传到第二账号网盘;
  3. 跨网盘结合增量数据下载更新后的目录结构。

具体用途是:每年只给第一账号缴一个月VIP费用,备份全部资料(20TB)。
因为VIP到期后不能再上传数据,但网盘数据会继续保留。

完全备份之日做个记录库,以后把增量备份,上传到第二个账号(免费)。
这样做目的是实现最省钱的大容量备份方法。

用户在下载文件时,用本软件能自动下载到两个网盘整合后的最新资料,不用到两个网盘去查找。

已备份文件,能否跳过备份?

目标文件夹有20G左右,软件打开后一次没有完成备份,第二次打开后将再次从第一个文件开始备份,虽然会跳过,但是会耗费时间较长。是否有选项可以挑个已备份文件?

是否可以增加逐个版本备份即:

当前是覆盖备份模式,是否增加个选项做非覆盖备份,即备份的文件夹(文件) 在备份的时候 名字添加日期+时间后缀到指定目录

ps 是否可以增加本地备份功能,也就是指定的文件(夹) 备份到本地指定的目录

过滤掉临时文件

编辑excel时,会生成临时文件,文件名以点开头,linux中表示隐藏文件。建议过滤掉这部分文件。
image

希望支持子文件夹不上传功能

例如在子文件夹下面放一个.noupload文件,然后扫到子文件夹的时候就不上传。
我上传备份结果程序把子文件夹里面默认隐藏的几百份日志文件也上传上去了,不得不退出软件删除备份
PS:单线程对于大量小文件来说太慢了,能否给个同时上传的选项?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.