SyncY安装配置方法

一、环境准备

1、Python版的安装:
在openwrt12.09系统必须安装如下包:

libcurl
libopenssl
kmod-nls-utf8
Python
python-curl

安装以上包需要4M左右的空闲空间,如空间空间不足,只有通过u盘来扩展了,这个是没法精简了,除非有能人自己编译把不需要的删除了。 如是其它版本系统,请对应的安装相应的包。

Windows系统上安装SyncY:
分别安装如下几个包

python2.7
pywin32
pycurl
pycrypto

以上包在本地下载里面有下载。windows系统上配置文件默认和程序文件在一个文件夹下面,如果不在一个文件夹下面,请修改syncy.py文件中的配置文件地址。配置文件中设置的文件夹分隔符请使用“/”,而不要使用windows默认的“\”,如D盘下的test目录,请设置为“d:/test”。Windows系统默认字符集为GBK,如果同步下来的中文文件名存在乱码,请根据自己的系统环境修改字符集,用编辑器打开syncy.py文件,搜索“__CHARSET__ = ‘GBK’”,把GBK改成需要的字符集即可。

加密设置注意事项(v2.5.0及之后版本):

        一旦启用加密,请牢记密钥及设置的加密方法,将来下载文件时加密密钥或加密方法错误将会导致下载的文件数据不正确。某个同步文件夹一旦设置为启用加密,所有上传和下载的文件都将进行加密或解密操作,因此云端的加密文件夹下面请勿手动添加明文文件!如果已有文件上传至云端,要想修改加密方法或密钥,最好全部重新上传所有文件,否则会导致云端存在不同加密方法或密钥加密出来的文件,将来下载时将无法区分,导致部分文件无法解密!

加密设置请参考配置文件说明

Perl和Bash版已不再提供支持,请安装Python版,Python V2版支持多任务多线程,功能更强。
2、Perl v1.0.4版的安装:
1.0.4 Perl版及之后的是精简过后的,安装包少了不少,安装空间占用在1M左右,安装包如下:

libcurl
libopenssl

kmod-nls-utf8
perl
perlbase-essential
perlbase-digest
perl-www-curl
perlbase-xsloader
perlbase-dynaloader
perlbase-config
perlbase-autoloader
perlbase-utf8

 如是其它系统,请对应的安装相应的包,在cpan.org网站上可通过perlbase-后面的名称来搜索相应的包并下载源码,各个包还可能依赖别的包,如运行报错,提示缺少包,请根据提示安装相应的包。

3、Bash版的安装:
Bash版的安装在openwrt上需要以下包:

curl
libopenssl
kmod-nls-utf8
bash

bash版本最好是4.2的,3.x版的使用存在一些问题,curl能安装最新版最好安装最新版,其他类型系统请对应安装相应的包。

二、安装SyncY

1、OpenWrt系统(含luci界面): OpenWrt系统安装最新的luci版本(只有Python和Perl语言的有)的,下载安装包并上传到tmp目录,完成后执行 #opkg install /tmp/SyncY-Python-luci_1.0.10-1_all.ipk(Perl版对于修改文件名),后面的配置从luci界面配置即可。

2、ssh安装:
a)、复制配置文件syncy到/etc/config目录下,复制syncy.py到/usr/bin目录下,授予syncy.py可执行权限;
b)、执行syncy.py获取用户码, 获取用户码后按照提示打开百度授权页面https://openapi.baidu.com/device,如下图:
a1.jpg
输入用户码(用户码有效期30分钟),输入完成用户码后点“继续”按钮进入授权确认界面,如下图:
a2.jpg
最后点“授权”完成授权。
a3.jpga4.jpg
c)、完成授权后回到ssh终端按回车键完成本地的授权操作,但显示“Get device token success.”表示授权完成。

三、设置自动启动

只适用于OpenWrt系统不含luci的Python版和Perl版,含luci的在安装时已经设置了相应内容,只需要在luci界面上配置即可,bash版只能通过计划任务来设置。
在/etc/init.d目录下建立syncy文件并授予可执行权限,文件内容如下:

#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org

START=99
STOP=10

start() {
/usr/bin/syncy.py &
}

stop() {
[ -e /var/run/syncy.pid ] && {
sypid=$(cat /var/run/syncy.pid)
kill $sypid
}
}

restart() {
[ -e /var/run/syncy.pid ] && {
sypid=$(cat /var/run/syncy.pid)
kill $sypid
}
sleep 1
/usr/bin/syncy.py &
}

保存文件并执行#/etc/init.d/syncy enable来启用自动启动,Perl版对应的吧syncy.py改成syncy.pl。其他类型的系统请参照设置,不了解的可以百度一下。

SyncY安装配置方法》上有152条评论

  1. xujiahai

    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1277, in
    sy = SyncY(sys.argv[1:])
    File “/usr/bin/syncy.py”, line 107, in __init__
    http_code = self.__curl_request(‘https://syncyhome.duapp.com/syserver’,’method=bind_device&scope=basic,netdisk’,’POST’,’normal’)
    File “/usr/bin/syncy.py”, line 314, in __curl_request
    curl = pycurl.Curl()
    pycurl.error: initializing curl failed
    提示这个错误不知道是什么原因!

    回复
    1. WishInLife 文章作者

      之前也有人反映此问题,就是pycurl的问题,你重新安装下看看,pycurl依赖的包有libcurl、libopenssl。

      回复
    2. ranbo

      root@PogoPlug:/tmp# python /usr/bin/syncy.py
      Traceback (most recent call last):
      File “/usr/bin/syncy.py”, line 1277, in
      sy = SyncY(sys.argv[1:])
      File “/usr/bin/syncy.py”, line 107, in __init__
      http_code = self.__curl_request(‘https://syncyhome.duapp.com/syserver’,’method=bind_device&scope=basic,netdisk’,’POST’,’normal’)
      File “/usr/bin/syncy.py”, line 314, in __curl_request
      curl = pycurl.Curl()
      pycurl.error: initializing curl failed

      同样出这样的错误。
      设备系统信息:
      主机名 PogoPlug
      Model Pogoplug Pro
      固件版本 OpenWrt Barrier Breaker 20140503 / LuCI Trunk (svn-r10180)
      内核版本 3.13.7
      本地时间 Wed May 7 11:55:09 2014
      运行时间 1h 31m 16s
      平均负载 0.00, 0.05, 0.06

      回复
      1. WishInLife 文章作者

        python-curl(pycurl)的问题,之前也有网友有这个问题,好像是重新安装解决的,要不你也重新安装试试,卸载后先看看,删除后看看/usr/lib/python2.7/site-packages下面的文件,如果存在pycurl相关的先删除或重名下。

        回复
  2. ranbo

    root@PogoPlug:/# python usr/bin/syncy.py
    2014-05-07 23:33:01 WARNING: Request failed,wait 3s to retry(1). Curl(6): Couldn’t resolve host ‘syncyhome.duapp.com’.
    2014-05-07 23:33:02 WARNING: Request failed,wait 3s to retry(2). Curl(6): Couldn’t resolve host ‘syncyhome.duapp.com’.
    2014-05-07 23:33:02 WARNING: Request failed,wait 3s to retry(3). Curl(6): Couldn’t resolve host ‘syncyhome.duapp.com’.
    2014-05-07 23:33:02 ERROR: Get device code failed, .

    搞好一部分了,现在又成这样了

    回复
    1. WishInLife 文章作者

      你的系统是什么?这个还是第一次有人反馈这个问题。

      回复
        1. WishInLife 文章作者

          你好,你重启下路由,或重新安装下ipk文件看看。

          回复
  3. xiaoyutou

    centos对应的需要安装的环境如下:
    yum install -y python libcurl openssl python-pycurl

    回复
  4. GreenIce

    在luci设置界面里,开机自动启动,已打钩,接下来一项:启动…项,按钮总显示“启动”, SyncY尚未启动…….,点启动后,变为停止运行按钮,SyncY正在运行…….,但只要离开syncy luci设置界面就会回到显示“启动”, SyncY尚未启动…….,不知道什么原因?也不能和百度网盘同步,也没有错误提示。

    回复
    1. WishInLife 文章作者

      你用的是什么版本的系统,之前有位网友也是这个问题,用的是openwrt.cn上下的系统,那个系统的luci保存的配置文件有问题,配置文件中的关键字都加上了单引号,导致程序不能识别启动出错,且还没有日志。你也从ssh登陆看下配置文件,看看是不是也存在这个问题,要是也是这个问题的话就只能通过ssh来修改配置。

      回复
      1. changm79

        MW3520 OPENWRT网友编译版,/etc/config/syncy如下
        config syncy
        option blocksize ’10’
        option ondup ‘rename’
        option datacache ‘on’
        option excludefiles ‘*/Thumbs.db’
        option listnumber ‘100’
        option retrytimes ‘3’
        option retrydelay ‘3’
        option maxsendspeed ‘0’
        option maxrecvspeed ‘0’
        option syncperiod ‘0-24’
        option syncinterval ‘3600’
        option helptext ‘…………………’
        option syncyerrlog ‘/mnt/sda2/Baidu/SYNCERR.log’
        option syncylog ‘/mnt/sda2/Baidu/SYNC.log’

        config syncytoken

        config syncpath
        option enable ‘1’
        option localpath ‘/mnt/sda2/Baidu’
        option remotepath ‘/’
        option synctype ‘download+’

        回复
        1. WishInLife 文章作者

          关键字没问题,但发现怎么有些单引号是中文的单引号,必须是英文半角下的单引号程序才可识别。

          回复
  5. lwd2136

    Can’t load ‘/usr/lib/perl5/5.20/auto/WWW/Curl/Curl.so’ for module WWW::Curl: Fil e not found at /usr/lib/perl5/5.20/XSLoader.pm line 62.
    at /usr/lib/perl5/5.20/WWW/Curl.pm line 8.
    Compilation failed in require at /usr/lib/perl5/5.20/WWW/Curl/Easy.pm line 9.
    BEGIN failed–compilation aborted at /usr/lib/perl5/5.20/WWW/Curl/Easy.pm line 9 .
    Compilation failed in require at /usr/bin/syncy.pl line 18.
    BEGIN failed–compilation aborted at /usr/bin/syncy.pl line 18.
    Undefined subroutine &WWW::Curl::_global_cleanup called at /usr/lib/perl5/5.20/W WW/Curl.pm line 11.
    END failed–call queue aborted at /usr/bin/syncy.pl line 18.

    一样都是curl 报错
    无论perl 或者python

    回复
        1. WishInLife 文章作者

          系统是什么版本的?有的版本确实有些奇怪的问题。

          回复
          1. lwd2136

            Powered by LuCI Trunk (svn-r10467) OpenWrt Barrier Breaker 14.07-rc3

          2. WishInLife 文章作者

            版本还挺新,不知道是不是你这个版本的库文件有问题还是什么原因,很多库文件是需要针对特定版本编译的。
            我的是官方的12.09。

  6. Vip_Hc

    作者你好,我在我的路由器上面安装了最新的 python版,由于flash 容量我把所欲的依赖包括软件都安装到U盘里面的。
    我也将init.t / syncy 的启动文件里面的syncy.py 这个文件路径修改成了现在实际安装的路径,etc/config 文件也在里面放着。
    当我用命令./syncy start 的时候 报错了。如下
    File “/mnt/sda5/packages/usr/bin/syncy.py”, line 22, in
    import pycurl
    ImportError: File not found

    一下组件我都安装了的。
    libcurl
    libopenssl
    kmod-nls-utf8
    Python
    python-curl

    求解,现在无法启动,,

    回复
    1. WishInLife 文章作者

      这个问题有几个网友遇到过,具体原因不是很明确。
      你看下/usr/lib/python2.7/site-packages/目录下有没有curl目录及两个pycurl相关的文件,curl目录下还有个__init__.py文件。

      回复
  7. luyong

    最新版Python版 1.0.14
    root@OpenWrt:~# /usr/bin/syncy.py
    Traceback (most recent call last):
    File “/usr/lib/python2.7/encodings/__init__.py”, line 100, in search_function
    level=0)
    File “/usr/lib/python2.7/encodings/ascii.py”, line 1
    SyntaxError: Non-ASCII character ‘\xb6’ in file /usr/lib/python2.7/encodings/ascii.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
    提示这样是什么问题啊?

    回复
    1. WishInLife 文章作者

      这个是编码转码的问题,先测试下只有英文文件名能不能上传或下载。如果都是英文的可以的话再看是哪个文件不行,文件名最好不要用什么很特别的特殊字符。

      另外再检查下安装了utf8的支持包了没有。

      回复
      1. luyong

        已经搞好了,原来的问题是获取不到用户码,后来把那些依赖包和SyncY都删除了重新安装一遍就好了

        回复
      2. luyong

        我的路由是OP的trunk固件,装的是libcurl,libopenssl,kmod-nls-utf8,和barrier_breaker/14.07-rc3的python-mini,python,python-curl这些依赖包,希望有和我一样固件的人有些参考。

        回复
        1. xueyeteng

          我是路由宝刷的潘多拉 14.09 固件 也是第一次装的时候没有无法获取用户码,后来重新刷的固件安装的http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages源里找的
          libffi_3.0.13-1_ramips_24kec.ipk
          python_2.7.3-2_ramips_24kec.ipk
          python-curl_7.19.0-1_ramips_24kec.ipk
          python-mini_2.7.3-2_ramips_24kec.ipk
          这四个依赖包(这几个依赖包不在一个目录里)ok,绑定成功。
          后续还没有测试,测试完后再来报告。

          回复
          1. xueyeteng

            测试成功,可以下载文件到本地。期待稳定运行。

            感谢WishInLife大编写这么棒的程序。谢谢!

  8. luyong

    已经搞好了,原来的问题是获取不到用户码,后来把那些依赖包和SyncY都删除了重新安装一遍就好了

    回复
  9. linsen

    你好。这个可以装到西部数据的my cloud nas上吗?如果可以能写一下安装步骤吗?

    回复
    1. WishInLife 文章作者

      不知道my cloud nas是什么系统,要是linux的,且能安装上python和libcurl的话就没问题,只能试试看了,我没有相关产品,没法测试,也就没法写出安装方法了。

      回复
  10. 冥河

    2015-01-25 01:49:43 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:44 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:44 ERROR: Download file “/apps/syncy/baidu/010115-772-carib-720p.mp4” failed.
    2015-01-25 01:49:44 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:44 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:44 ERROR: Download file “/apps/syncy/baidu/010115-001-carib-720p.mp4” failed.
    2015-01-25 01:49:55 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:55 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:55 ERROR: Download file “/apps/syncy/baidu/010215_002.avi” failed.
    2015-01-25 01:49:55 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:55 ERROR: Transfer thread exception error occurred, error: No JSON object could be decoded .
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1602, in run
    responses = json.loads(responses)
    File “/usr/lib/python2.7/json/__init__.py”, line 326, in loads
    return _default_decoder.decode(s)
    File “/usr/lib/python2.7/json/decoder.py”, line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File “/usr/lib/python2.7/json/decoder.py”, line 384, in raw_decode
    raise ValueError(“No JSON object could be decoded”)
    ValueError: No JSON object could be decoded

    2015-01-25 01:49:55 ERROR: Download file “/apps/syncy/baidu/010415-774.mp4” failed.

    老大帮帮我看看这是什么原因

    回复
    1. WishInLife 文章作者

      只要运行程序就这样吗?要是的话加我qq57956720。

      回复
  11. lewiseek

    [root@PandoraBox:/root]#/usr/bin/syncy.py
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 28, in
    import pycurl
    ImportError: File not found
    大哥,这是什么情况造成的?

    回复
    1. WishInLife 文章作者

      是否已经安装了python-curl?如果安装了,顺序执行下下面的命令,然后把结果贴出来,最好加下我qq57956720。
      #python
      >>>import sys
      >>>sys.path
      把输出的结果发给我。

      回复
      1. luci

        #python
        >>>import sys
        >>>sys.path
        [”, ‘/mnt/sda1/opt/usr/lib/python27.zip’, ‘/mnt/sda1/opt/usr/lib/python2.7’, ‘/mnt/sda1/opt/usr/lib/python2.7/plat-linux2’, ‘/mnt/sda1/opt/usr/lib/python2.7/lib-tk’, ‘/mnt/sda1/opt/usr/lib/python2.7/lib-old’, ‘/mnt/sda1/opt/usr/lib/python2.7/lib-dynload’, ‘/mnt/sda1/opt/usr/lib/python2.7/site-packages’]
        怎么增加 pycurl ?

        回复
        1. WishInLife 文章作者

          看你的sys.path没什么异常,只是安装目录不是默认的,看看/mnt/sda1/opt/usr/lib/python2.7/site-packages文件家下面有没有pycurl.so文件,以及文件夹curl。如果不存在,搜索下pycurl.so这个文件在哪个文件家下面。

          另外,你执行下以下命令,看能不能顺利执行:
          # python
          >>>import time
          >>>time.sleep(1)

          最好加下我qq:57956720,方便沟通。

          回复
  12. chemisanger

    WD MyCloud安装SyncY-Python-V1.0.15,每次开机通过putty运行“nohup /usr/bin/syncy.py &”运行软件,同步20多G的照片视频以后,再次开机运行没有响应,重启MyCloud后运行“/usr/bin/syncy.py”得以下内容:
    2015-02-07 23:10:02 WARNING: Request failed, wait 3 seconds and try again(1). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:512085286}.
    2015-02-07 23:10:06 WARNING: Request failed, wait 3 seconds and try again(2). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:1836131913}.
    2015-02-07 23:10:10 WARNING: Request failed, wait 3 seconds and try again(3). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:1236909550}.
    2015-02-07 23:10:14 ERROR: Get pcs quota failed(error code:401),{“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:3852136165}.
    2015-02-07 23:10:14 Start sync path: “/shares/BaiduYun:/WDCloud:sync”.
    2015-02-07 23:10:16 WARNING: Request failed, wait 3 seconds and try again(1). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:2420318792}.
    2015-02-07 23:10:20 WARNING: Request failed, wait 3 seconds and try again(2). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:2683330176}.
    2015-02-07 23:10:24 WARNING: Request failed, wait 3 seconds and try again(3). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:2559171332}.
    2015-02-07 23:10:28 ERROR: Get file list failed(error code:401): /apps/SyncY/WDCloud, {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:1802136919}.
    2015-02-07 23:10:28 Sync path: “/shares/BaiduYun:/WDCloud:sync” failed, 0 files success, 0 files failed, 1 errors occurred.
    2015-02-07 23:10:28 ERROR: Sync path: “/shares/BaiduYun:/WDCloud:sync” failed, 0 files success, 0 files failed, 1 errors occurred.
    2015-02-07 23:10:29 WARNING: Request failed, wait 3 seconds and try again(1). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:822918126}.
    2015-02-07 23:10:33 WARNING: Request failed, wait 3 seconds and try again(2). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:3188115761}.
    2015-02-07 23:10:38 WARNING: Request failed, wait 3 seconds and try again(3). Http(401): {“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:2636197803}.
    2015-02-07 23:10:42 ERROR: Get pcs quota failed(error code:401),{“error_code”:110,”error_msg”:”Access token invalid or no longer valid”,”request_id”:1819278018}.
    请问是什么问题,谢谢。

    回复
    1. WishInLife 文章作者

      access token无效的问题,应该是在刷新了access token后没有正确的保存下来,建议升级下syncy的版本,安装新版的,然后重新绑定下,应该就不会有这个错误了。

      回复
  13. lijunhao

    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1728, in
    sy = SyncY(sys.argv[1:])
    File “/usr/bin/syncy.py”, line 255, in __init__
    threadtest.join(1)
    File “/usr/lib/python2.7/threading.py”, line 652, in join
    raise RuntimeError(“cannot join thread before it is started”)
    RuntimeError: cannot join thread before it is started
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1728, in
    sy = SyncY(sys.argv[1:])
    File “/usr/bin/syncy.py”, line 255, in __init__
    threadtest.join(1)
    File “/usr/lib/python2.7/threading.py”, line 652, in join
    raise RuntimeError(“cannot join thread before it is started”)
    RuntimeError: cannot join thread before it is started
    Traceback (most recent call last):
    File “/usr/bin/syncy.py”, line 1728, in
    sy = SyncY(sys.argv[1:])
    File “/usr/bin/syncy.py”, line 255, in __init__
    threadtest.join(1)
    File “/usr/lib/python2.7/threading.py”, line 652, in join
    raise RuntimeError(“cannot join thread before it is started”)
    RuntimeError: cannot join thread before it is started

    安装后一直是这个错误,楼主帮忙看一下?

    回复
    1. WishInLife 文章作者

      把threadtest.join(1)这一行注释了应该就可以了,只有255行这一处。

      回复
  14. qqoicq

    WDMyCloud:/nfs/Baidu# /usr/bin/syncy.py
    2015-03-02 16:40:32 PCS quota is 3177G,used 2742G.
    2015-03-02 16:40:32 ERROR: The 1’s of syncpath setting is invalid.
    2015-03-02 16:40:32 PCS quota is 3177G,used 2742G.

    老板这个怎么搞啊。

    回复
    1. WishInLife 文章作者

      应该是你的配置文件有问题,且是第一个syncpath节设置有问题,请参考http://syncyhome.duapp.com/index.php/syncyconfighelp/来设置配置文件,如果是在windows上修改的配置文件,注意换行符。
      如果设置完了还是不对,就把你的配置文件贴出来看看。

      回复
  15. qqoicq

    config syncy
    option syncyerrlog ”
    option syncylog ”
    option blocksize ’10’
    option ondup ‘rename’
    option datacache ‘on’
    option excludefiles ‘*/Thumbs.db’
    option listnumber ‘100’
    option retrytime