

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Support des métadonnées POSIX pour les référentiels de données
<a name="posix-metadata-support"></a>

Amazon FSx for Lustre transfère automatiquement les métadonnées de l'interface du système d'exploitation portable (POSIX) pour les fichiers, les répertoires et les liens symboliques (liens symboliques) lors de l'importation et de l'exportation de données vers et depuis un référentiel de données lié sur Amazon S3. Lorsque vous exportez les modifications de votre système de fichiers vers son référentiel de données lié, FSx for Lustre exporte également les modifications de métadonnées POSIX sous forme de métadonnées d'objet S3. Cela signifie que si un autre système de fichiers FSx pour Lustre importe les mêmes fichiers depuis S3, les fichiers auront les mêmes métadonnées POSIX dans ce système de fichiers, y compris la propriété et les autorisations.

FSx for Lustre importe uniquement des objets S3 dotés de clés d'objet conformes à POSIX, comme les suivantes.

```
mydir/
mydir/myfile1
mydir/mysubdir/
mydir/mysubdir/myfile2.txt
```

FSx for Lustre stocke les répertoires et les liens symboliques sous forme d'objets distincts dans le référentiel de données lié sur S3. Pour les annuaires, FSx pour Lustre crée un objet S3 avec un nom de clé qui se termine par une barre oblique («/»), comme suit :
+ La clé de l'objet `mydir/` S3 correspond au répertoire FSx for Lustre`mydir/`.
+ La clé de l'objet `mydir/mysubdir/` S3 correspond au répertoire FSx for Lustre`mydir/mysubdir/`.

Pour les liens symboliques, FSx Lustre utilise le schéma Amazon S3 suivant :
+ **Clé d'objet S3** — Le chemin vers le lien, relatif au répertoire de montage FSx for Lustre
+ **Données de l'objet S3** — Le chemin cible de ce lien symbolique
+ **Métadonnées de l'objet S3** — Les métadonnées du lien symbolique

FSx for Lustre stocke les métadonnées POSIX, y compris la propriété, les autorisations et les horodatages des fichiers, des répertoires et des liens symboliques, dans des objets S3 comme suit :
+ `Content-Type`— L'en-tête de l'entité HTTP utilisé pour indiquer le type de média de la ressource pour les navigateurs Web.
+ `x-amz-meta-file-permissions`— Le type de fichier et les autorisations dans le format`<octal file type><octal permission mask>`, conformément `st_mode` à la [page de manuel de Linux stat (2)](https://man7.org/linux/man-pages/man2/lstat.2.html).
**Note**  
FSx for Lustre n'importe ni ne conserve `setuid` d'informations.
+ `x-amz-meta-file-owner`— L'ID utilisateur (UID) du propriétaire exprimé sous forme de nombre entier.
+ `x-amz-meta-file-group`— L'ID de groupe (GID) exprimé sous la forme d'un entier.
+ `x-amz-meta-file-atime`— La durée du dernier accès en nanosecondes depuis le début de l'ère Unix. Terminez la valeur temporelle par `ns` ; sinon, FSx Lustre interprète la valeur en millisecondes.
+ `x-amz-meta-file-mtime`— Le temps de dernière modification en nanosecondes depuis le début de l'ère Unix. Terminez la valeur temporelle par `ns` ; sinon, FSx car Lustre interprète la valeur en millisecondes.
+ `x-amz-meta-user-agent`— L'agent utilisateur, ignoré lors de l'importation FSx de Lustre. Lors de l'exportation, FSx for Lustre définit cette valeur sur`aws-fsx-lustre`.

Lorsque vous importez des objets depuis S3 auxquels aucune autorisation POSIX n'est associée, l'autorisation POSIX par défaut attribuée par Lustre à un fichier est. FSx `755` Cette autorisation autorise l'accès en lecture et en exécution à tous les utilisateurs et l'accès en écriture au propriétaire du fichier.

**Note**  
FSx for Lustre ne conserve aucune métadonnée personnalisée définie par l'utilisateur sur les objets S3.

# Liens physiques et exportation vers Amazon S3
<a name="hard-links"></a>

Si l'exportation automatique (avec des politiques NOUVELLES et MODIFIÉES) est activée sur un DRA de votre système de fichiers, chaque lien physique contenu dans le DRA est exporté vers Amazon S3 sous la forme d'un objet S3 distinct pour chaque lien physique. Si un fichier comportant plusieurs liens physiques est modifié dans le système de fichiers, toutes les copies de S3 sont mises à jour, quel que soit le lien physique utilisé lors de la modification du fichier.

Si des liens physiques sont exportés vers S3 à l'aide de tâches du référentiel de données (DRTs), chaque lien matériel contenu dans les chemins spécifiés pour le DRT est exporté vers S3 en tant qu'objet S3 distinct pour chaque lien dur. Si un fichier comportant plusieurs liens physiques est modifié dans le système de fichiers, chaque copie dans S3 est mise à jour au moment où le lien dur correspondant est exporté, quel que soit le lien dur utilisé lors de la modification du fichier.

**Important**  
Lorsqu'un nouveau système de fichiers FSx pour Lustre est lié à un compartiment S3 vers lequel des liens physiques ont été précédemment exportés par un autre système de fichiers FSx pour Lustre AWS DataSync, ou Amazon FSx File Gateway, les liens physiques sont ensuite importés sous forme de fichiers séparés dans le nouveau système de fichiers.

## Liens physiques et fichiers publiés
<a name="hard-links-released-files"></a>

Un fichier publié est un fichier dont les métadonnées sont présentes dans le système de fichiers, mais dont le contenu est uniquement stocké dans S3. Pour plus d'informations sur les fichiers publiés, consultez[Publication de fichiers](file-release.md).

**Important**  
L'utilisation de liens physiques dans un système de fichiers comportant des associations de référentiels de données (DRAs) est soumise aux restrictions suivantes :  
La suppression et la recréation d'un fichier publié contenant plusieurs liens physiques peuvent entraîner le remplacement du contenu de tous les liens physiques.
La suppression d'un fichier publié supprimera le contenu de tous les liens physiques situés en dehors d'une association de référentiel de données.
La création d'un lien physique vers un fichier publié dont l'objet S3 correspondant se trouve dans l'une des classes de stockage S3 Glacier Flexible Retrieval ou S3 Glacier Deep Archive ne créera pas de nouvel objet dans S3 pour le lien physique.

# Procédure pas à pas : associer des autorisations POSIX lors du téléchargement d'objets dans un compartiment Amazon S3
<a name="attach-s3-posix-permissions"></a>

La procédure suivante explique le processus de téléchargement d'objets dans Amazon S3 avec des autorisations POSIX. Cela vous permet d'importer les autorisations POSIX lorsque vous créez un système de FSx fichiers Amazon lié à ce compartiment S3.

**Pour télécharger des objets dotés d'autorisations POSIX sur Amazon S3**

1. À partir de votre ordinateur ou machine local, utilisez les exemples de commandes suivants pour créer un répertoire de test (`s3cptestdir`) et un fichier (`s3cptest.txt`) qui seront téléchargés dans le compartiment S3.

   ```
   $ mkdir s3cptestdir
   $ echo "S3cp metadata import test" >> s3cptestdir/s3cptest.txt
   $ ls -ld s3cptestdir/ s3cptestdir/s3cptest.txt
   drwxr-xr-x 3 500 500 96 Jan 8 11:29 s3cptestdir/
   -rw-r--r-- 1 500 500 26 Jan 8 11:29 s3cptestdir/s3cptest.txt
   ```

   Le fichier et le répertoire nouvellement créés ont un ID utilisateur (UID) et un ID de groupe (GID) du propriétaire du fichier (GID) de 500, ainsi que des autorisations, comme indiqué dans l'exemple précédent.

1. Appelez l'API Amazon S3 pour créer le répertoire `s3cptestdir` avec les autorisations de métadonnées. Vous devez spécifier le nom du répertoire avec une barre oblique ()`/`. Pour plus d'informations sur les métadonnées POSIX prises en charge, consultez[Support des métadonnées POSIX pour les référentiels de données](posix-metadata-support.md).

   `bucket_name`Remplacez-le par le nom réel de votre compartiment S3.

   ```
   $ aws s3api put-object --bucket bucket_name --key s3cptestdir/ --metadata '{"user-agent":"aws-fsx-lustre" , \
         "file-atime":"1595002920000000000ns" , "file-owner":"500" , "file-permissions":"0100664","file-group":"500" , \
         "file-mtime":"1595002920000000000ns"}'
   ```

1. Vérifiez que les autorisations POSIX sont associées aux métadonnées de l'objet S3.

   ```
   $ aws s3api head-object --bucket bucket_name --key s3cptestdir/
   {
       "AcceptRanges": "bytes",
       "LastModified": "Fri, 08 Jan 2021 17:32:27 GMT",
       "ContentLength": 0,
       "ETag": "\"d41d8cd98f00b204e9800998ecf8427e\"",
       "VersionId": "bAlhCoWq7aIEjc3R6Myc6UOb8sHHtJkR",
       "ContentType": "binary/octet-stream",
       "Metadata": {
           "user-agent": "aws-fsx-lustre",
           "file-atime": "1595002920000000000ns",
           "file-owner": "500",
           "file-permissions": "0100664",
           "file-group": "500",
           "file-mtime": "1595002920000000000ns"
       }
   }
   ```

1. Téléchargez le fichier de test (créé à l'étape 1) depuis votre ordinateur vers le compartiment S3 avec les autorisations de métadonnées.

   ```
   $ aws s3 cp s3cptestdir/s3cptest.txt s3://bucket_name/s3cptestdir/s3cptest.txt \
         --metadata '{"user-agent":"aws-fsx-lustre" , "file-atime":"1595002920000000000ns" , \
         "file-owner":"500" , "file-permissions":"0100664","file-group":"500" , "file-mtime":"1595002920000000000ns"}'
   ```

1. Vérifiez que les autorisations POSIX sont associées aux métadonnées de l'objet S3.

   ```
   $ aws s3api head-object --bucket bucket_name --key s3cptestdir/s3cptest.txt
   {
       "AcceptRanges": "bytes",
       "LastModified": "Fri, 08 Jan 2021 17:33:35 GMT",
       "ContentLength": 26,
       "ETag": "\"eb33f7e1f44a14a8e2f9475ae3fc45d3\"",
       "VersionId": "w9ztRoEhB832m8NC3a_JTlTyIx7Uzql6",
       "ContentType": "text/plain",
       "Metadata": {
           "user-agent": "aws-fsx-lustre",
           "file-atime": "1595002920000000000ns",
           "file-owner": "500",
           "file-permissions": "0100664",
           "file-group": "500",
           "file-mtime": "1595002920000000000ns"
       }
   }
   ```

1. Vérifiez les autorisations sur le système de FSx fichiers Amazon lié au compartiment S3.

   ```
   $ sudo lfs df -h /fsx
   UUID                       bytes        Used   Available Use% Mounted on
   3rnxfbmv-MDT0000_UUID       34.4G        6.1M       34.4G   0% /fsx[MDT:0]
   3rnxfbmv-OST0000_UUID        1.1T        4.5M        1.1T   0% /fsx[OST:0]
    
   filesystem_summary:         1.1T        4.5M        1.1T   0% /fsx
    
   $ cd /fsx/s3cptestdir/
   $ ls -ld s3cptestdir/
   drw-rw-r-- 2 500 500 25600 Jan  8 17:33 s3cptestdir/
   
   $ ls -ld s3cptestdir/s3cptest.txt
   -rw-rw-r-- 1 500 500 26 Jan 8 17:33 s3cptestdir/s3cptest.txt
   ```

Le `s3cptestdir` répertoire et le `s3cptest.txt` fichier ont tous deux des autorisations POSIX importées.