Wednesday, January 25, 2017
Mount Amazon S3 storage as local filesystem on Ubuntu server
Mount Amazon S3 storage as local filesystem on Ubuntu server
Amazon S3 is a high reliability online storage. We have recently started using Amazon S3 in our company as a backup storage for our projects and as a storage for static sites content. Next step-by-step tutorial describes how to mount S3 bucket as a local filesystem using FUSE-based file system s3fs.
1. Install neccessary packages
$ sudo apt-get update2. Next step is to download archive with latest version of s3fs
$ sudo apt-get install build-essential libfuse-dev fuse-utils libcurl4-openssl-dev libxml2-dev mime-support
$ wget http://s3fs.googlecode.com/files/s3fs-1.61.tar.gz3. Compile sources
$ tar xzvf s3fs-1.61.tar.gz
$ cd s3fs-1.61/4. Allow other users have access to s3 bucket that will be mounted
$ sudo ./configure
$ sudo make
$ sudo make install
Edit file /etc/fuse.conf with any text editor, I used vim for this:
$ sudo vim /etc/fuse.confAnd uncomment the following line in the conf file:
...
#user_allow_other
5. Add pare of you Amazon account key id and account access key to /etc/passwd-s3fs file
Edit file /etc/passwd-s3fs and add here string: AWS_ACCESS_KEY_ID:AWS_SECRET_ACCESS_KEY
Where: AWS_ACCESS_KEY_ID -- your amazon account key id
AWS_SECRET_ACCESS_KEY -- your amazon account access key
6. Set permissions to file
$ sudo chmod 0600 /etc/passwd-s3fs7. Mount s3 bucket to local filesystem
$ sudo s3fs your_backet_name -o use_cache=/tmp -o allow_other /mnt/s3storageThats all and now S3 bucket can be used as local filesystem.
Available link for download