写在前面
在windows下经常会使用onedrive来同步自己的一些文件,但Linux系统中官方并无给出Onedrive的Linux版本,但其实Onedrive官方是给出了一些API的,有一些GitHub的大佬们实现了Linux平台下的Onedrive功能
一、安装
官方GitHub教程,这里是演示deepin20,即debian10版本的,后面有使用星火商店安装的,一键安装
wget -qO - https://download.opensuse.org/repositories/home:/npreining:/debian-ubuntu-onedrive/Debian_10/Release.key | sudo apt-key add -
echo 'deb https://download.opensuse.org/repositories/home:/npreining:/debian-ubuntu-onedrive/Debian_10/ ./' | sudo tee /etc/apt/sources.list.d/onedrive.list
sudo apt-get update
sudo apt install onedrive
二、个人版本使用
使用方式详见GitHub官方教程,这里仅介绍常见使用,并且该方式仅支持个人版Onedrive配置使用
2.1 配置
- 配置文件
执行mkdir -p ~/.config/onedrive
wget https://raw.githubusercontent.com/abraunegg/onedrive/master/config -O ~/.config/onedrive/config
vi ~/.config/onedrive/config
默认本地同步所在文件夹根目录是~/OneDrive ,如不改变则不需要更改,如更改则解注释并修改sync_dir 即可,monitor_interval 是监控云端文件变化的间隔时间,单位是秒,可以使用onedrive --display-config 查看配置 - 执行创建log文件夹
sudo mkdir /var/log/onedrive
sudo chmod 777 /var/log/onedrive
sudo usermod -a -G users <your-user-name>
- 配置云端账户
命令行输入onedrive ,会弹出认证网站,复制网址在浏览器中打开,并登陆,登录成功后再将最后的网址粘贴回来,显示成功即可
2.1 单次同步测试
- 执行
mkdir /path/to/your/Onedrive 创建同步文件夹,这里请换成你自己设置的文件夹 - 执行
onedrive --synchronize 同步一次 - 结果如下图所示,将会自动将云端文件下载到本地
2.2 自动同步
- 执行
onedrive --monitor 即启动了自动同步 - 如本地修改了文件将立即上传到云
- 如云端修改了文件,则间隔60s监控一次并更新本地文件
- 但当该终端关闭时自动同步将失效,因此我们最后还是要写成一个服务来运行
三、教育版使用
教育版尝试了n遍,没成功,登录后返回的url是error=invalid_client,在网上查到的解释是 This is not an issue with the client, but with your organisation / Active Directory instance & so on
考虑使用insync 更新:试用后发现insync也是用不了,看来真是不支持了
四、通过星火商店安装
我是通过星火商店安装的,这里介绍该方式,当然你也可以在通过按照GitHub教程安装
4.1 安装星火商店
打开星火商店官网下载,星火商店很好用,专为Linux设计,听说大部分软件都是是测过才会上传出来的 下载后是deb后缀文件,直接双击安装即可
4.2 星火商店中安装Onedrive
搜索onedrive,点进去,安装即可
|