Demonstração: anexar permissões POSIX ao fazer upload de objetos em um bucket do Amazon S3 - FSx para Lustre

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Demonstração: anexar permissões POSIX ao fazer upload de objetos em um bucket do Amazon S3

O procedimento a seguir explica o processo de upload de objetos no Amazon S3 com permissões POSIX. Isso permite importar as permissões POSIX ao criar um sistema de FSx arquivos da Amazon vinculado a esse bucket do S3.

Para fazer upload de objetos com permissões POSIX para o Amazon S3
  1. Em seu computador ou máquina local, use os comandos de exemplo a seguir para criar um diretório de teste (s3cptestdir) e um arquivo (s3cptest.txt) que serão carregados via upload no bucket do 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

    O arquivo e o diretório recém-criados têm um ID de usuário (UID) proprietário e um ID de grupo (GID) 500, bem como permissões, conforme mostrado no exemplo anterior.

  2. Chame a API do Amazon S3 para criar o diretório s3cptestdir com permissões de metadados. Você deve especificar o nome do diretório com uma barra final (/). Para obter informações sobre os metadados POSIX com suporte, consulte Suporte a metadados POSIX para repositórios de dados.

    Substitua bucket_name pelo nome do bucket do 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"}'
  3. Verifique se as permissões POSIX estão marcadas com tag nos metadados de objeto do 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" } }
  4. Faça upload do arquivo de teste (criado na etapa 1) do seu computador para o bucket do S3 com permissões de metadados.

    $ 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"}'
  5. Verifique se as permissões POSIX estão marcadas com tag nos metadados de objeto do 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" } }
  6. Verifique as permissões no sistema de FSx arquivos da Amazon vinculado ao bucket do 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

O diretório s3cptestdir e o arquivo s3cptest.txt têm permissões POSIX importadas.