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. Nats集群部署

    环境: 3台机器采用同样的目录名字和文件名称 服务器 192.168.10.30 192.168.10.31 192.168.10.32 nats版本2.9.15 配置文件 # 192.168.10. ...

  2. (数据科学学习手札160)使用miniforge代替miniconda

    本文已收录至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,conda作为Python数据科学领域 ...

  3. B/S 结构系统的 缓存机制(Cookie) 以及基于 cookie 机制实现 oa 十天免登录的功能

    B/S 结构系统的 缓存机制(Cookie) 以及基于 cookie 机制实现 oa 十天免登录的功能 @ 目录 B/S 结构系统的 缓存机制(Cookie) 以及基于 cookie 机制实现 oa ...

  4. 使用NSSM将.exe程序安装成windows服务

    1.下载NSSM:NSSM - the Non-Sucking Service Manager 2.cmd方式安装服务 将下载的压缩包解压,找到nssm.exe,以管理员身份打开cmd,在cmd中定位 ...

  5. uniapp中使用极光推送

    1.注册极光账号 2.注册几个主流手机厂商的开发者账号(注册手机厂商,可以保证app进程不在的时候走厂商通道推送消息) 3.配置uniapp极光插件 https://ext.dcloud.net.cn ...

  6. centos7实现多网卡多线路

    移动线路IP:179.15.5.253 网卡配置内容: TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUT ...

  7. 【Azure Developer】如何通过Azure Portal快速获取到对应操作的API并转换为Python代码

    问题描述 对于Azure资源进行配置操作,门户上可以正常操作.但是想通过Python代码实现,这样可以批量处理.那么在没有SDK的情况下,是否有快速办法呢? 问题解答 当然可以,Azure Porta ...

  8. 基于WebSocket的modbus通信(一)- 客户端

    上一篇已经实现了ModbusTcp服务器和8个主要的功能码,只是还没有实现错误处理功能. 但是在测试客户端时却发现了上一篇的一个错误,那就是写数据成功,服务器不需要响应. 接下来要做的就是实现Modb ...

  9. numpy cumsum()函数简介

    函数原型:numpy.cumsum(a, axis=None, dtype=None, out=None) 可参考链接:https://docs.scipy.org/doc/numpy-1.10.1/ ...

  10. http1.1 的默认长连接 Connection: keep-alive 与 TCP KeepAlive 之间区别

    HTTP 长连接,也称为 HTTP 持久连接(HTTP Persistent Connection)或 HTTP 连接重用,是一种在 HTTP 协议中实现的机制. 在传统的 HTTP 通信中,每个 H ...