|

Random notes trying to install s3fs and backblaze support on Linux

B2 support for duplicity

Must be installed with pip for python 2

apt-get install python-pip
pip install b2

apt-get install duplicity
add-apt-repository ppa:duplicity-team/ppa
apt-get update
apt-get --only-upgrade install duplicity

duplicity /mount/point b2://<box's application ID>:<key>@<box id>

Worth noting that the documentation on backblaze themselves is wrong, you must use your bucket’s app id, not your master app id

Installing s3fs on ubuntu

libfuse must be installed from source or else you’ll get “modprobe: ERROR: ../libkmod/libkmod.c:514 lookup_builtin_file() could not open builtin file ‘/lib/modules/2.6.32-042stab131.1/modules.builtin.bin'”

wget https://github.com/libfuse/libfuse/archive/fuse-2.9.8.tar.gz
tar xvf fuse-2.9.8.tar.gz
cd libfuse-fuse-2.9.8
./configure

Opps… error! 

zsh: no such file or directory: ./configure

I noticed there’s configure.ac file, so it should be

autoconf

Opps… error again

configure.ac:6: error: possibly undefined macro: AM_INIT_AUTOMAKE
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
configure.ac:10: error: possibly undefined macro: AC_PROG_LIBTOOL
configure.ac:13: error: possibly undefined macro: AM_PROG_CC_C_O
configure.ac:73: error: possibly undefined macro: AM_ICONV
configure.ac:75: error: possibly undefined macro: AM_CONDITIONAL

Let’s try this

> ./makeconf.sh
Running libtoolize…
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
Running autoreconf…
configure.ac:10: installing './compile'
configure.ac:5: installing './config.guess'
configure.ac:5: installing './config.sub'
configure.ac:6: installing './install-sh'
configure.ac:6: installing './missing'
example/Makefile.am: installing './depcomp'

Cool, seems to work well

./configure
make
make install

Okay… now let’s try

>s3fs bucket /mount/point
fuse: failed to open /dev/fuse: Operation not permitted

Damn…

I’m going to use aws-cli instead. From https://gist.github.com/keeross/b19b6e5603c78073d58b

aws-cli to backup vesta to Amazon S3

  • Install pip (if not installed already):
$ curl -O https://bootstrap.pypa.io/get-pip.py
  • Install AWS cli tool:
$ sudo pip install awscli
  • Configure AWS cli tool:
$ aws configure
AWS Access Key ID [None]: <YOUR_AWESOME_KEY>
AWS Secret Access Key [None]: <YOUR_AWESOME_KEY>
Default region name [None]: us-west-2
Default output format [None]: json
  • Backup old file, then open and edit Vesta command v-backup-user:
$ cp /usr/local/vesta/bin/v-backup-user /usr/local/vesta/bin/v-backup-user_backup
$ sudo nano /usr/local/vesta/bin/v-backup-user
  • Somewhere in Variable&Function section add:
# AWS arguments
bucket_name=<your_awesome_bucket_name>
  • Search for # Creating final tarball section and right after this line chown admin:$user $BACKUP/$user.$date.tar add new code:
# AWS UPLOAD
aws s3api put-object --bucket $bucket_name --key $user/$user.$date.tar --body $BACKUP/$user.$date.tar --storage-class REDUCED_REDUNDANCY
echo -e "$(date "+%F %T") AWS: Uploaded and backed. $user.$date.tar"
msg="$msg\n$(date "+%F %T") AWS: Uploaded and backed. $user.$date.tar"

Leave a Reply

Your email address will not be published. Required fields are marked *