为什么 Nautilus 将文件复制到 Google Drive 这么慢?

为什么 Nautilus 将文件复制到 Google Drive 这么慢?

我尝试使用 Nautilus 将目录从本地驱动器复制到 Google Drive。但 Nautilus 显示需要 596,523 小时。此外,复制过程没有明显进展。当我使用 Google Drive 本身(文件夹上传)时,它建议的时间约为 24 小时。

为什么所需时间会有如此大的差异?如何才能解决这个问题?

答案1

我根据读者的评论回答了我自己的问题。使用指向的页面加上其他一些内容,我设计了一个框架,经过一些调整后,该框架运行良好。

框架摘要

  • 使用 在 Linux 上安装您的 Google Drive google-drive-ocamlfuse
  • 用于rsync复制文件和目录。

框架设置详细信息

  • 安装和设置google-drive-ocamlfuse。在终端窗口中,运行,

    sudo add-apt-repository ppa:alessandro-strada/ppa &&\ 
    sudo apt update && sudo apt install google-drive-ocamlfuse
    

  • 授权google-drive-ocamlfuse以便它可以访问你的 Google 帐户。在终端窗口中发出命令 google-drive-ocamlfuse。此命令将打开一个浏览器窗口,提示你登录你的 Google 帐户,或者如果你已经登录,则要求你允许google-drive-ocamlfuse访问你的 Google 帐户。如果你尚未登录,请登录,然后单击允许。下一个窗口将要求你授予 gdfuse 和 OAuth2 Endpoint 访问你的 Google 帐户的权限。再次单击允许。下一个浏览器屏幕将通知你等到授权令牌下载完成。当你的终端提示符返回消息“访问令牌已正确检索”时,你就知道令牌已下载,你可以开始挂载了。

  • 安装您的 Google Drive。创建一个目录(例如 google-drive)作为安装点(在后续讨论中,我们将称其为源目录或目标目录,以适合您的为准)。从终端发出命令,,mkdir ~/google-drive在您的主目录中创建一个新目录。发出命令google-drive-ocamlfuse ~/google-drive将您的 Google Drive 安装到 google-drive 目录。

  • 此时,您应该会看到您的 Google Drive 文件/目录填充在 google-drive 目录中。您可以像使用本地目录系统一样使用 Google Drive。

  • 当您想要卸载 google-drive 目录时,发出命令 fusermount -u ~/google-drive

有关上述步骤的更多信息,请参见这里

  • 现在,您可以使用任何您喜欢的 GUI 或命令行方法开始复制文件和目录。但我发现 rsync 特别适合此目的。我发现以下命令适合(并优化)我的情况。
rsync -uvrt --progress --human-readable <source directory/>\
<destination directory/>

关于 rsync 的几点说明

rsync 是一种快速且用途极为广泛的文件复制工具。它既可以在本地复制,也可以通过任何远程 shell 复制到/从另一台主机复制,还可以复制到/从远程 rsync 守护进程复制。rsync 的一个重要特性是它采用“增量传输算法”,这意味着它只会将更改从源同步或复制到目标,而不是复制整个文件,这最终会减少通过网络发送的数据量。请参阅 rsync 的手册页或这一页了解详情。

rsync 可以随时停止(终止),并且 rsync 将在下次调用时从该点恢复。请参阅这个问题(和答案)以获取其他有用的提示。

相关内容