抓住同步错误,可能谷歌API转移
我无法通过在Ubuntu 14.04上运行的gove驱动器帐户同步。 我之前从未遇到过任何问题。 我尝试从我的系统中清除驱动器并删除所有本地文件夹,但在重新安装后尝试运行grive时仍然会出现这种情况。
user@user-OptiPlex-780:~/drive$ grive grive: Symbol `json_tokener_errors' has different size in shared object, consider re-linking Reading local directories Synchronizing folders exception: /build/buildd/grive-0.2.0/libgrive/src/http/CurlAgent.cc(149): Throw in function long int gr::http::CurlAgent::ExecCurl(const string&, gr::http::Receivable*, const gr::http::Header&) Dynamic exception type:boost::exception_detail::clone_impl std::exception::what: std::exception [gr::expt::MsgTag*] = [gr::http::CurlCodeTag*] = 0 [gr::http::HttpResponseTag*] = 400 [gr::http::UrlTag*] = https://docs.google.com/feeds/default/private/full/-/folder?max-results=50&showroot=true [gr::http::HeaderTag*] = Authorization: Bearer ya29.WwFOho3OkmkxFIdn86HBbtpSIyBYDzDgQua1K6JcEu7kCBLgvY1aEiUHCZlSCuli_qPHkTfNZLhDfQ GData-Version: 3.0
以下是指向Google今日更改链接的Google开发人员页面的链接 。 这可能是个问题吗?
是的,Grive正在使用已失效的Documents List API。 截至太平洋标准时间上午9点左右,我们停止提供这些API请 这就是Grive客户端收到“400 Bad Request”响应的原因。
看看这个项目 ,它似乎没有维持近一年,并且肯定没有更新( 这里和这里 )到2012年发布的新API,当时文档列表被正式弃用。
一个很好的选择可能是驱动器 ,它是用go
编写的,并且具有很多function。
要安装,请遵循以下说明:
-
安装所需的包
sudo apt-get install golang git mercurial
-
在主目录中为
go
包创建路径mkdir $HOME/go $HOME/go/bin
-
通过编辑主目录中的
.profile
文件,将这些路径添加到适当的环境变量中。 因此,在该文件的和处添加以下行:if [ -d "$HOME/go" ] ; then export GOPATH="$HOME/go" fi if [ -d "$HOME/go/bin" ] ; then PATH="$HOME/go/bin:$PATH" fi
-
注销并登录以使更改生效。
-
从最新源下载并安装
drive
go get -u github.com/odeke-em/drive/cmd/drive
-
阅读https://github.com/odeke-em/drive/#usage
基本用法:
-
drive init
初始化
以与您的Google云端硬盘同步。 - 如果您在初始化文件夹中进行了
drive pull
,则会从Google云端硬盘下载所有更改。 在第一次,你可能需要做更多次来下载所有内容。 -
drive push
上传本地更改。 -
drive pull
或drive push
仅对drive push
执行相应的操作。 - 还有更多选项可供使用,请阅读手册。
-
已经制作了一个可以再次起作用的一个把握叉子(不是我,只是发现它)
https://github.com/vitalif/grive2
易于更换
mkdir grive cd grive/ git clone https://github.com/vitalif/grive2.git cd grive2/ mkdir build cd build cmake .. make -j4 sudo make install
现在grive对我来说很好。
类似于grive的解决方案是jdrivesync 。 您可以在其github页面上下载副本。
要运行jdrivesync,请执行以下步骤:
- 安装Java
- 下载jdrivesync
- 用
java -jar jdrivesync-0.2.2-jar-with-dependencies.jar -l "/home/directory-to-sync"
Ubuntu 14.04 grive包刚刚升级到Grive2版本0.4.0-1。 我在升级之前遇到了同样的问题,但我今天早上尝试使用升级进行同步,但它确实有效。
有关如何在Ubuntu 14.04中轻松安装grive2 0.4.0-1以及在所有其他当前支持的Ubuntu版本中使用grive2的说明,请参阅此答案 。 应该注意的是,链接答案中的命令sudo apt-get install grive
是正确的,因为在添加PPA之后它确实会安装grive2,而不是旧的未升级版本的grive不再起作用。
您可以使用来自GitHub的grive2包
安装
sudo apt-get install git cmake build-essential libgcrypt11-dev libyajl-dev libboost-all-dev libcurl4-openssl-dev libexpat1-dev libcppunit-dev binutils-dev
我还需要这些,这些没有列在包的github页面上。
sudo apt-get install debhelper pkg-config zlib1g-dev
这也行不通:
dpkg-buildpackage -j4
我收到了这个错误:
dpkg-buildpackage: error: failed to sign .dsc and .changes file
这相反:
sudo dpkg-buildpackage -uc -us
或者手动构建也有效:
mkdir build cd build cmake .. make -j4 sudo make install
用法
要同步,您必须手动运行程序(还没有“实时观看”)。 在提示符下键入:
cd /home/yourUsername/GoogleDrive/
如果这是你第一次,请运行:
sudo grive -a
否则运行这个:
sudo grive
如果您希望定期完成此任务,则可以设置cron作业。
资料来源:http: //yourcmc.ru/wiki/Grive2#Usage
尝试这个https://github.com/astrada/google-drive-ocamlfuse ,它在某种程度上是缓慢的,因为它在您保存时立即同步文件,它也将谷歌文档和工作表转换为打开办公室格式(odt&ods)但在只读模式,
这可能也是一种替代方案,尽管到目前为止我只玩了一点
它是开源的,用Go编写。 可以同步和复制。
输出很奇怪,必须注意不要使用sync命令删除数据。
Grive更容易使用,但似乎已经死了。
另一个有趣的选择可能就是这个:
insynchq对我很有用。 但是,我刚刚发现了这个: https : //www.thefanclub.co.za/overgrive
- 如何让Intel Dual Band Wireless-AC 3168在Ubuntu 14.04.5上运行?
- IPv6不适用于网桥
- 升级到14.04后出现“Shutdown”和“LogOut”问题
- Flash播放器无法在14.04 LTS中工作
- Ubuntu服务器错误:找不到文件’/grub/i386-pc/normal.mod’。 grub rescue>
- Xfce4 Alt F2 – xfrun4命令在14.04 Trusty中无能为力
- 如何在使用可启动USB记忆棒卸载硬盘驱动器时fsck硬盘驱动器?
- 如何在Ubuntu 14.04 LTS中安装Aptana Studio 3?
- 如何使用apt在Azure AMD64 Ubuntu Server 14.04 LTS(Trusty)上安装32位OpenJDK-7-JRE?