Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
rdms:access:linux:lwpfuse [2023/05/01 16:37]
giulio [Setup of irodsfs]
rdms:access:linux:lwpfuse [2024/04/25 16:15] (current)
jelte added ref to lowercase
Line 1: Line 1:
-====== iRDOS Fuse lite (irodsfs) ======+====== iRODS Fuse lite (irodsfs) ======
 ===== General Information ===== ===== General Information =====
 +
 +While you can access your RDMS collections by connecting to the RDMS remotely when using ''iCommands'', you can also create a space on your machine where you can access the RDMS directly as if it were part of your local directory hierarchy. This action of making a remote directory available on your local system is called "mounting" in technical terms.
  
 Linux users are able to mount iRODS collections and data objects (i.e. the iRODS version of directories and files) in their local directory hierarchy by using ''irodsfs'', a FUSE implementation of the iRODS client that you can download here: https://github.com/cyverse/irodsfs.  Linux users are able to mount iRODS collections and data objects (i.e. the iRODS version of directories and files) in their local directory hierarchy by using ''irodsfs'', a FUSE implementation of the iRODS client that you can download here: https://github.com/cyverse/irodsfs. 
Line 22: Line 24:
 </code> </code>
  
-Be sure that you substituted ''vX.X.X'' with the current version, and also change ''amd64'' to the correct parameters for the CPU that you are using.+Be sure that you substitute ''vX.X.X'' with the current version, and also change ''amd64'' to the correct parameters for the CPU that you are using.
  
-Alternatively, the following command can be used to check for the newest version and download the ''.tar.gz'' to the current working directory:+Alternatively, you can use the following command to check for the newest version of ''irodsfs'' and download the ''.tar.gz'' to the current working directory:
  
 <code> <code>
Line 36: Line 38:
 </code> </code>
  
-The extracted ''irodsfs'' binary can be run from every location when the path is specified, but can also added to the user'''$PATH'' environment variable to make it available globally. In this tutorial, we will not put our binary in a location contained in the ''$PATH'' environment variable.+You can directly run the extracted ''irodsfs'' binary from every location, provided you specify the path to it in your terminal command. You can also add the path to the binary to your ''$PATH'' environment variable to make it available globally, without having to specify its location every time you call the command. In this tutorial, we will assume that you did NOT add the path to the binary to the ''$PATH'' environment variable.
  
-3. Create a configuration file for the use with ''irodsfs'':+3. Create a configuration file for ''irodsfs'':
  
 <code> <code>
Line 44: Line 46:
 </code> </code>
  
-Open the created ''config.yaml'' file and paste the following content in it and save the file:+Open the created ''config.yaml'' file and paste the following content in it, then save the file (take notes below into account):
  
 <code> <code>
-host: rdms-prod-icat.data.rug.nl+host: store.data.rug.nl
 port: 1247 port: 1247
 proxy_user: <username>@rug.nl proxy_user: <username>@rug.nl
Line 55: Line 57:
  
 auth_scheme: "pam"  auth_scheme: "pam" 
-ssl_ca_cert_file: "/etc/ssl/certs/ca-bundle.crt"+ssl_ca_cert_file: "/etc/ssl/certs/ca-certificates.crt"
 ssl_encryption_key_size: 32 ssl_encryption_key_size: 32
 ssl_encryption_algorithm: "AES-256-CBC" ssl_encryption_algorithm: "AES-256-CBC"
Line 66: Line 68:
     resource_type: dir     resource_type: dir
 </code> </code>
-**Attention!** +**Notes:** 
-In  ''irodsfs'' versions prior to v0.8.3the configuration file used ''autscheme'' instead of ''auth_scheme''. Please keep this in mind when using the above example configuration file! +  In  ''irodsfs'' versions prior to v0.8.3 the configuration file used ''autscheme'' instead of ''auth_scheme''. Please check the version of ''irodsfs'' you are using and keep this in mind when using configuration file in the example above!  
 +  * Depending on your Linux distribution (e.g. CentOS), you might need to adjust ''/etc/ssl/certs/ca-certificates.crt'' to ''/etc/ssl/certs/ca-bundle.crt'' or equivalent.  
 +  * Keep in mind that your UG mail addressed needs to be specified in lowercase!
  
-Alsp, please take care that the correct username is specified in the configuration file.+Another important aspect is that you take care to verify that the correct username is specified in the configuration file. To access the RDMS, you need to input your RUG email as your username.
  
  
-You also need to create an empty mount point in your Linux system. This can be done with:+Before you can mount the RDMS location onto your system, you also need to create an empty mount point in your Linux environment. This can be done with:
  
 <code> <code>
Line 78: Line 82:
 </code> </code>
  
-which will create an empty directory ''irods_mount/'' in the user'home directory which will be used as mount point in the last step.+which will create the empty folder ''irods_mount/'' in your home directorywhich will then be used as the mount point for ''irodsfs''.
  
 ===== Mounting and unmounting iRODS collections with irodsfs ===== ===== Mounting and unmounting iRODS collections with irodsfs =====
  
-To mount your RDMS/iRODS collection to your local file system, run:+Now that the set-up of ''irodsfs'' is complete and working, you can mount your RDMS/iRODS collection to your local file system by running:
  
 <code> <code>
-~/irodsfs --config ~/.irods/config.yaml ~/irods_mount/+PATH-TO-IRODSFS-LOCATION/irodsfs --config ~/.irods/config.yaml ~/irods_mount/
 </code> </code>
  
-You will be prompted for your password, and if no error messages are shown, you can now access your personal iRODS directory is mounted at ''~/irods_mount/''+You will be prompted for your password, and if no error messages are shown, you can now access your personal RDMS directory mounted at ''~/irods_mount/'' or wherever you chose to mount the RDMS location in the previous command.
  
-If you want to use the version that is preinstalled on the LWP, you do not need to specify the absolute path to ''irodsfs'', the command to mount the drive therefore becomes+If you are using the version of ''irodsfs'' that is preinstalled on the LWP or if you specified the location of the ''irodsfs'' binary in your ''$PATH'' environment variable, you do not need to provide the absolute path to ''irodsfs'' in your command. The syntax to mount the drive therefore becomes:
  
 <code> <code>
Line 96: Line 100:
 </code> </code>
  
-To unmount previously mounted collection, in this example ''~/irods_mount/'', the following command can be used:+Once you are done and wish to unmount the previously mounted collection, in this example ''~/irods_mount/'', you can use the following command:
  
 <code> <code>
Line 104: Line 108:
 ===== Additional tips ===== ===== Additional tips =====
  
-''irodsfs'' also allows to map multiple RDMS collections to the mount point. This behavior can be adjusted by changing the `path_mapping` in the ''config.yaml'' file that contains the ''irodsfs'' configuration.+You can also map multiple RDMS collections to your chosen mount point using ''irodsfs''To do so you have to adjust the `path_mapping` variable in the ''config.yaml'' file that contains the ''irodsfs'' configuration.
  
-The following configuration will mount the users personal **RDMS Home Drive** at ''~/irods_mountpoint/RDMS_Home'', but also a **RDMS Team Drive** at ''~/irods_mountpoint/RDMS_Team''.+The example below shows the configuration needed to mount your personal **RDMS Home Drive** at ''~/irods_mountpoint/RDMS_Home'', along with a **RDMS Team Drive** that you belong to at ''~/irods_mountpoint/RDMS_Team''.
  
 <code> <code>
-host: rdms-prod-icat.data.rug.nl+host: store.data.rug.nl
 port: 1247 port: 1247
 proxy_user: <username>@rug.nl proxy_user: <username>@rug.nl
Line 117: Line 121:
  
 authscheme: "pam"  authscheme: "pam" 
-ssl_ca_cert_file: "/etc/ssl/certs/ca-bundle.crt"+ssl_ca_cert_file: "/etc/ssl/certs/ca-certificates.crt"
 sslencryption_key_size: 32 sslencryption_key_size: 32
 ssl_encryption_algorithm: "AES-256-CBC" ssl_encryption_algorithm: "AES-256-CBC"
Line 133: Line 137:
 </code> </code>
  
-It is also possible to use ''irodsfs'' inside the **Peregrine HPC cluster**. Just connect via ''ssh'' and follow the manual as if working on your local Linux machine. +While it is possible to provide your password directly in the ''config.yaml'' file as shown abovewe strongly advise against doing so for security reasons
- +
-It is also possible to provide the user password directly in the ''config.yaml'' file, but it is not recommended to do so. +
  
-''irodsfs'' can be also installed and used in the **Windows Subsystem for Linux (WSL)**.+You can also install and use ''irodsfs'' on other environments besides your own personal Linux machine. For example you can follow the guide above to install ''irodsfs'' on a **Windows Subsystem for Linux (WSL)** instance. In the same way you can install and use ''irodsfs'' on the **Hábrók HPC cluster**. Just connect via ''ssh'' to the cluster and follow the manual above as if working on your local Linux machine.