forked from redbo/cloudfuse
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME
More file actions
127 lines (90 loc) · 4.66 KB
/
Copy pathREADME
File metadata and controls
127 lines (90 loc) · 4.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
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.rackspace.com/cloud/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
For CentOS or similar,
yum install gcc make fuse-devel curl-devel libxml2-devel openssl-devel
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:
You'll need to install fuse to use this application. It may have already
been installed as a dependency if you followed the "BUILDING" instructions
above.
On Debian:
apt-get install fuse
On CentOS or similar:
yum install fuse
The following settings can be defined in the file ~/.cloudfuse:
username=[Account username for authentication, required]
api_key=[API key for authentication with Rackspace]
tenant=[Tenant name for authentication with Openstack]
password=[Authentication password with Openstack]
authurl=[Authentication url, defaults to Rackspace's cloud]
region=[Regional endpoint to use]
use_snet=[True to use Rackspace ServiceNet for connections]
cache_timeout=[Seconds for directory caching, default 600]
verify_ssl=[False to disable SSL cert verification]
For authenticating with Rackspace's cloud, at minimum "username" and
"api_key" must be set.
For authenticating with Keystone, "username", "password", "tenant", and
"authurl" should probably be defined.
These settings can also be specified 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
It also inherits a number of command-line arguments and mount options from
the Fuse framework. The "-h" argument should provide a summary.
EXAMPLE:
A typical ~/.cloudfuse configuration file for use with Rackspace:
username=demo
api_key=643afce8b5187d40ba15e4827384fc5b
# if no region is selected, it will use your default region.
# region=DFW
# if connecting within a Rackspace datacenter, ServiceNet can be
# used to avoid bandwidth charges.
# use_snet=true
A typical ~/.cloudfuse configuration file for use with OpenStack,
noting that "tenant" should be the tenant name, rather than the ID:
username=demo
tenant=demo
password=supersecret
authurl=http://10.10.0.1:5000/v2.0
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 https://github.com/dysinger
* Chris Wedgwood https://github.com/cwedgwood
* Nick Craig-Wood https://github.com/ncw
* Dillon Amburgey https://github.com/dillona
* Manfred Touron https://github.com/moul
* David Brownlee https://github.com/abs0
* Mike Lundy https://github.com/novas0x2a
* justinb https://github.com/justinsb
Thanks, and I hope you find it useful.
Michael Barton
<mike@weirdlooking.com>