gri senkronizasyon hatası, muhtemelen google API kaydırması

18

Ubuntu 14.04 üzerinde çalışan griften google drive hesabımla senkronizasyon yapmakta sorun yaşıyorum. Daha önce hiç problem yaşamadım. Sistemimi temizlemeyi ve tüm yerel klasörleri silmeyi denedim, ancak yeniden yükledikten sonra gribi çalıştırmaya çalıştığımda da bununla karşılaşıyorum.

[email protected]:~/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<gr::http::Error>
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

İşte, API'nın bugün değiştiğini belirten bir google geliştiricileri sayfasının bağlantısı link . Bu bir sorun olabilir mi?

    
sordu LeoAnth 20.04.2015 22:31

9 cevap

18

Evet, Grive, geçersiz Dokümanlar Listesi API'sini kullanıyor. Yaklaşık 9 milyon PST'den itibaren bu API isteklerini sunmayı durdurduk. Bu nedenle, Grive istemcisi '400 Hatalı İstek' yanıtı alıyor.

Projesine baktığımızda neredeyse bir yıl boyunca sürdürülemiyor ve kesinlikle güncellenmedi ( burada & amp; burada ), Dokümanlar Listesinin resmi olarak kullanımdan kaldırıldığı 2012 yılında yayınlanan yeni API'ye.

    
verilen cevap Dan McGrath 20.04.2015 23:28
9

İyi bir alternatif, go 'de yazılan ve oldukça fazla özelliğe sahip olan sürücü olabilir.

Yüklemek için şu talimatları izleyin:

  1. Gerekli paketleri kurun

    sudo apt-get install golang git mercurial
    
  2. Giriş dizinizde go paketleri için bir yol oluşturun

    mkdir $HOME/go $HOME/go/bin
    
  3. Ana dizininizdeki .profile dosyasını düzenleyerek bu yolları uygun ortam değişkenlerine ekleyin. Bu satırları şu dosyaya ekleyin:

    if [ -d "$HOME/go" ] ; then
        export GOPATH="$HOME/go"
    fi
    
    if [ -d "$HOME/go/bin" ] ; then
        PATH="$HOME/go/bin:$PATH"
    fi
    
  4. Değişikliklerin geçerli olmasını sağlamak için oturumu kapatın ve oturum açın.

  5. En son kaynaktan drive indir ve yükle

    go get -u github.com/odeke-em/drive/cmd/drive
    
  6. İşte 'yi okuyun

    Temel kullanım:

    • drive init <folder> , Google Drive'ınızla senkronize etmek için <folder> değerini başlatır.
    • Başlangıçtaki klasörünüzde drive pull yaparsanız, Google Drive'daki tüm değişiklikleri indirir. İlk seferinde belki her şeyi indirmek için bunu daha çok yapmalısın.
    • drive push , yerel değişiklikleri yükler.
    • drive pull <fileOrPath> veya drive push <fileOrPath> , yalnızca <fileOrPath> için karşılık gelen eylemi yapıyor.
    • Kullanılacak çok daha fazla seçenek var, bu yüzden kılavuzu okuyun.
verilen cevap mamoch 25.04.2015 12:56
5

Yine işe yarayan bir çılgınlık çatalı (benim tarafımdan değil, sadece buldum)

İşte

Kolay değiştirme

mkdir grive 
cd grive/
git clone https://github.com/vitalif/grive2.git
cd grive2/
mkdir build 
cd build 
cmake ..
make -j4
sudo make install

Şimdi çok iyilik benim için iyi çalışıyor.

    
verilen cevap Ric Ambridge 26.06.2015 11:07
3

Gruba benzer bir çözüm jdrivesync . Bir kopyasını github sayfasından indirebilirsiniz.

jdrivesync'yi çalıştırmak için şu adımları izleyin:

  1. Java 'yı yükleme
  2. jdrivesync 'yi indirin
  3. java -jar jdrivesync-0.2.2-jar-with-dependencies.jar -l "/home/directory-to-sync" ile çalıştır
verilen cevap siom 03.05.2015 18:17
2

Ubuntu 14.04 grey paketi, sadece Grive2 sürüm 0.4.0-1 sürümüne yükseltildi. Yükseltmeden önce aynı sorunu yaşadım ancak bu sabah yükseltme ile eşzamanlamayı denedim ve işe yarıyor.

Ubuntu'nun 14.04 ve grive2'deki grive2 0.4.0-1'in, Ubuntu'nun şu anda desteklenen tüm sürümlerinde kolayca nasıl yükleneceğine dair talimatlar için bkz. bu yanıtı . Bağlantılı cevabın sudo apt-get install grive komutunun doğru olduğuna dikkat edilmelidir, çünkü PPA'yı ekledikten sonra, artık işe yaramayan eski, yükseltilmemiş eski versiyonunun yerine çalışan grive2'yi kuracaktır.

    
verilen cevap user218538 26.05.2015 07:40
2

grive2 paketini GitHub'dan kullanabilirsiniz.

Kurulum

sudo apt-get install git cmake build-essential libgcrypt11-dev libyajl-dev libboost-all-dev libcurl4-openssl-dev libexpat1-dev libcppunit-dev binutils-dev

Ayrıca, pakete ait github sayfasında listelenmemiş olanlara da ihtiyacım vardı.

sudo apt-get install debhelper pkg-config zlib1g-dev

Ayrıca bu işe yaramadı:

dpkg-buildpackage -j4 

Bu hatayı aldım:

dpkg-buildpackage: error: failed to sign .dsc and .changes file

Bunun yerine çalıştı:

sudo dpkg-buildpackage -uc -us

Veya manuel yapı da çalıştı:

mkdir build
cd build
cmake ..
make -j4
sudo make install

Kullanım

Senkronize etmek için, programı manuel olarak çalıştırmanız gerekir (henüz "gerçek zamanlı izleme" yoktur). Komut isteminde şunu yazın:

cd /home/yourUsername/GoogleDrive/

Bu ilk defa buysa, şunu çalıştırın:

sudo grive -a

başka şunu çalıştırın:

sudo grive

Bunun düzenli olarak yapılmasını isterseniz bir cron işi oluşturabilirsiniz.

Kaynak: İşte

    
verilen cevap JedatKinports 29.04.2017 01:03
1

bu İşte ’i deneyin, kaydetme sırasında dosyaları hemen senkronize ederken bir şekilde yavaştır, aynı zamanda dönüştürme de ofis biçimlerini açmak için google dokümanlar ve sayfalar (odt & amp'ler) ancak salt okunur modda

    
verilen cevap Adham Saad 21.04.2015 13:40
0

Bu, sadece birazcık şimdiye kadar oynadığım halde de bir alternatif olabilir

İşte

Açık kaynak, Go dilinde yazılmıştır. Hem senkronize hem de kopyalayabilir.

Çıktı tuhaftır ve biri senkronizasyon komutuyla verileri silmemeye dikkat etmelidir.

Grive kullanımı çok daha kolaydı ama ölü gibi görünüyor.

Başka ilginç bir alternatif de bu olabilir:

İşte

    
verilen cevap Thomas 23.04.2015 11:17
-1

insynchq benim için harika çalışıyor. Ancak, bunu yeni buldum: İşte

    
verilen cevap 3point0 06.11.2015 03:00

Etiketlerdeki diğer soruları oku