

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 안내: Amazon S3 버킷으로 객체를 업로드할 때 POSIX 권한 연결
<a name="attach-s3-posix-permissions"></a>

다음 절차는 POSIX 권한을 사용하여 Amazon S3에 객체를 업로드하는 과정을 안내합니다. 이렇게 하면 해당 S3 버킷에 연결된 Amazon FSx 파일 시스템을 생성할 때 POSIX 권한을 가져올 수 있습니다.

**POSIX 권한을 가진 객체를 Amazon S3에 업로드**

1. 로컬 컴퓨터 또는 시스템에서 다음 예제 명령을 사용하여 S3 버킷에 업로드할 테스트 디렉터리(`s3cptestdir`) 및 파일(`s3cptest.txt`)을 생성합니다.

   ```
   $ 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
   ```

   새로 만든 파일 및 디렉터리의 파일 소유자 사용자 ID(UID)와 그룹 ID(GID)는 500이고 권한은 이전 예와 같습니다.

1. Amazon S3 API를 호출하여 메타데이터 권한이 있는 디렉터리 `s3cptestdir`을 생성합니다. 디렉터리 이름은 뒤에 슬래시(`/`)를 사용하여 지정해야 합니다. 지원되는 POSIX 메타데이터에 대한 자세한 내용은 [데이터 리포지토리에 대한 POSIX 메타데이터 지원](posix-metadata-support.md) 섹션을 참조하세요.

   `{{bucket_name}}`을 실제 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. POSIX 권한이 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. 컴퓨터에서 메타데이터 권한을 사용하여 S3 버킷으로 테스트 파일(1단계에서 생성)을 업로드합니다.

   ```
   $ 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. POSIX 권한이 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. S3 버킷에 연결된 Amazon FSx 파일 시스템에 대한 권한을 확인합니다.

   ```
   $ 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
   ```

`s3cptestdir` 디렉터리와 `s3cptest.txt` 파일 모두 POSIX 권한을 가져왔습니다.