Rclone

homebrew安装的rclone是不支持mount1。 最直接的解决方案是官网直接下dmg包,但是不优雅。 尝试使用MacPorts安装,默认也不支持mount,需要加+mount参数2进行安装。

Bash
sudo port install -v rclone +mount

如果使用MacPorts安装的macFUSE,那么需要执行以下命令34

Bash
1
2
3
sudo mkdir /usr/local/lib
cd /usr/local/lib
sudo ln -s /opt/local/lib/libfuse.2.dylib

出于备份稳定性考虑,mount命令应尽量使用只读参数--read-only仅用于查看,修改应使用sync命令


Commands

一个样例,可以与launchd末的配置配合

Bash
RCLONE_ARGS=(--progress --verbose --exclude='.DS_Store' --checkers=48 --transfers=24 --links)

sync_arxiv() {
  local dir="$1"
  echo $(date) $dir start
  rclone sync "src/$dir/" "onedrive_e2ee:/$dir/" "${RCLONE_ARGS[@]}"
  echo $(date) $dir sync done
}

e2ee_sync() {
  # 避免同时运行
  pkill -9 rclone

  sync_arxiv "foo"
  sync_arxiv "bar"
  # ...
}