mirror of
https://github.com/TurboGit/hubicfuse.git
synced 2026-08-01 18:32:23 +02:00
f0c13eaf50678e8383c490e28ce6e31b24fae99b
At this stage the authentication is really dedicated to HubiC. It seems better to use a specific configuration file for this application.
HubicFuse is a FUSE application which provides access to Hubic's
cloud files via a mount-point.
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 libjson0-dev pkg-config
For CentOS or similar,
yum install gcc make fuse-devel curl-devel libxml2-devel \
openssl-devel json-c-devel
For Debian or Ubuntu,
apt-get install gcc make libfuse-dev libcurl-dev \
libcurl4-openssl-dev libxml2-dev libssl-dev libjson-c-dev
Cloudfuse is built and installed like any other autoconf configured code.
Normally,
./configure
make
sudo make install
USE:
Your Hubic Cloud configuration can be placed in a file named
$HOME/.hubicfuse. All the following variables are required:
client_id=[Hubic client id for the registered application]
client_secret=[Hubic client secret for the registered application]
refresh_token=[A refresh token you got from the script]
client_id, client_secret can be retrieved from the hubic
web interface: https://hubic.com/home/browser/developers/
The refresh_token can be obtained running the script provided (hubic_token)
or with any other method you like if you follow the example at https://api.hubic.com
Then you can call hubicfuse:
sudo hubicfuse /mnt/hubic -o noauto_cache,sync_read,allow_other
And finaly, it can be set in /etc/fstab:
hubicfuse /mnt/hubic fuse user,noauto 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.
USE AS NON-ROOT:
Add the user into the fuse group:
$ sudo usermod -a -G fuse [username]
Mount using the above command without the sudo. The .hubicfuse file is
searched into the user's home.
To unmount use:
$ fusermount -u [chemin]
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:
* Pascal Obry https://github.com/TurboGit
* 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.
Pascal Obry
<pascal@obry.net>
Languages
C
73.8%
Shell
23.9%
M4
1.2%
Makefile
0.9%
Dockerfile
0.2%