--- title: "Mount a bucket with s3fs" description: "Install s3fs-fuse and mount an E2E Object Storage bucket as a folder on a Linux node or your own machine." content_type: "how-to" product: "object-storage" platform: "MyAccount" url: "/myaccount/object-storage/how-to/mount-a-bucket-with-s3fs/" topic: ["create-and-connect"] relationships: {"requires":["/myaccount/object-storage/how-to/generate-an-access-key/"]} --- # Mount a bucket with s3fs s3fs-fuse mounts a bucket as an ordinary folder, so anything on your system that reads and writes files can use it without knowing it is talking to E2E Object Storage underneath. You need a bucket and an access key first; see [Generate an access key](/myaccount/object-storage/how-to/generate-an-access-key/). You also need a Linux or macOS computer to mount it on: a [node](/myaccount/node/) you create in MyAccount, or your own machine. ## Install s3fs-fuse ```bash frame="none" sudo apt install s3fs ``` On RHEL or CentOS, install it from EPEL instead: ```bash frame="none" sudo yum install epel-release sudo yum install s3fs-fuse ``` On macOS, s3fs needs osxfuse, the add-on that lets macOS mount a folder that is not on a local disk. Install it first, then s3fs, both with Homebrew: ```bash frame="none" brew install --cask osxfuse brew install s3fs ``` ## Store your credentials ```bash frame="none" echo ":" > /etc/object-storage-creds chmod 600 /etc/object-storage-creds ``` The permission change limits the file to your own user, since it holds your secret key in plain text. ## Mount the bucket Create a folder to mount it at, then mount it: ```bash frame="none" mkdir /object-storage s3fs /object-storage -o passwd_file=/etc/object-storage-creds,use_path_request_style,url=https://objectstore.e2enetworks.net ``` Use the Chennai endpoint from [S3 compatibility](/myaccount/object-storage/concepts/s3-compatibility/) instead of `https://objectstore.e2enetworks.net` if your bucket is in Chennai. Confirm it mounted: ```bash frame="none" mount | grep s3fs ``` A successful mount looks like this: ```text s3fs on /object-storage type fuse.s3fs (rw,nosuid,nodev,relatime,user_id=0,group_id=0) ``` To confirm the mount reaches the bucket itself, write a test file through it, then look for that file in the bucket: ```bash frame="none" touch /object-storage/s3fs-test-file ``` Then look for `s3fs-test-file` in the bucket from **Object Storage** in MyAccount, or with another client such as `s3cmd` or `mc`. Files you copy into `/object-storage` now appear as objects in the bucket, and objects already in the bucket appear as files in `/object-storage`. To unmount the bucket, for example before you change its keys, run `umount /object-storage`. For scripted transfers without a mounted folder, see [Connect with the mc client](/myaccount/object-storage/how-to/connect-with-the-mc-client/); it is the simpler tool.