我尝试使用 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 将在下次调用时从该点恢复。请参阅这个问题(和答案)以获取其他有用的提示。