Ubuntu 18.04 安装OneDrive自动同步

Windows10系统已经自带了OneDrive的自动同步功能,对于多设备用户而言已经成为了一个非常方便传输保存文件的途径,在Ubuntu下也有办法做到几乎一样的自动同步功能。

项目GitHub地址:https://github.com/skilion/onedrive

原文(有删改):https://zhuanlan.zhihu.com/p/105522169

安装依赖

需要安装的依赖有libcurlsqlite3DMD

使用Ctrl+Alt+T等方式打开终端,执行以下命令:

sudo apt install -y libcurl4-openssl-dev libsqlite3-dev git make
sudo snap install --classic dmd && sudo snap install --classic dub

安装OneDrive

由于作者没有给出二进制发行版,需要自行编译并安装,源代码也需要从git上获取。

执行命令前,请确保make以及git已安装,若未安装请先使用sudo apt install进行安装。

git clone https://github.com/skilion/onedrive.git && cd onedrive
make
sudo make install

登录并获取OneDrive文件

在开启同步前,需要先进行初始化,登录到OneDrive并下载OneDrive中所有的文件到本地,执行命令

onedrive

稍等片刻,屏幕上会出现一个微软的oauth链接,

$ onedrive
Authorize this app visiting:
## 复制到浏览器,打开这个链接:
#https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=22c49a0d-d21c-4792-aed1-8f163c982546&scope=files.readwrite%20files.readwrite.all%20offline_access&response_type=code&redirect_uri=https://login.microsoftonline.com/common/oauth2/nativeclient Enter the response uri: 需要输入一个链接

这时候需要在浏览器中打开这个链接,并登录微软账户,登录完成后,会被重定向到一个空白页面。

将这个页面的地址复制进终端,并按下回车,登录过程就完成了。

登录完成后,终端会出现正在下载的文件,稍等片刻待所有文件都下载完成后,初始化完毕,在默认设置下,OneDrive文件夹将位于~/OneDrive

Downloading changes of 7F311D93082DFCB5!103
Processing 7F311D93082DFCB5!103 root
Root
Processing 7F311D93082DFCB5!7095 test.rar
Downloading test.rar... done.

开启自动同步

初始化完毕后,便可以开启自动同步功能。

如果想每次登录都自动开启onedrive的登录和同步,执行:

systemctl --user enable onedrive
systemctl --user start onedrive

此后,对于~/OneDrive文件夹中内容的所有更改都将被同步到安装了OneDrive的其他设备中了。

附录:认证错误

如果OneDrive版本太老,那么会有下面的提示:

onedrive.OneDriveException@src/onedrive.d(403): HTTP request returned status code 400 (Bad Request)
{
"correlation_id": "xxxx",
"error": "invalid_grant",
"error_codes": [
70000
],
"error_description": "AADSTS70000: The provided value for the 'code' parameter is not valid.\r\nTrace ID: xxxx\r\nCorrelation ID: xxxx\r\nTimestamp: 2021-06-06 03:21:38Z",
"error_uri": "https:\/\/login.microsoftonline.com\/error?code=70000",
"timestamp": "2021-06-06 03:21:38Z",
"trace_id": "xxxx"
}

Ubuntu 18.04 安装OneDrive自动同步的更多相关文章

  1. Ubuntu 18.04 安装 onedrive

    问题 在Ubuntu 18.04上安装Onedrive 问题背景 对于文档的同步,还是喜欢用Onedrive,主要因为Onedrive对文档的在线编辑支持很好. Onedrive初始免费容量5G,加上 ...

  2. Ubuntu 18.04 安装部署Net Core、Nginx全过程

    Ubuntu 18.04 安装部署Net Core.Nginx全过程 环境配置 Ubuntu 18.04 ,Nginx,.Net Core 2.1, Let's Encrypt 更新系统 sudo a ...

  3. Ubuntu 18.04 安装和常用软件安装

    Ubuntu 18.04 安装 下载 Ubuntu 制作 U 盘启动盘 设置电脑为 U 盘启动 插入 U 盘,重启电脑 按照提示安装 Ubuntu 更新 NVIDIA 显卡和 Broadcom 无线网 ...

  4. Ubuntu 18.04 安装配置 MySQL 5.7

    Ubuntu 18.04 安装 mysql 的过程中,竟然没有让你输入秘密?!(之前在 Ubuntu 14.04 下,安装过程中会询问密码),这导致安装完 mysql 初始秘密不知道的问题. $ su ...

  5. Ubuntu 18.04 安装MySQL

    最近在写东西的时候,需要用到MySQL,在网上查了一下,都说Ubuntu18.04不能安装MySQL5.7.22, 总觉的不可能,所以自己就研究了一下,然后分享给大家 工具/原料   VMware W ...

  6. Ubuntu 18.04 安装博通(Broadcom)无线网卡驱动

    目录 Ubuntu 18.04 安装博通(Broadcom)无线网卡驱动 Package gcc is not configured yet. 解决办法 history history | grep ...

  7. 在Ubuntu 18.04 安装 MySQL 8.0

    在Ubuntu 18.04 安装 MySQL 8.0 ① 登入 mysql 官网,在官网中下载 deb 包,点击该链接,即可下载. https://dev.mysql.com/downloads/re ...

  8. Ubuntu 18.04安装MongoDB 4.0(社区版)

    Ubuntu 18.04(虚拟机VirtualBox上),MongoDB 4.0, 听室友说,23点有世界杯决赛呢!可是,孤要写博文的啊!以记录这忙乱的下午和晚间成功安装了一个软件到Linux上.—— ...

  9. 真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)【转】

    本文转载自:https://blog.csdn.net/u010801439/article/details/80483036 ubuntu 18.04 安装GPU +CUDA+cuDNN : 目前, ...

  10. [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程

    Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...

随机推荐

  1. 第二讲 Cadence建立工程和元件库

    第二讲 Cadence建立工程和元件库 1.创建工程,设置图纸参数.Design Entry CIS / Orcad Capture CIS / Option /Design Template,可以设 ...

  2. vue-hbuilder打包-调取摄像头或上传图片

    方法一: <input type="file" accept="image/*" capture="camera" > 方法二: ...

  3. 2021年5.21NCU第四届校赛

    比赛地址:http://222.204.50.106/contest/39 A 树上祖先 链接:http://222.204.50.106/contest/39/problem/A B 莎士比亚 链接 ...

  4. Dash 2.17版本新特性介绍

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/dash-master 大家好我是费老师,不久前Dash发布了其2.17.0版本,执行下面的命令进行最 ...

  5. Swift中的变量与常量

    在Swift里面,声明变量用关健字var,声明常量用关健字let.虽然仅仅是声明变量这样的简单功能,但是还是有需要注意的地方. 变量和常量使用之前必须有一次赋值 var a: Int let b: I ...

  6. VueJS和Javascript实现文字上下滚动效果

    一提到文字上下滚动,我们就会想到用不同的程序去实现,而且页面中有文字滚动会增加这个网页的互动和可信度. 1.Js最简单的方法是控制盒子的高度,使不断的重复添加 <html> <bod ...

  7. salesforce零基础学习(一百三十六)零碎知识点小总结(八)

    本篇参考: Salesforce LWC学习(七) Navigation & Toast https://developer.salesforce.com/docs/platform/lwc/ ...

  8. Akima算法

    测量数据的内插已有各种方法,如线性内插.多项式内插.样条函数插值等,但这里的Akima插值法具有独特的优点. 线性内插只顾及其附近两点的影响. 多项式内插时,低阶多项式由于参数较少,内插精度很低,而使 ...

  9. 使用 Amazon Cloud WAN 构建您的全球网络(内含免费套餐申请入口)

    前言 对 AWS 云技术感兴趣的朋友们,可以尝试申请免费套餐的 AWS 账户,提供了 100 余种可以使用免费套餐的 AWS 云服务. 国内区域账户:https://www.amazonaws.cn/ ...

  10. 首次调用u8api遇到的问题总结

    1.检索 COM 类工厂中 CLSID 为 {72A6FADA-FE26-46BD-A921-BFD1179C1E1E} 的组件时失败,原因是出现以下错误: 80040154.   解决办法是,把编译 ...