如何在 Linux 中同步您的 OneDrive 帐户

在云存储服务方面,微软的云存储服务 OneDrive 是一种非常受欢迎的产品。 OneDrive 使我们能够随时随地在我们所有的设备上访问我们的文件。 然而,有一个很大的警告——没有官方的 Linux 客户端可用。 因此,Linux 用户必须依赖网络版本(不提供同步)或非官方客户端。 曾经有一个名为 onedrive-d 的可用非官方客户端,但是,它不再维护。 话虽如此,还有另一个适当命名的非官方 OneDrive 客户端 一个驱动器 由 GitHub 用户skilion 提供。 它支持手动和自动同步、实时文件监控和可恢复上传。 虽然设置涉及一些修补和使用命令行,但它对于日常使用来说足够好并且不会造成问题。 所以,如果你是 希望将 OneDrive 数据与 Linux 计算机同步,方法如下:

笔记 该程序已在 Linux Mint 18 下进行了测试。这些说明无需修改即可在 Ubuntu 16.04 上运行。 虽然让它与其他发行版一起工作是可能的,但我们没有在本文中介绍它。

在 Linux 上安装 OneDrive

打开 终端,然后运行以下命令来安装必备软件 libcurl, libsqlite, build-essential, 和 git

[sourcecode]

sudo apt-get install libcurl4-openssl-dev libsqlite3-dev build-essential git

[/sourcecode]

安装完成后,运行以下命令安装D编程语言的编译器:

[sourcecode]

sudo wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list
wget -qO – http://dlang.org/d-keyring.gpg | sudo apt-key 添加 –
sudo apt-get update && sudo apt-get install dmd-bin

[/sourcecode]

我们现在将下载并安装 一个驱动器 软件。 在你的 目录,使用以下命令下载源代码:

[sourcecode]git clone https://github.com/skilion/onedrive.git onedrive_code[/sourcecode]

现在,编译并安装软件:

[sourcecode]cd onedrive_code
制作
须藤使安装

[/sourcecode]

你完成了。

配置您的 OneDrive 帐户

要首次配置您的 OneDrive 帐户,请打开 终端, 和 onedrive. 您将看到带有如下 URL 的提示:

复制网址

简单地 复制此网址,然后在您选择的网络浏览器中输入。 您将被要求提供您的 微软帐户 和密码。 输入后,您将看到以下屏幕:

在这里选择是

选择 是的 在这里,和 复制网址 出现在以下屏幕上:

复制这个网址

现在 粘贴此网址 在你的 终端 窗口,然后按 进入. 您会注意到它会自动开始将您的 OneDrive 帐户与 Onedrive 主目录中的文件夹。 如果您的 OneDrive 帐户中存储了数 GB 的数据,请耐心等待,因为这需要一段时间。

下载

基本用法

每当您想将本地存储与 Linux 上的 OneDrive 帐户同步时, 只需运行命令 onedrive 从您的终端。 作为演示,我使用 Web 应用程序从 OneDrive 存储中删除了一些图像。 在我的 Linux 系统上,我在 Onedrive 文件夹。 运行命令 onedrive 给我以下结果:

同步结果

设置自动同步

如果您希望自动保持 OneDrive 帐户同步,而不是每次手动运行命令,您可以启用 systemd 服务。 在终端中,运行:

[sourcecode]systemctl –用户启用onedrive
systemctl –用户启动onedrive[/sourcecode]

这里有一个警告。 从本地文件系统添加或删除文件几乎可以立即反映 OneDrive 帐户中的更改。 然而,相反的方式稍微延迟。 这对大多数人来说没什么大不了的,但如果您定期传输大量文件,这可能会成为问题。

如果您不确定某个文件是否同步,您可以查看日志。 为此,请运行:

[sourcecode]journalctl –user-unit onedrive -f[/sourcecode]

日志

从同步中排除文件和文件夹

假设您的 OneDrive 帐户中有一个充满高清视频的文件夹,并且您希望避免同步该文件夹,因为它会占用大量带宽和空间。 也许您还想避免同步光盘映像(.iso 文件)。 为此,请打开文件 ~/.config/onedrive/config 使用您喜欢的文本编辑器,并修改 skip_fileskip_dir 相应的部分:

[sourcecode]skip_file = “.*|~*|*.iso”
skip_dir = “.*|视频”[/sourcecode]

如果您正在运行同步服务,则需要先将其关闭:

[sourcecode]systemctl –用户停止onedrive[/sourcecode]

之后,使用重新同步选项运行 onedrive:

[sourcecode]onedrive –重新同步[/sourcecode]

在此之后,您可以重新启用同步服务:

[sourcecode]systemctl –用户启动onedrive[/sourcecode]

还请参见:4 个流行(非官方)Google Drive Linux 客户端

在 Linux 上无缝使用 OneDrive

另一个值得考虑的优秀 Linux OneDrive 客户端是 克隆. 虽然它只提供手动同步,但它具有 onedrive 中不存在的某些附加功能,例如支持同时的多个云帐户,包括但不限于 OneDrive、Google Drive、Dropbox、Amazon S3 和 Yandex。 您可以在此处获取 rclone。

好吧,这就是您可以将 Microsoft OneDrive 帐户与 Linux 同步的方式。 请让我们知道它是如何为您工作的。 如果您在设置时遇到问题,请随时在下面的评论部分向我们提问。

Leave a Comment

Your email address will not be published.