Thanks to visit codestin.com
Credit goes to github.com

Skip to content
 
 

Latest commit

 

History

92 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cloudfuse is a FUSE application which provides access to Rackspace's
Cloud Files (or any installation of Swift).

Cloud Files is a remote storage system which is similar in principle to
Amazon S3.  It provides a simple RESTful interface to storing and retrieving
objects.

    http://www.rackspacecloud.com/cloud_hosting_products/files

Swift, the software behind Cloud Files, has been open-sourced as part of the
OpenStack project.

    http://swift.openstack.org/


BUILDING:

    You'll need libcurl, fuse, libssl, and libxml2 (and probably their dev
    packages) installed to build it.  From a base Debian or Ubuntu install,
    this should get you to a point you can build and run it:
        apt-get install build-essential libcurl4-openssl-dev libxml2-dev \
             libssl-dev libfuse-dev

    Cloudfuse is built and installed like any other autoconf configured code.
    Normally,
        ./configure
        make
        sudo make install

    But I'm no autoconf wizard, and there may be dragons lurking there.


USE:

    Your Rackspace Cloud username and API key can be placed in a file
    named $HOME/.cloudfuse:
        username=[username]
        api_key=[api key]
        container=[base container]

    Or as mount options on the command line:
        cloudfuse -o username=redbo,api_key=713aa... mountpoint/

    Or as mount options in /etc/fstab:
        cloudfuse /mnt/cloudfiles fuse username=redbo,api_key=713aa...,user 0 0

    The following options are... optional:
        use_snet=[True to use servicenet for connections]
        cache_timeout=[seconds for directory caching, default 600]
        authurl=[authentication url - connect to non-Rackspace (swift) cluster]

    It also inherits a number of command-line arguments and mount options from
    the Fuse framework.  The "-h" argument should provide a summary.

    Your OS user will need access to the "fuse" group.  This can probably be
    accomplished with:
        sudo usermod -a -G fuse [username]


BUGS/SHORTCOMINGS:

    * rename() doesn't work on directories (and probably never will).
    * When reading and writing files, it buffers them in a local temp file.
    * It keeps an in-memory cache of the directory structure, so it may not be
      usable for large file systems.  Also, files added by other applications
      will not show up until the cache expires.
    * The root directory can only contain directories, as these are mapped to
      containers in cloudfiles.
    * Directory entries are created as empty files with the content-type
      "application/directory".
    * Cloud Files limits container and object listings to 10,000 items.
      cloudfuse won't list more than that many files in a single directory.


AWESOME CONTRIBUTORS:

    * Tim Dysinger fixed the Makefile              https://github.com/dysinger
    * Chris Wedgwood made du work by fixing stat   https://github.com/cwedgwood
    * Nick Craig-Wood implemented rename           https://github.com/ncw
    * Dillon Amburgey made it compile on clang     https://github.com/dillona


Thanks, and I hope you find it useful.

Michael Barton
<[email protected]>

About

Filesystem (fuse) implemented on Mosso's Cloud Files

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages