SweStore/iRODS icommand

From SNIC Documentation
Revision as of 06:06, 15 September 2019 by Dejan Vitlacil (C3SE) (talk | contribs)
Jump to: navigation, search

NOTA: THIS PAGE IS OUT OF DATE! IT WILL BE SOON DELETED.

For accessing the Swestore National Storage, we use, since Nov 2013, iRODS. And more specifically the iRODS client called "icommands", which is a set of commands similar to the unix commands "ls", "cd", "imkdir" etc, but with an "i" in front, plus two FTP-like commands: "iput" and "iget".

The iRODS icommands client is loaded through the module system.

1. Log in to SNIC cluster
2. Execute:
   module load irods 
   iinit

Now, your starting point is either your Swestore home directory or one of your projects. If you run "ils", you will then see a listing of files and folders in that directory, something like this:

[samuel@kalkyl4 ~]$ ils
 /ssUppnexZone/proj/b2011221:
   C- /ssUppnexZone/proj/b2011221/firstRun


Navigate around To enter one of the (or the only) folder(s), do:

icd [proj-id]

... in this case:

icd firstrun

To switch to another project, use

icd ..

to back up a level. After that, you can change to another project or folder using icd as previously

icd b2011222

Upload files To upload the above mentioned folder, do (-r is needed to recurse into directories):

iput -r [a local folder]

For single files, the -r flag is not needed:

iput [a local file]

To list the newly uploaded file/directory:

ils

To create folders, do:

imkdir [folder-name]

If you want to verify the upload outside of iRODS, there's a utility called ssverify.sh that will let you do that.

Downloading files To download a file again, do:

iget [a file in iRODS]

... or, for folders, do it recursively:

iget -r [a folder in iRODS]

File removal To remove a file, you'll like need to use -f to irm in order to bypass the use of a trash area, which is currently not supported at Uppmax.

More hints You can have iput show the progress with the -P flag If you want to be placed in a particular directory when you load the irods module, you can create a file called

$HOME/.irods/.irodsEnv

containing

irodsHome '/ssUppnexZone/proj/myproj'
irodsCwd '/ssUppnexZone/proj/myproj'

where

myproj

is replaced by your project id. Read more info about the respective i-commands with "[command] -h"