PBS

Le service PBS (Permanent Backed-Up Storage) est un système de fichiers partagé qui héberge :

  • les répertoires personnels des utilisateurs,

    • variable d’environnement : $HOME
    • quota par défaut : 20 GiB
  • les répertoires THRONG des expériences,

    • variable d’environnement : $THRONG_DIR
    • quota par défaut : 100 GiB
  • les logiciels communs installés par le CC-IN2P3.

Le service PBS assure une sauvegarde quotidienne de toutes ces données. Ces espaces de stockage sont accessibles aux utilisateurs connectés aux serveurs interactifs et aux jobs exécutés sur des serveurs de calcul.

Les utilisateurs peuvent demander une extension des quotas PBS si nécessaire. Pour ce faire, veuillez contacter le support utilisateurs.

Politique de sauvegarde

Deux sauvegardes sur disque (snapshots) sont exécutées tous les jours sur les zones de stockage HOME et THRONG.

Les snapshots sont effectués deux fois par jour (à midi et à minuit) et sont conservés pendant trois mois. Ils se situent dans les répertoires $HOME/.snapshot et $THRONG_DIR/.snapshot et ils sont triés par date. Avec les snapshots, les utilisateurs peuvent facilement récupérer des fichiers ou leurs anciennes versions. Les snapshosts sont en lecture seule.

Note

Veuillez noter que le répertoire .snapshot est masqué et ne peut pas être affiché avec ls -la.

Vous pouvez utiliser la variable d’environnement HOME_BACKUP qui pointe vers /pbs/home/<l>/<login>/.snapshot.

Gestion des ACL

Principe des ACL de PBS

Le service PBS fournit une liste de contrôle d’accès (ACL) à la fois Unix standard et NFS-v4. Pour les utilisateurs avancés, les ACL peuvent être gérées directement à l’aide des commandes nfs4_getfacl et nfs4_setfacl.

Pour une gestion plus simple des ACL, les utilisateurs sont invités à utiliser le script fs4 :

% fs4 help
fs4: Commands are:
acl             help on access control list
domain          list workstation's domain
flush           flush file from cache
listacl         list access control list
listquota       list volume quota
recsetacl       recursively set access control list
setacl          set access control list
version         show version

Les différents types de permissions supportées par ce script sont disponibles avec l’option acl :

% fs4 acl
# Basic perms
a - administer, change the entries on the ACL
r - read-data (files) / list-directory (directories)
w - write-data (files) / create-file (directories)
x - execute (files) / change-directory (directories)

# Shortcuts
admin - shortcut for rwxa
read  - shortcut for rx
write - shortcut for rwx
none  - shortcut for removing all perms

Lister une ACL

L’ACL relative à un fichier ou répertoire peut etre obtenue par la commande :

% fs4 help listacl
fs4 listacl: list access control list
aliases: la
Usage: fs4 listacl [path] [-help]

Exemple pour le répertoire HOME se l’utilisateur foo qui appartient au groupe babar :

% fs4 listacl $HOME
Access list for /pbs/home/f/foo is
Normal rights:
foo     rwxa
babar   rx

Modifier une ACL

Pour modifier une ACL, exécutez la commande setacl :

% fs4 help setacl
fs4 setacl: set access control list
aliases: sa
Usage: fs4 setacl <path> <grantee> <perms> [-help]
Where:     path       file or directory
           grantee    user, group or the keywords owner, group or everyone
           perms      shortcut or a combination of "r", "w", "x", "a"
Shortcuts: "admin" (rwxa), "write" (rwx), "read" (rx), "none"

Pour modifier une ACL récursivement, exécutez la commande recsetacl :

% fs4 help recsetacl
fs4 recsetacl: recursively set access control list
aliases: rsa
Usage: fs4 recsetacl <path> <grantee> <perms> [-help]
Where:     path       file or directory
           grantee    user, group or the keywords owner, group or everyone
           perms      shortcut or a combination of "r", "w", "x", "a"
Shortcuts: "admin" (rwxa), "write" (rwx), "read" (rx), "none"

Exemple

Considérant un utilisateur foo ayant un répertoire mydir dans le THRONG_DIR de son groupe babar, avec la liste de contrôle d’accès suivante :

% fs4 listacl mydir/
Access list for mydir/ is
Normal rights:
  foo      rwxa
  babar    r-x-
  everyone r-x-

Si l’on veut restreindre l’accès à ce répertoire uniquement aux membres du groupe babar :

% fs4 setacl mydir everyone none
% fs4 listacl mydir/
Access list for mydir/ is
Normal rights:
  foo      rwxa
  babar    r-x-

Si l’on veut maintenant donner un accès en écriture à l’utilisateur bar :

% fs4 setacl mydir bar write
% fs4 listacl mydir/
Access list for mydir/ is
Normal rights:
  bar      rwx-
  foo      rwxa
  babar    r-x-