https://github.com/tickstep/aliyunpan

安装

# apt安装
sudo curl -fsSL http://file.tickstep.com/apt/pgp | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/tickstep-packages-archive-keyring.gpg > /dev/null && echo "deb [signed-by=/etc/apt/trusted.gpg.d/tickstep-packages-archive-keyring.gpg arch=amd64,arm64] http://file.tickstep.com/apt aliyunpan main" | sudo tee /etc/apt/sources.list.d/tickstep-aliyunpan.list > /dev/null && sudo apt-get update && sudo apt-get install -y aliyunpan

# yum安装
sudo curl -fsSL http://file.tickstep.com/rpm/aliyunpan/aliyunpan.repo | sudo tee /etc/yum.repos.d/tickstep-aliyunpan.repo > /dev/null && sudo yum install aliyunpan -y

docker安装

sync同步盘

同步备份功能,支持备份本地文件到云盘,备份云盘文件到本地,双向同步备份三种模式。支持JavaScript插件对备份文件进行过滤。 备份功能支持以下三种模式:

  • 备份本地文件,即上传本地文件到网盘,始终保持本地文件有一个完整的备份在网盘
  • 备份云盘文件,即下载网盘文件到本地,始终保持网盘的文件有一个完整的备份在本地
  • 双向备份,保持网盘文件和本地文件严格一致
docker run -d --name=aliyunpan-sync --restart=always -v "<your local dir>:/home/app/data" -e TZ="Asia/Shanghai" -e ALIYUNPAN_REFRESH_TOKEN="<your refreshToken>" -e ALIYUNPAN_PAN_DIR="<your drive pan dir>" -e ALIYUNPAN_SYNC_MODE="upload" -e ALIYUNPAN_TASK_STEP="sync" tickstep/aliyunpan-sync:v0.2.6
 
  
<your local dir>:本地目录绝对路径,例如:/tickstep/Documents/设计文档
ALIYUNPAN_PAN_DIR:云盘目录
ALIYUNPAN_REFRESH_TOKEN:RefreshToken
ALIYUNPAN_SYNC_MODE:备份模式,支持三种: upload(备份本地文件到云盘),download(备份云盘文件到本地),sync(双向同步备份)
ALIYUNPAN_TASK_STEP:任务步骤, 支持两种: scan(只扫描并建立同步数据库),sync(正常启动同步任务)。如果你同步目录文件非常多,首次运行最好先跑一次scan步骤,然后再正常启动文件同步任务

更详情文档请参考dockerhub网址:tickstep/aliyunpan-sync

基本使用

本程序支持阿里云盘大多数命令操作,这里只介绍基本的使用,更多更详细的命令请查看手册:命令手册

修改配置目录

你可以指定程序配置文件的存储路径,如果没有指定,程序会使用默认的目录。

方法为设置环境变量ALIYUNPAN_CONFIG_DIR并指定一个存在的目录,例如linux下面可以这样指定

export ALIYUNPAN_CONFIG_DIR=/home/tickstep/tools/aliyunpan/config

启动程序

直接启动进入交互命令行

[tickstep@MacPro ~]$ aliyunpan
提示: 方向键上下可切换历史命令.
提示: Ctrl + A / E 跳转命令 首 / 尾.
提示: 输入 help 获取帮助.
aliyunpan > 

查看帮助

aliyunpan > help

...
   阿里云盘:
     album, abm   相簿(Beta)
     cd           切换工作目录
     download, d  下载文件/目录
     ls, l, ll    列出目录
     mkdir        创建目录
     mv           移动文件/目录
     pwd          输出工作目录
     recycle      回收站
     rename       重命名文件
     rm           删除文件/目录
     share        分享文件/目录
     sync         同步备份功能
     upload, u    上传文件/目录
     webdav       在线网盘服务
...

登录

需要先登录,已经登录过的可以跳过此步。

RefreshToken获取教程请查看:如何获取RefreshToken

aliyunpan > login -RefreshToken=32994cd2c43...4d505fa79

阿里云盘登录成功:  tickstep
aliyunpan:/ tickstep$ 


# 按照引导步骤登录
aliyunpan login
请输入RefreshToken, 回车键提交 > 626a27b6193f4c5ca6ef0.......

# 命令行指定RefreshToken登录
aliyunpan login -RefreshToken=626a27b6193f4c5ca6ef0.......

# 使用二维码方式进行登录,按照引导步骤进行
aliyunpan login -QrCode

刷新Token

由于阿里云盘的RefreshToken是会过期的,为了延长最大过期时间,需要定期刷新Token,建议每小时刷新一次。 调用该命令可以自动刷新RefreshToken并保存到配置文件中,但是有一个前提,即Token必须还没有过期,如果Token已经过期是无法刷新的则只能重新登录。

# 刷新当前登录用户
aliyunpan token update

# 刷新所有登录的用户
aliyunpan token update -mode 2

如果你的aliyunpan工具是在Linux中运行,则建议你使用crontab定时任务进行Token自动刷新,例如

每小时执行一次Token刷新任务
*/60  * * * * /<your path>/aliyunpan token update -mode 2

命令行执行同步任务

# 首次运行建议先扫描并构建同步数据库
aliyunpan sync start -ldir "D:\tickstep\Documents\设计文档" -pdir "/sync_drive/我的文档" -mode "upload" -step scan
# 使用命令行配置启动同步备份服务,将本地目录 D:\tickstep\Documents\设计文档 中的文件备份上传到云盘目录 /sync_drive/我的文档 同时配置下载并发为5,上传并发为10
aliyunpan sync start -ldir "D:\tickstep\Documents\设计文档" -pdir "/sync_drive/我的文档" -mode "upload" -dp 5 -up 10

查看文件列表

aliyunpan:/ tickstep$ ls

  #  文件大小       修改日期               文件(目录)                             
  0         -  2021-11-03 13:32:22  临时/                     
  1         -  2021-07-10 07:44:34  好友的分享/               
  2         -  2021-07-09 22:11:22  我的项目/                 
  3         -  2021-07-09 22:10:37  我的游戏/       
  4         -  2021-07-09 22:10:10  我的文档/       
  5  349.86KB  2021-06-06 11:46:02  使用统计.xls                                            
  6  503.57KB  2021-06-06 11:46:02  IMG_0098.JPG                                            
  7   72.20KB  2021-06-06 11:46:02  IMG_0103.PNG 
       总: 3.20MB                   文件总数: 3, 目录总数: 7  
----

下载文件

aliyunpan:/ tickstep$ download IMG_0106.JPG

[0] 当前文件下载最大并发量为: 5, 下载缓存为: 64.00KB
[1] 加入下载队列: /IMG_0106.JPG
[1] ----
文件ID: 60bc44f855814e19692a4958b4a8823a1a06e5de
文件名: IMG_0106.JPG
文件类型: 文件
文件路径: /IMG_0106.JPG

[1] 准备下载: /IMG_0106.JPG
[1] 将会下载到路径: /root/Downloads/4d001d48564f43b..62874f04bbe6/IMG_0106.JPG
[1] 下载开始
[1] ↓ 704.00KB/1.48MB 0B/s(1.69MB/s) in 1.88s, left - ............
[1] 下载完成, 保存位置: /root/Downloads/4d001d48564f43b..62874f04bbe6/IMG_0106.JPG
[1] 检验文件有效性成功: /root/Downloads/4d001d48564f43b..62874f04bbe6/IMG_0106.JPG

下载结束, 时间: 4秒, 数据总量: 1.48MB
aliyunpan:/ tickstep$ 

下载支持两种链接类型:1-默认类型 2-阿里ECS环境类型

在普通网络下,下载速度可以达到10MB/s,在阿里ECS(必须是"经典网络"类型的机器)环境下,下载速度单文件可以轻松达到20MB/s,多文件可以达到100MB/s

上传文件

aliyunpan:/ tickstep$ upload /Users/tickstep/Downloads/apt.zip /tmp

[0] 当前文件上传最大并发量为: 10, 上传分片大小为: 10.00MB
[1] 加入上传队列: /Users/tickstep/Downloads/apt.zip
[1] 2022-08-13 13:41:22 准备上传: /Users/tickstep/Downloads/apt.zip => /tmp/apt.zip
[1] 2022-08-13 13:41:22 正在检测和创建云盘文件夹: /tmp
[1] 2022-08-13 13:41:22 正在计算文件SHA1: /Users/tickstep/Downloads/apt.zip
[1] 2022-08-13 13:41:22 检测秒传中, 请稍候...
[1] 2022-08-13 13:41:22 秒传失败,开始正常上传文件
[1] ↑ 21.00MB/21.00MB 702.53KB/s(702.70KB/s) in 15s ............
[1] 2022-08-13 13:41:22 上传文件成功, 保存到网盘路径: /tmp/apt.zip
[1] 2022-08-13 13:41:22 文件上传结果: 成功! 耗时 18秒

上传结束, 时间: 18秒, 数据总量: 21.00MB

上传支持两种链接类型:1-默认类型 2-阿里ECS环境类型

在阿里ECS(必须是"经典网络"类型的机器)环境下,上传速度单文件可以轻松达到30MB/s,多文件可以达到100MB/s

同步备份文件

同步备份功能,支持备份本地文件到云盘,备份云盘文件到本地,双向同步备份三种模式。支持JavaScript插件对备份文件进行过滤。

注意:如果同步目录下有非常多的文件,最好在首次备份前先运行一次scan任务,等scan任务完成并建立起同步数据库后,再正常启动同步任务。这样同步任务可以更加快速同步并且能有效避免同步重复文件。

例如:将本地目录 /tickstep/Documents/设计文档 中的文件备份上传到云盘目录 /备份盘/我的文档

首次运行建议先扫描并构建同步数据库,如下:
aliyunpan:/ tickstep$ sync start -ldir "/tickstep/Documents/设计文档" -pdir "/备份盘/我的文档" -mode "upload" -step scan

然后再正常启动同步任务,如下:
aliyunpan:/ tickstep$ sync start -ldir "/tickstep/Documents/设计文档" -pdir "/备份盘/我的文档" -mode "upload"

启动同步备份进程
备份配置文件:(使用命令行配置)
链接类型:默认链接
下载并发:2
上传并发:2
下载分片大小:1.00MB
上传分片大小:10.00MB

启动同步任务
任务: 设计文档(de3d6b69a607497b73624bcca0845f19)
同步模式: 备份本地文件(只上传)
本地目录: /tickstep/Documents/设计文档
云盘目录: /备份盘/我的文档

更多命令

更多更详细的命令请查看手册:命令手册

最后修改:2023 年 04 月 21 日
如果觉得我的文章对你有用,请随意赞赏