joe42 / CloudFusion

Linux file system (FUSE) to access Dropbox, Sugarsync, Amazon S3, Google Storage, Google Drive or WebDAV servers.
http://joe42.github.com/CloudFusion/
288 stars 35 forks source link

Bad address Error Starting CloudFusion with Dropbox #31

Open skerit opened 8 years ago

skerit commented 8 years ago

I try to start cloudfusion:

cloudfusion --config /home/skerit/.cloudfusion/dropbox.ini /media/dropbox/

And then, every time, a new browser window opens in order to give the app permission to access my dropbox account, even though it already has these permissions.

I click allow, and then I get this error:

 Process Process-1:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/main.py", line 53, in set_configuration
    shutil.copyfile(config_file, virtual_configuration_file)
  File "/usr/lib/python2.7/shutil.py", line 84, in copyfile
    copyfileobj(fsrc, fdst)
IOError: [Errno 14] Bad address

I've recreated the ini file, only edited the username and password, but still ....

vzaccaria commented 8 years ago

Same problem here. Reproducible with this (./Dockerfile):

FROM    ubuntu:14.04

ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update
RUN apt-get -qq update
RUN apt-get install -y python
RUN apt-get install -y git
RUN git clone git://github.com/joe42/CloudFusion.git
RUN apt-get install -y build-essential
RUN apt-get install -y python-setuptools
RUN apt-get install -y libffi-dev
RUN apt-get install -y python-dev
RUN apt-get install -y openssl
RUN apt-get install -y libssl-dev
RUN cd CloudFusion; python setup.py install
COPY ./Dropbox.ini /root
RUN apt-get install -y fuse
RUN usermod -a -G fuse root
RUN newgrp fuse

building the container:

docker build .

connecting to the docker:

docker run -ti --cap-add SYS_ADMIN --device /dev/fuse  ...

and running cloudfusion gives:

root@6c49364291a4:~# cloudfusion --config ./Dropbox.ini /mnt
root@6c49364291a4:~# Process Process-1:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/main.py", line 53, in set_configuration
    shutil.copyfile(config_file, virtual_configuration_file)
  File "/usr/lib/python2.7/shutil.py", line 84, in copyfile
    copyfileobj(fsrc, fdst)
IOError: [Errno 14] Bad address
mlloewen commented 8 years ago

Same issue here please fix

PythonNut commented 7 years ago

This also reproduces for Google Drive.

jackflap commented 5 years ago

I have the same issue on Ubuntu 18.04.1.

When I run with the 'foreground' flag, I can see an "Error connecting to "api.dropbox.com": [SSL: CERTIFICATE_VERIFY_FAILED]" error message.

Not sure what to do to fix that.. See below for more details:

ubuntu@ip-172-31-27-209:~/bin/CloudFusion$ cloudfusion --config ~/Dropbox.ini ~/mnt foreground Logging handler DBHandler was initialized before calling cloudfusion.mylogging.db_logging_thread.start(). Nothing will be logged. Exception in write: Error connecting to "api.dropbox.com": [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:726) Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/fuse.py", line 301, in wrapper return func(*args, kwargs) or 0 File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/fuse.py", line 377, in write return self.operations('write', path, data, offset, fh) File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/fuse.py", line 512, in call return getattr(self, op)(args) File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/pyfusebox/transparent_configurable_pyfusebox.py", line 125, in write return super( TransparentConfigurablePyFuseBox, self ).write(path, buf, offset, fh) File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/pyfusebox/configurable_pyfusebox.py", line 177, in write written_bytes = self.virtual_file.write(buf, offset) File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/pyfusebox/virtualconfigfile.py", line 50, in write self._initialize_store() File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/pyfusebox/virtualconfigfile.py", line 153, in _initialize_store store = self.get_new_store(service, config) #catch error? File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/pyfusebox/virtualconfigfile.py", line 200, in get_new_store raise e RESTSocketError: Error connecting to "api.dropbox.com": [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:726) Process Process-1: Traceback (most recent call last): File "/usr/lib/python2.7/multiprocessing/process.py", line 267, in _bootstrap self.run() File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python2.7/dist-packages/CloudFusion-7.5.19-py2.7.egg/cloudfusion/main.py", line 53, in set_configuration shutil.copyfile(config_file, virtual_configuration_file) File "/usr/lib/python2.7/shutil.py", line 98, in copyfile copyfileobj(fsrc, fdst) IOError: [Errno 14] Bad address