Using FUSE to Mount the CyVerse Data Store
FUSE is useful for viewing and navigating directories and directory contents, and provides the ability to mount a storage device in a UNIX/Linux environment as a directory. The CyVerse Data Store has a FUSE client that allows you to mount a Data Store directory to a local directory. Most Atmosphere images use FUSE.
Steps for using the Data Store FUSE client for RHEL/CentOS systems are available below; however, other Linux and Mac distributions will have similar steps.
Step 1: Install FUSE and the Data Store FUSE client
The steps for installing the new optimized FUSE client, available below, depend on whether you use FUSE with Atmosphere. You may continue to use a previous installation, although you may need to upgrade, depending on the version that is installed on your system:
- If using version < 3, upgrade is required (Mac OS and Solaris: upgrade to 3.2 required).
- If using version 3.0 to 4.1.8, upgrade is recommended. Â
If using Atmosphere
Since all Atmosphere images come with FUSE installed, go to Setting Up iCommands, then return here to complete your setup. Installing the FUSE client is not required for Atmosphere FUSE users.
If not Atmosphere, install the FUSE client
Installation via Package Manager
The irods-icommands package provides the FUSE client. If you have the ability to install packages, please go to package installation of iCommands. Then return here to complete your setup.
Installation for Unprivileged Users
Installing the FUSE client as an unprivileged user is a two part process. First the iCommands need to be installed through an installer. Please go to unprivileged installation of iCommands. Then return here to complete the installation.
Next, the FUSE client needs to be installed. Choose one of the following installer packages (note that these have not been fully tested):
alternate installers for performance enhanced FUSE client
We greatly improved the performance of the 4.1.9 version of the FUSE client. It even out performs version 4.1.10. If you plan to heavily use the FUSE client and have version 4.1.9 of the iCommands installed using one of our custom installers found in the unprivileged installation of iCommands section, we recommend using the performance enhanced 4.1.9 version of the FUSE client. Here are the installer packages. (Not that these have not been fully tested.)
Â
The installation process is the same as for iCommands installers.
Step 2: Configure your Data Store environment and log in
If you have not already done so, configure your iCommands settings.
Step 3: Select where to mount your home directory
You can mount your Data Store home directory anywhere your account has access on your local system. For convenience, it is recommended that you mount your Data Store home directory to an easily accessible location, such as $HOME/data_home, or something similar:
mkdir "$HOME"/data_home
Note: If you select a different directory to mount your Data Store directory, be sure that your user has ownership of that directory.
Step 3a (OPTIONAL): Select the Data Store directory to mount
Only for Advanced Users
This step is for advanced users; most users should skip this step.
To choose the Data Store directory to mount onto your system,
icd
into the directory before proceeding to Step 4.
Step 4: Mount the Data Store directory
Mount the directory for all system users:
irodsFs -oallow_other "$HOME"/data_home
alternate performance enhanced FUSE command
If you are using the recommended, performance enhanced, 4.1.9 version of the FUSE client, the version provided in Atmosphere VMs, the following form of the command may be used instead.
irodsFs -oallow_other -oconnreuse -ometadatacachetimeout 3600 -opreloadblocks 5 "$HOME"/data_home
A typo in an irodsFs options may result in irodsFs reporting an error about "Segmentation fault (core dumped)". If you receive this error, you should check your options carefully.
If you get the error, "fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf
", use the following command and reenter the irodsFs
command:
sudo sh -c 'echo user_allow_other >> /etc/fuse.conf'
Step 5: Unmount the directory when finished
To unmount the directory when you are done, use the following command:
fusermount -u "$HOME"/data_home