iCommands#

Installing iCommands#

If you are comfortable using a Linux shell, it makes sense to install and configure the icommand tools from iRods.

Note

Be sure to have performed the steps in Accessing iRODS before following this procedure!

Note

All actions described here are one time actions!

Installation on yum/dnf based systems#

If you are on a Redhat/CentOS system, use these commands to install iRods:

sudo rpm --import https://packages.irods.org/irods-signing-key.asc
wget -qO - https://packages.irods.org/renci-irods.yum.repo | sudo tee /etc/yum.repos.d/renci-irods.yum.repo

sudo yum -y install irods-runtime-4.3.4 irods-icommands-4.3.4

# Prevent automatic upgrades of these two packages
sudo yum versionlock irods-runtime irods-icommands 

Installation on apt based systems#

sudo mkdir -p /etc/apt/keyrings
wget -qO - https://packages.irods.org/irods-signing-key.asc | \
    sudo gpg \
        --no-options \
        --no-default-keyring \
        --no-auto-check-trustdb \
        --homedir /dev/null \
        --no-keyring \
        --import-options import-export \
        --output /etc/apt/keyrings/renci-irods-archive-keyring.pgp \
        --import
echo "deb [signed-by=/etc/apt/keyrings/renci-irods-archive-keyring.pgp arch=amd64] https://packages.irods.org/apt/ $(lsb_release -sc) main" | \
     sudo tee /etc/apt/sources.list.d/renci-irods.list

sudo apt-get update
sudo apt -y install irods-runtime=4.3.4
sudo apt -y install irods-icommands=4.3.4

sudo apt-mark hold irods-icommands

Setup connection data#

Execute the following to setup your connection:

mkdir ~/.irods
cat <<EOD > ~/.irods/irods_environment.json
{
    "irods_authentication_scheme": "pam_password",
    "irods_client_server_negotiation": "request_server_negotiation",
    "irods_client_server_policy": "CS_NEG_REQUIRE",
    "irods_default_hash_scheme": "SHA256",
    "irods_encryption_algorithm": "AES-256-CBC",
    "irods_encryption_key_size": 32,
    "irods_encryption_num_hash_rounds": 16,
    "irods_encryption_salt_size": 8,
    "irods_host": "irods.tudelft.nl",
    "irods_port": 1247,
    "irods_ssl_verify_server": "hostname",
    "irods_zone_name": "tud"
}
EOD

Now run the command

iinit

Use your SRAM-id as username and your application token as password. You are now logged in. You can verify this by typing

iuserinfo

This should return with some information on your account.

Important

Note that your connection will time out after a number of hours. Re-run the iinit command to authenticate and resume your work!

Usage information#

Visit https://docs.irods.org/4.3.4/icommands/user/ for an overview of available i-commands.