Scratch purging policy/fr: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
No edit summary
(Updating to match new version of source page)
Line 14: Line 14:


Prenez note que le fait de copier un fichier ou d'utiliser la commande  <tt>rsync</tt> pour le déplacer modifie <tt>atime</tt> et fait que le fichier ne sera pas considéré lors de la purge. Une fois les données déplacées, veuillez supprimer les fichiers et répertoires d'origine plutôt que d'attendre qu'ils soient supprimés par la procédure de purge.
Prenez note que le fait de copier un fichier ou d'utiliser la commande  <tt>rsync</tt> pour le déplacer modifie <tt>atime</tt> et fait que le fichier ne sera pas considéré lors de la purge. Une fois les données déplacées, veuillez supprimer les fichiers et répertoires d'origine plutôt que d'attendre qu'ils soient supprimés par la procédure de purge.
=How/where to check which files are slated for purging=
* On cedar, beluga and  graham clusters go to the '''/scratch/to_delete/''' path  and look for a file with your name.
* On niagara go to '''/scratch/t/to_delete/''' (link to /scratch/t/todelete/current)
</pre>
The file will contain a list of filenames with full path, possibly other information about atime, ctime, size, etc. It will be updated only on the 1st and the 12th of each month. If a file with your name is there it means you have candidates slated for purging, otherwise there is nothing to worry about that month.
If you access/read/move/delete some of the candidates between the 1st and the 11th, there won't be any changes in the assessment until the 12th.
If there was an assessment file up until the 11th, but no longer on the 12th, it's because you don't have anything to be purged anymore.
If you access/read/move/delete some of the candidates after the 12th, then you have to check yourself to confirm your files won't be purged on the 15th (see below)


= Connaître l'âge d'un fichier =
= Connaître l'âge d'un fichier =

Revision as of 15:53, 25 May 2021

Other languages:

Page enfant de Storage and file management


Sur les grappes de Calcul Canada, le système de fichiers scratch sert au stockage rapide et temporaire des données utilisées en cours d'exécution. Pour leur part, les données qui doivent être stockées à long terme et les données de référence sont enregistrées dans l'espace /project ou dans une des zones d'archivage. Pour toujours garder suffisamment d'espace scratch, les fichiers sont supprimés périodiquement aux 60 jours, en fonction de leur âge; cette période correspond à un peu plus du double de la durée maximale d'une tâche.

Procédure

À la fin de chaque mois, les fichiers susceptibles d'être supprimés le 15 du mois suivant sont repérés. Au premier jour du mois, un message d'avertissement est affiché aux utilisateurs qui possèdent au moins un de ces fichiers et un avis leur est envoyé par courriel; cet avis contient aussi une liste de tous les fichiers susceptibles d'être supprimés. Vous avez donc deux semaines pour copier les fichiers que vous voulez conserver.

Le 12 du mois, un dernier avis est envoyé avec une liste à jour des fichiers susceptibles d'être supprimés le 15, ce qui vous laisse 72 heures pour déplacer vos fichiers. Le 15 du mois en fin de journée, tous les fichiers dans l'espace scratch pour lesquels ctime et atime sont de plus de 60 jours sont supprimés. Ces fichiers ne doivent pas se trouver dans l'espace scratch et Calcul Canada émet cet avertissement uniquement à titre de courtoisie.

Prenez note que le fait de copier un fichier ou d'utiliser la commande rsync pour le déplacer modifie atime et fait que le fichier ne sera pas considéré lors de la purge. Une fois les données déplacées, veuillez supprimer les fichiers et répertoires d'origine plutôt que d'attendre qu'ils soient supprimés par la procédure de purge.

How/where to check which files are slated for purging

  • On cedar, beluga and graham clusters go to the /scratch/to_delete/ path and look for a file with your name.
  • On niagara go to /scratch/t/to_delete/ (link to /scratch/t/todelete/current)

The file will contain a list of filenames with full path, possibly other information about atime, ctime, size, etc. It will be updated only on the 1st and the 12th of each month. If a file with your name is there it means you have candidates slated for purging, otherwise there is nothing to worry about that month.

If you access/read/move/delete some of the candidates between the 1st and the 11th, there won't be any changes in the assessment until the 12th.

If there was an assessment file up until the 11th, but no longer on the 12th, it's because you don't have anything to be purged anymore.

If you access/read/move/delete some of the candidates after the 12th, then you have to check yourself to confirm your files won't be purged on the 15th (see below)

Connaître l'âge d'un fichier

L'âge d'un fichier est déterminé par :

  • atime, le moment du dernier accès et
  • ctime, le moment de la dernière modification.

Pour trouver ctime utilisez

Question.png
[name@server ~]$ ls -lc <filename>

Pour trouver atime utilisez

Question.png
[name@server ~]$ ls -lu <filename>

Le paramètre (mtime) n'est pas utilisé parce que sa valeur peut être modifiée par l'utilisateur ou par un autre programme pour afficher une fausse information.

Il serait suffisant de n'utiliser que atime étant donné que sa valeur est mise à jour par le système en synchronisation avec ctime. Par contre, les programmes à l'intérieur de l'espace d'un utilisateur peuvent potentiellement modifier atime pour situer sa valeur dans le passé. Le fait d'utiliser aussi ctime ajoute un deuxième niveau de contrôle.

Mauvaises pratiques

Il demeure cependant possible de fausser l'âge des fichiers avec l'exécution périodique de la commande récursive touch. Notre équipe technique dispose toutefois de moyens pour détecter ce genre de pratique et les utilisateurs qui s'y prêtent seront priés de retirer les fichiers trafiqués de l'espace scratch.

Copier un dossier avec des symlinks de manière sécuritaire

Dans la plupart des cas, cp ou rsync seront suffisants pour copier des données de scratch vers votre projet. Mais si vous avez des liens symboliques (symlink) dans scratch, les copier causera problème car ils continueront de pointer vers scratch. Pour éviter cela, vous pouvez utiliser tar pour faire une archive de vos fichiers sur scratch, et ensuite l'extraire dans votre projet. Vous pouvez le faire d'un seul coup:

cd /scratch/.../vos_donnees
mkdir project/.../vos_donnees
tar cf - ./* | (cd /project/.../vos_donnees && tar xf -)