dirname

上一期我介绍了Go语言的BT下载工具CloudTorrent,所以这期还是给大家带来了一个基于Go语言的应用——r Clone。Rclone是一款非常强大的网盘工具,可以帮助用户管理包括Dropbox、box、Onedrive、Gdrive、Mega等主流网盘的各类资源。在终端界面中。同时实用的挂载功能可以在本地挂载网盘(基于OpenVZ架构的VPS不支持挂载)来服务Aria2、CloudTorrent等下载工具,以及FileBrowser等私有网盘工具。

Rclone-GitHub主页:https://github.com/ncw/rclone

请到GitHub查看Rclone支持的网盘和Rclone的官方安装脚本。本文继续以Debian 9 VPS为例演示手动安装方法,Windows版本不再单独演示。

由于上一期的复杂性,很多家属会取消本期所有基本命令的讲解。想学习手动配置但基础薄弱的家庭成员可以自己搜索相关命令的含义进行修改。

首先,下载并安装

将以下命令复制到终端或SSH工具中执行(整体复制,然后按enter键):

yum安装unzip -y

apt-get安装解压缩-y

wget https://downloads . r clone . org/v 1.44/r clone-v 1.44-windows-amd64 . zip

解压缩rclone-v1.44-windows-amd64.zip

cd rclone-*/

mv rclone /usr/bin/

chmod 755 /usr/bin/rclone

mkdir-p/usr/local/share/man/man 1

mv r clone . 1/usr/local/share/man/man 1/

激光唱片..

rm -rf rclone-*

安装成功检查:

此时执行rclone命令时相关指令的帮助证明安装成功。

注意:

权限不足,无法通过sudo或sudo su手动启动root帐户。通常,VPS的默认帐户是root帐户。

为了方便配置网盘的演示,我们选择的是rclone-1.44-linux-amd64的版本,如果需要不同的版本,请自行更改参数。

Rclone版本检查页面:https://downloads.rclone.org/

其次,配置网盘

1.本地配置

这里我们以Onedrive for business为例,其余网盘按照应用提示操作。

执行rclone config命令进行配置。

找不到遥控器-制作一个新的

n)新遥控器

s)设置配置密码

q)退出配置

没有远程配置,请创建一个新的。

n)新

s)设置配置访问密码

q)退出配置

输入n new。

命名远程网络磁盘(配置后,使用此名称操作网络磁盘)

输入一个作为例子。

要配置的存储类型。

输入一个字符串值。按Enter键选择默认值(” “)。

从下面选择一个数字,或键入您自己的值

储存;储备

选择配置的存储类型。

输入配置值,输入表示默认值。

选择以下您需要的存储类型。

输入18以选择Onedrive作为示例。

Microsoft App客户端Id

通常留空。

输入一个字符串值。按Enter键选择默认值(” “)。

Microsoft App客户端Id

通常会离开空

输入配置值,输入表示默认值。

回车回车并离开空

Microsoft App客户端机密

微软App客户端机密,同上。

回车回车并离开空

编辑高级配置?(是/否)

y)是的

n)否

您想执行高级配置吗?

y)是的

n)否

输入否

远程配置

使用自动配置?

*如果不确定,请说Y

*如果您在远程或无头机器上工作,请说N

远程配置

是否使用自动配置?

是的。-通常是。

否-如果您使用远程访问或没有图形界面的设备。

输入y启动浏览器,登录Onedrive进行授权。

输入n否,以没有图形界面浏览器的VPS为例。

2.远程授权

如果使用谷歌网盘等静态授权密码,可以登录网盘相关接口获取。Microsoft Onedrive使用动态授权密码。在这里,我们需要准备一个配备了图形界面浏览器和Rclone的设备。Linux图形版与下载安装步骤相同,Windows版不再单独演示。

配备有图形界面浏览器和Rclone的设备在终端中执行:

rclone授权“onedrive”

dirname如果此时终端无法调用浏览器,请用浏览器手动打开链接。

在浏览器中成功授权后返回终端,会生成一个自动授权码。

复制中间的所有内容。

3.继续本地配置

要做到这一点,您需要在具有web浏览器的机器上安装rclone。

在您的机器上执行以下操作:

rclone授权“onedrive”

然后粘贴下面的结果:

在这种工作模式下,你需要一个可以配备Rclone和浏览器的设备。

在此设备上执行r clone authorize“one drive”以获取授权码。

将授权码粘贴到此处。

粘贴我们复制的授权码。

从下面选择一个数字,或键入一个现有的值

你的选择

通过选择以下值来选择Onedive类型。

1) OneDrive个人版或企业版-OneDrive个人版或企业版

2)根SharePoint网站-SharePoint网站

其余的不常用。

输入1,以Onedrive for business为例。

找到1个驱动器,请选择您要使用的驱动器:

0:one drive(business)ID = one drive ID

选择要使用的驱动器:

找到1个存储驱动器,请选择您需要的一个。

输入0,某些Onedrive将有多个存储驱动器。

找到类型为“business”的驱动器“root”,URL:

可以吗?

发现存储驱动器类型为企业版,访问链接为:此链接是Onedrive映射到Windows本地磁盘的地址。

正确吗?

输入y

y)是的,这很好

e)编辑此遥控器

d)删除该遥控器

y/e/d

这里Rclone会报告一些网盘的配置参数。

y)确定

e)编辑

d)删除

输入y并完成。

第三,命令的使用

复制r克隆复制源:源路径目标:目标路径。

移动r克隆移动源:源路径目标:目标路径。

删除文件克隆删除

删除空目录rclone rmdir。

删除内容,不考虑目录空rclone purge remote:path。

列出rclone ls远程:路径

同步rclone同步源:路径目标:路径

演示中配置的Onedrive名为one:

列出Onedrive的A0目录下的文件内容。

rclone ls one:/A0

将Onedrive的A0目录复制到本地/主目录。

rclone副本一:/A0 /home

更多操作命令请访问Rclone官网或GitHub。

第四,挂载网盘

将以下命令复制到终端或SSH工具中执行:

yum安装保险丝-y

安装保险丝-y

mkdir /root/1drive

r clone mount one://root/1 drive-copy-links-no-gzip-encoding-no-check-certificate-allow-other-allow-non-empty-umask 000

装载成功检查:

df -h的成功执行将在分区中显示挂载的网络磁盘信息。

注意:

这里,我们在演示中使用名为one的Onedrive网络磁盘,并将其装载到本地/root/1drive目录中。不同配置或需求的用户可以手动修改。挂载完成后,可以放弃rclone的命令,然后像操作本地磁盘一样操作Onerdive中的内容。

OpenVZ架构的VPS不支持挂载!

挂载命令引导自启动。

将以下命令复制到终端或SSH工具中执行(整体复制,然后按enter键):

[单位]

描述= 1驱动

[服务]

用户=root

ExecStart =/usr/bin/r clone mount one://root/1 drive-copy-links-no-gzip-encoding-no-check-certificate-allow-other-allow-non-empty-umask 000

重新启动=开-中止

[安装]

WantedBy =多用户.目标

电渗流

systemctl守护程序-重新加载

系统启动1驱动

系统控制启用1驱动

系统控制状态1驱动器

注意:

这里ExecStart=后的参数根据自己的配置进行修改。这里,就以演示为例。

动词 (verb的缩写)其他解释

如果我们将Rclone挂载的目录设置为Aria2或者CloudTorrent的下载目录,可以看到显示的剩余空确实是网盘空空间(CloudTorrent的容量按照1000进制会更大),但是直接挂载网盘作为下载目录的操作会导致下载的缓存文件在下载的瞬间就被上传,无法生成完整的下载文件。

CloudTorrent由于应用本身的问题,目前只能手动上传,而Aria2可以利用其配置设置上传脚本,在下载后自动上传Onedrive,从而实现Onedrive的离线下载功能。

Aira2自动上传脚本

#!/bin/bash

GID = ” $ 1

FileNum = ” $ 2

File = ” $ 3

MinSize=”5″ #限制最小上传大小,默认为5k。

MaxSize=”157286400″ #限制最大文件大小(单位K),默认为15G。

remote dir = “/RATS/”;本地文件夹由#rclone挂载,在末尾保留/

local dir = “/download/”;#Aria2下载目录,最后保留/

if[[-z $(echo ” $ FileNum ” | grep-o ‘[0-9]* ” | head-n1)]];那么FileNum = ‘ 0船方不负担装货费用

if[[” $ FileNum “-le ‘ 0 ‘]];然后退出0;船方不负担装货费用

如果[[ “$# “!= ‘3’ ]];然后退出0;船方不负担装货费用

函数加载文件{

IFS_BAK=$IFS

IFS=

\n’

如果[[!-d ” $ local dir “]];然后返回;船方不负担装货费用

if[[-e ” $ File “]];然后

FileLoad=”${File/#$LocalDIR} “

虽然是真的

if[[” $ file load ” = = ‘/’]];然后返回;船方不负担装货费用

回显” $ file load ” | grep-q ‘/’;

如果[[ “$?”== “0” ]];然后

file load = $(dirname ” $ file load “);

其他

打破;

fi;

搞定;

if[[” $ file load ” = = ” $ local dir “]];然后返回;船方不负担装货费用

EXEC=”$(command -v mv)”

if[[-z ” $ EXEC “]];然后返回;船方不负担装货费用

选项= “-f “;

cd ” $ LocalDIR

if[[-e ” $ file load “]];然后

ItemSize = $(du-s ” $ file load ” | cut-f1 | grep-o ‘[0-9]* ‘ | head-n1)

if[[-z ” $ ItemSize “]];然后返回;船方不负担装货费用

if[[” $ ItemSize “-le ” $ MinSize “]];然后

echo-ne ” \ 033[33m$file load \ 033[0m太小,无法钉入。\ n “;

返回;

船方不负担装货费用

if[[” $ ItemSize “-ge ” $ MaxSize “]];然后

echo-ne ” \ 033[33m $ file load \ 033[0m太大,无法钉入。\ n “;

eval ” $ { EXEC } $ { Option } ” \ ‘ ” $ { file load } ” \ ‘ ” $ { RemoteDIR } “;

如果[[ $?== ‘0’ ]];然后

RM-RF ” $ file load “;

IFS=$IFS_BAK

}

LoadFile

使用:

在/root目录下新建一个名为rcloneupload.sh的脚本并编辑到上面的内容,授权chmod +x rcloneupload.sh,然后在Aria2配置文件中添加一行on-download-complete =/root/rclone upload . sh,后跟脚本的路径。最后重启Aria2生效。

根据#后的描述,根据实际配置进行更改。

MaxSize=”157286400″ #不要大于该值。目前Onedrive只支持单个文件,最大15GB。

remote dir = “/RATS/”;#Rclone配置演示中的挂载地址是/root/1drive/

local dir = “/download/”;#检查Aria2的下载目录。

描述:

这个剧本不是我自己写的,也没有经过验证。有了相关的帮助和原理,可以访问剧本作者的讲解页面:https://www.moerats.com/archives/482/.

感谢原剧本作者和改版作者孟卡、孟鼠。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

发表回复

登录后才能评论