This is a quick tutorial for EOS.
EOS is a software solution that aims to provide fast and reliable multi-PB disk-only storage technology for both LHC and non-LHC use-cases at CERN. The core of the implementation is the XRootD framework which provides feature-rich remote access protocol. The storage system is running on commodity hardware with disks in JBOD configuration. It is written mostly in C/C++, with some of the extra modules in Python. Files can be accessed via native XRootD protocol, a POSIX-like FUSE client or HTTP(S) & WebDav protocol.
export EOS_MGM_URL=root://eos<experiment>.cern.ch
export EOS_MGM_URL=root://eosuser.cern.ch
kinit <cern_username>@CERN.CH
eos mkdir /eos/lhcb/user/b/bla/blabla
eos ls /eos/lhcb/user/b/bla/blabla
eos root://eoslhcb.cern.ch ls -l /eos/lhcb/user/b/bla/blabla
eos help
.
On our cluster all of the EOS instances are also mounted with fuse, so they look like normal file systems to you and you can use standard linux commands. There is no need to use the eos
commands anymore. The mounted file systems are:
/eos/cms/
/eos/lhcb/
/eos/user/
To access these file systems, you need to have a CERN Kerberos ticket as for the EOS commands, but in addition you need to pass the ticket to the fuse system with the command eosfusebind
, similar to the aklog
command for AFS. You need therefore to execute the following commands:
kinit <cern_username>@CERN.CH ; eosfusebind
EOS commands and Linux commands in the EOS file system are not very resource efficient. If you need to transfer large amount of data, use the xrdcp
command:
xrdcp root://eoslhcb.cern.ch//eos/lhcb/user/b/bla/eos_tutorial/eos.txt eos.txt
xrdcp eos.txt root://eoslhcb.cern.ch//eos/lhcb/user/b/bla/eos_tutorial/eos.txt eos.txt