1 Star 0 Fork 11

coder_lw / wiki

forked from deepinwiki / wiki 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
linux同步onedrive.md 2.98 KB
一键复制 编辑 原始数据 按行查看 历史

linux 同步微软网盘OneDrive

前言

微软网盘OneDrive是一个非常好的工具,关键是免费,那么linux能不能享用?微软没有开发官方的支持,而且,国内Onedrive的网站被封了,只能通过客户端使用。幸运的是,开源大佬们开发了自由免费的工具:https://github.com/skilion/onedrive

安装步骤

  1. sudo apt install libcurl4-openssl-dev
  2. sudo apt install libsqlite3-dev
  3. 安装D语言编译器,去官网下载:https://dlang.org/, 我下的是:http://downloads.dlang.org/releases/2.x/2.086.0/dmd_2.086.0-0_amd64.deb 。然后安装sudo apt install ./dmd_2.086.0-0_amd64.deb
  4. git clone https://github.com/skilion/onedrive.git
  5. cd onedrive
  6. make
  7. sudo make install

第一次使用

第一次使用,会需要微软授权。

  1. onedrive 会给出一个链接,用浏览器打开,让你输入微软帐号,然后授权,之后跳到一个空白网页。将该网页的地址复制,粘帖回命令行的等待提示处,即可。
  2. 默认会同步到~/OneDrive目录

修改配置

如果不想使用默认的配置:

  1. ~/.config/onedrive/config :编辑这个配置文件,如果没有就创建
  2. 内容:
    1. sync_dir : 同步本地目录
    2. skip_file : 过滤不同步的文件
    3. sync_list : 同步的远程目录和文件列表

后台服务

默认会安装一个后台服务,它负责监控文件夹,自动同步数据。

  1. systemctl --user status onedrive 查看运行情况
  2. systemctl --user start onedrive 启动
  3. journalctl --user-unit onedrive 查看日志
  4. sytemctl 的其他参数
    1. enable 开机自动启动
    2. restart 重启服务
    3. stop 停止
    4. disable 关闭自动启动

具体步骤

默认安装了onedrive 这个工具,和一个后台服务onedrive.service (以下是参考内容,不懂可以跳过)

install -D onedrive /usr/local/bin/onedrive
install -D -m 644 onedrive.service /usr/lib/systemd/user/onedrive.service

用户要做的事情有两个,一个是启动后台,另一个是登录。登录只需要执行一次,下次会记录。

# 启动后台
systemctl --user start onedrive
# 如果希望开机就启动,执行
systemctl --user enable onedrive

# 登录账号
onedrive

onedrive

上图的提示意思是让你复制该链接到浏览器,然后正常登录,进入一个空白页面,然后复制浏览器反馈的链接,再复制到这里,这就完成了登录认证的过程。

如图所示即完成了认证登录:

认证登录

下次开机,后台服务可能没有启动,就再启动一次即可。启动之后,你想看当前同步的反馈信息,可以用:

journalctl --user-unit onedrive

这个工具速度也不会很快,并且完善度不是很好,不太稳定。还可以通过虚拟一个windows来使用这个网盘,也许效果还好一些。

参考

1
https://gitee.com/coder_lw/wiki.git
git@gitee.com:coder_lw/wiki.git
coder_lw
wiki
wiki
master

搜索帮助