Installing iRODS FUSE on Ubuntu - UPPMAX/irods GitHub Wiki
(This guide only for Ubuntu. Copied from Uni of Helsinki)
iRODS FUSE can be used to make iRODS appear as a regular directory on a Linux system. This document describes the installation on a Ubuntu based system.
- Install libfuse-dev and prepare the fuse library and header files in one location
root@biotek973:/usr/local# apt-get install libfuse-dev
root@biotek973:/usr/local# mkdir /usr/local/fuse
root@biotek973:/usr/local# mkdir /usr/local/fuse/lib
root@biotek973:/usr/local# ln -s /lib/libfuse.so.2 /usr/local/fuse/lib/libfuse.so
root@biotek973:/usr/local# ln -s /usr/include/fuse /usr/local/fuse/include
root@biotek973:/usr/local# chmod go+x fuse/
root@biotek973:/usr/local# chmod go+x fuse/include/
root@biotek973:/usr/local# chmod go+x fuse/lib/
root@biotek973:/usr/local# chmod -R go+r fuse/
- Edit config/config.mk
Uncomment:
# IRODS_FS = 1
Set fuse location prepared above:
fuseHomeDir=/usr/local/fuse
- Compile and give access to executable
cd clients/fuse
make
chmod go+rx bin/irodsFs
- Use
hajaalin@biotek973:~$ ils
/LMUISA_b1/home/hajaalin:
KNIME.zip
ZOTERO.zip
C- /LMUISA_b1/home/hajaalin/Data
C- /LMUISA_b1/home/hajaalin/MATLAB
C- /LMUISA_b1/home/hajaalin/Thunderbird
hajaalin@biotek973:~$
hajaalin@biotek973:~$ mkdir iRODS_fmount
hajaalin@biotek973:~$ /opt/iRODS/iRODS_2.5/clients/fuse/bin/irodsFs iRODS_fmount
hajaalin@biotek973:~$
hajaalin@biotek973:~$ ls -l iRODS_fmount/
total 262364
drwxrwx--- 2 hajaalin 1028227 4096 2011-03-31 17:27 Data
-rw-rw---- 1 hajaalin 1028227 139071524 2011-03-31 17:45 KNIME.zip
drwxrwx--- 2 hajaalin 1028227 4096 2011-03-31 17:39 MATLAB
drwxrwx--- 2 hajaalin 1028227 4096 2011-04-01 14:07 Thunderbird
-rw-rw---- 1 hajaalin 1028227 129588037 2011-03-31 17:58 ZOTERO.zip
hajaalin@biotek973:~$
- Mounting other than 'home' collection.
In the LMU use case it is useful to grant the staff access to the user's files, so that the staff can help with image processing. The access to the files is granted with the ichmod command, but to mount the collection via iRODS FUSE, an alternative .irodsEnv file must be created for the staff members. For example:
jdopie_biotek973@biotek973:~$ ipwd
/LMUISA_b1/home/jdopie
jdopie_biotek973@biotek973:~$ iput j1.txt
jdopie_biotek973@biotek973:~$ ichmod read hajaalin j1.txt
jdopie_biotek973@biotek973:~$
hajaalin@biotek973:~$ cat .irods/.irodsEnv-lmuisa_b1-default
# iRODS server host name:
irodsHost 'biotek973.biocenter.helsinki.fi'
# iRODS server port number:
irodsPort 1247
# Default storage resource name:
irodsDefResource 'biotek973_1'
# Home directory in iRODS:
irodsHome '/LMUISA_b1/home/hajaalin'
# Current directory in iRODS:
irodsCwd '/LMUISA_b1/home/hajaalin'
# Account name:
irodsUserName 'hajaalin'
# Zone:
irodsZone 'LMUISA_b1'
hajaalin@biotek973:~$ cat .irods/.irodsEnv-lmuisa_b1-cwd_jdopie
# iRODS server host name:
irodsHost 'biotek973.biocenter.helsinki.fi'
# iRODS server port number:
irodsPort 1247
# Default storage resource name:
irodsDefResource 'biotek973_1'
# Home directory in iRODS:
irodsHome '/LMUISA_b1/home/jdopie'
# Current directory in iRODS:
irodsCwd '/LMUISA_b1/home/jdopie'
# Account name:
irodsUserName 'hajaalin'
# Zone:
irodsZone 'LMUISA_b1'
hajaalin@biotek973:~$ cp .irodsEnv-lmuisa_b1-cwd_jdopie .irodsEnv
hajaalin@biotek973:~$ mkdir iRODS_jdopie
hajaalin@biotek973:~$ iinit
hajaalin@biotek973:~$ ils
/LMUISA_b1/home/jdopie:
j1.txt
hajaalin@biotek973:~$ /opt/iRODS/iRODS_2.5/clients/fuse/bin/irodsFs iRODS_jdopie
hajaalin@biotek973:~$ ls iRODS_jdopie/
j1.txt