3.3.2 AFS file system

3.3.2.1 Overview of the AFS file system

The AFS distributed file system provides users a local environment to easily share and access data files.

The computing platform provides personal AFS space for each user to edit files, read and write data. In addition, AFS also offers large public disk space and software disk space for user jobs to access softwares and ensure the proper operation of jobs in the cluster.

3.3.2.2 Overview of user volumes

The AFS system currently has over 1500 user volumes, with which users can read and write data files as well as share data. Users will by default enter their home directories after successfully logging in. Each user has 500MB personal space in the afs home directory.

Path: /afs/ihep.ac.cn/users/a-z/username

Overview of software volumes

The AFS system currently has 13 software volumes, providing software environment for different experiments. Detailed volume information is shown in Table 2.

Path Volume Space(KB) Use
/afs/ihep.ac.cn/bes3/gpupwa bes3.gpupwa 2048000 Provide software libraries for GPU
/afs/ihep.ac.cn/bes3/offline offline.bes3 150000000 Provide offline data for bes3 experiment
/afs/ihep.ac.cn/bes3/offline/Boss offline.boss 150000000 Provide offline data for boss experiment
/afs/ihep.ac.cn/bes3/offline/CalibConst offline.calibconst 50000000 Provide offline data for calibconst experiment
/afs/ihep.ac.cn/bes3/offline/ExternalLib offline.externallib 102400000 Providing external libraries for bes3 experiment
/afs/ihep.ac.cn/soft/CMS soft.cms 5000000 Provide software environment for cms experiment
/afs/ihep.ac.cn/soft/CSNS soft.csns 10000000 Provide software environment for csns experiment
/afs/ihep.ac.cn/soft/dayabay soft.dayabay 250000000 Provide software environment for dayabay experiment
/afs/ihep.ac.cn/soft/EXO soft.EXO 10000000 Provide software environment for EXO experiment
/afs/ihep.ac.cn/soft/HXMT soft.hxmt 35000000 Provide software environment for hxmt experiment
/afs/ihep.ac.cn/soft/LHAASO soft.lhaaso 50000000 Provide software environment for lhasso experiment
/afs/ihep.ac.cn/soft/NANO soft.nano 2000000 Provide software environment for nano experiment
/afs/ihep.ac.cn/soft/YBJ soft.YBJ 10000000 Provide software environment for YBJ experiment

Table2 overview of AFS software volumes

Overview of the public volume

The AFS system currently has one public volume, providing public software storage for users. Detailed information is show in Table 3

Path Volume Space(KB) Use
/afs/ihep.ac.cn/soft/common soft.common 200000000 Common scripts and software of the system group

Table 3 Overview of the public volume

3.3.2.3 AFS system commands

In addition to the basic operations on files and directories, AFS file system has some unique commands. Unlike the ordinary commands for file and directory permission setting, AFS uses its own specialized commands.

  1. set access permission of a directory

    Command format is as follows:

    fs setacl -dir directory –acl user/group rl/all/none
    

    an example:

    $ fs setacl –dir /afs/ihep.ac.cn/users/h/huangql/mydir –acl huqb all
    $ fs setacl –dir /afs/ihep.ac.cn/users/h/huangql/mydir –acl system:anyuser  none
    
  2. list access permission of a directory Command format is as follows:

    fs listacl -path directory
    

    an example:

    $ fs listacl –path /afs/ihep.ac.cn/users/h/huangql/mydir
    
  3. list quota of a directory

    Command format is as follows:

    fs listquota [-path <dir/file path>+] [-help]
    

    an example:

    $ fs listquota /afs/ihep.ac.cn/users/h/huangql/mydir
    
  4. check the usage of user directory

    Command format is as follows:

    fs quota [-path <dir/file path>+] [-help]
    

    an example:

    $ fs quota /afs/ihep.ac.cn/users/h/huangql
    
  5. Obtain user authorization

    When a user has no authorization to access a file on his own directory, he needs to use this command to get authorization.

    $ kinit username
    Password:
    $ aklog -d
    

3.3.2.4 How to set up SSH public key authentication:

  1. Creatie ssh key at local compute

    $ ssh-keygen  # create ssh key
    
    $ ls ~/.ssh/  # list ssh key
    
  2. Copy .pub file to server node,create ~/.ssh directory,echo .pub file content into authorized_keys,set the acl of these directories as follow:

    $ mkdir ~/.ssh  
    $ echo public_key_string >> ~/.ssh/authorized_keys
    $ fs listacl -path ~/.ssh   #list access permission of ~/.ssh directory
    $ fs setacl -path ~/.ssh system:anyuser l #set the ~/.ssh directory to allow other users to list, and other users under the list permission cannot read the file content
    $ mkdir ~/public # create public directory
    $ fs setacl -path ~/public system:anyuser rl #set the ~/publich directory to allow other users to list and read
    $ mv ~/.ssh/authorized_keys ~/public/ #move the authorized_keys file to the public directory
    $ mv ~/.ssh/known_hosts ~/public/   ##move the known_hosts file to the public directory 
    $ ln -s ~/public/authorized_keys ~/.ssh/authorized_keys #create a soft connection to the public directory
    $ ln -s ~/public/known_hosts ~/.ssh/known_hosts #create a soft connection to the public directory
    

results matching ""

    No results matching ""