Arch Linux下Rclone的使用

为什么把这两个问题放在一起?因为它们都是关于文件系统的

为OneDrive配置Rclone

Documentation

使用rclone可以与OneDrive网盘同步,甚至像在Windows系统中一样挂载到本地文件系统中。rclone可以同步多种网盘,其他可能请参考List of applications/Internet - ArchWiki

安装rclone

pacman -Syu rclone
如果需要使用挂载功能,还需要安装fuse3
pacman -Syu --asdeps fuse3

OneDrive配置

Microsoft OneDrive - rclone doc

rclone config
这个指令将运用交互式的方式逐步引导用户完成设置

 第一步,设置名称(Enter name for new remote.),这个名称配置当前网盘在rclone的名称,之后使用输入的名称加英文冒号的形式即可代指此网盘如OneDrive:

第二步,网盘类型(Type of storage to configure.),根据前面程序给出的表输入序号或括号中的小写英文序列来告诉rclone当前网盘的类型,OneDrive当前(rclone-1.61.1)为31

第三、四步,一些客户端(Option client_id.)与(Option client_secret.),rclone提示两项一般留空

第五步,设置OneDrive区域,请参考自身情况与解析onedrive的各个版本,到底选哪个! - 知乎

第六步,编辑高级设置,默认不编辑

第七步,登录微软账户与授权rclone应用访问网盘

第八步,选择连接类型,默认是OneDrive Personal or Business

第九步,rclone将自动搜索所有可能的网盘,并列出以供选择,根据提示选择即可

之后的步骤让用户确定配置是否正确,全部确认即可。输入q退出配置程序

rclone的使用

rclone仅使用带冒号的配置名称代指远程网盘,其余均认为是本地位置

sync:rclone sync [option] SOURCE DESTINATION
同步指令会在以SOURCE的为准覆盖DESTINATION,操作中会包含必要的删除操作,强烈建议在运行前仔细检查来源与目标位置,并增加--dry-run并观察反馈查看有哪些文件会被更新,以防止不必要的操作造成数据丢失。
--create-empty-src-dirs   选项同步空文件夹以同步目录结构。
-P                                                 选项实时查看rclone进程的工作状况

copy:rclone copy [option] SOURCE DESTINATION
复制指令可以用于复制单个文件到任意位置,注意复制文件夹时不会包含任何目录结构(与cp指令不同),源中的所有文件都会摊开到目标中

mount:rclone mount [option] REMOTE: LOCAL_DIR
挂载指令依赖fuse3,在Arch Linux中是可选依赖,如果不能使用,请先检查是否安装fuse3
挂载指令会将远程网盘挂载为本地文件系统,可以直接在命令行运行,也提供了daemon模式。rclone会在收到SIGINT时卸载并退出,如果在daemon模式下,则可以使用fusermount -u LOCAL_DIR卸载。
--vfs-cache-mode [full|writes|minimal|off] 控制rclone缓存模式,full会在所有读写中启用缓存,提供最大限度的兼容性,writes则关闭了只读打开文件的缓存,minimal只缓存以“读写”方式打开的文件,off关闭所有缓存。对于OneDrive,推荐至少使用writes模式。
 

Systemd挂载单元

#这一节单元记录我的处理方式,就是写了个挂载脚本,能用就没再深究了。官方文档在此

提示:这个方法在停止服务时会因为rclone返回exit-code导致systemd标记为failed我也试过用--daemon的方式运行,依然会标failed,就没再折腾了。我这倒是没什么实际上的问题,说一声让大家了解情况。

在~/.config/systemd/user 中创建文件 onedrive.service,文件内容为

[Unit]
Description=Mount OneDrive

[Service]
Type=simple
ExecStartPre=/usr/bin/sleep 5s        #等待网络上线
ExecStart=/usr/bin/rclone mount OneDrive: /home/kevin/OneDrive --vfs-cache-mode full

[Install]
WantedBy=plasma-core.target         #与Plasma同时启动

之后systemd --user enable onedrive.service --now

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值