

# Amazon EC2 AMI 도구 참조
<a name="ami-tools-commands"></a>

AMI 도구 명령을 사용하여 Amazon S3 지원 Linux AMI를 생성하고 관리할 수 있습니다. 도구를 설정하려면 [Amazon EC2 AMI 도구 설정](set-up-ami-tools.md)을 참조하세요.

액세스 키에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM 사용자를 위한 액세스 키 관리](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html)를 참조하세요.

**Topics**
+ [ec2-ami-tools-version](#ami-tools-version)
+ [ec2-bundle-image](#ami-bundle-image)
+ [ec2-bundle-vol](#ami-bundle-vol)
+ [ec2-delete-bundle](#ami-delete-bundle)
+ [ec2-download-bundle](#ami-download-bundle)
+ [ec2-migrate-manifest](#ami-migrate-manifest)
+ [ec2-unbundle](#ami-unbundle)
+ [ec2-upload-bundle](#ami-upload-bundle)
+ [AMI 도구의 일반 옵션](#common-args-ami)

## ec2-ami-tools-version
<a name="ami-tools-version"></a>

### 설명
<a name="ami-tools-version-description"></a>

AMI 도구 버전을 설명합니다.

### 구문
<a name="ami-tools-version-request"></a>

**ec2-ami-tools-version**

### 출력
<a name="ami-tools-version-output"></a>

버전 정보입니다.

### 예시
<a name="ami-tools-version-response"></a>

이 예시 명령은 사용 중인 AMI 도구의 버전 정보를 표시합니다.

```
[ec2-user ~]$ ec2-ami-tools-version
1.5.2 20071010
```

## ec2-bundle-image
<a name="ami-bundle-image"></a>

### 설명
<a name="bundle-image-description"></a>

루프백 파일에서 생성한 운영 체제 이미지로부터 Amazon S3 지원 Linux AMI를 생성합니다.

### 구문
<a name="bundle-image-request"></a>

****ec2-bundle-image** -c *path* -k *path* -u *account* -i *path* [-d *path*] [--ec2cert *path*] [-r *architecture*] [--productcodes *code1*,*code2*,...] [-B *mapping*] [-p *prefix*]** 

### 옵션
<a name="bundle-image-parameters"></a>

`-c, --cert` *path*  
사용자의 PEM 인코딩된 RSA 퍼블릭 키 인증서 파일입니다.  
Required: Yes

`-k, --privatekey` *path*  
PEM 인코딩된 RSA 키 파일의 경로입니다. 이 번들이 번들링되지 않아 안전한 장소에 보관되도록 이 키를 지정해야 합니다. 키를 AWS 계정에 등록할 필요는 없습니다.  
Required: Yes

`-u, --user ` *계정*  
사용자의 AWS 계정 ID(대시 없이)입니다.  
Required: Yes

`-i, --image` *path*  
번들링할 이미지에 대한 경로입니다.  
Required: Yes

`-d, --destination` *path*  
번들을 생성할 디렉터리입니다.  
기본값: `/tmp`  
Required: No

`--ec2cert` *path*  
이미지 매니페스트를 암호화하는 데 사용되는 Amazon EC2 X.509 퍼블릭 키 인증서의 경로입니다.  
`us-gov-west-1` 및 `cn-north-1` 리전은 기본값이 아닌 퍼블릭 키 인증서를 사용하며, 해당 인증서의 경로는 이 옵션으로 지정해야 합니다. 인증서 경로는 AMI 도구의 설치 방법에 따라 다릅니다. Amazon Linux의 경우, 인증서가 `/opt/aws/amitools/ec2/etc/ec2/amitools/`에 있습니다. [Amazon EC2 AMI 도구 설정](set-up-ami-tools.md)의 RPM 또는 ZIP 파일에서 AMI 도구를 설치한 경우 `$EC2_AMITOOL_HOME/etc/ec2/amitools/`에 인증서가 있습니다.  
필수: `us-gov-west-1` 및 `cn-north-1` 리전에만 해당됩니다.

`-r, --arch` *아키텍처*  
이미지 아키텍처. 명령줄에 아키텍처를 제공하지 않으면 번들링 시작 시 해당 메시지가 표시됩니다.  
유효한 값: `i386` \$1 `x86_64`  
Required: No

`--productcodes` *code1,code2,...*  
등록 시 이미지에 연결할 제품 코드로, 쉼표로 구분됩니다.  
Required: No

`-B, --block-device-mapping` *매핑*  
이 AMI의 인스턴스에 블록 디바이스를 표시할 방법을 정의합니다(인스턴스 유형이 지정된 디바이스를 지원하는 경우).  
쉼표로 구분된 키-값 페어 목록을 지정합니다. 여기서 각 키는 가상 이름이며 각 값은 해당 디바이스 이름입니다. 가상 이름에는 다음이 포함됩니다.  
+ `ami` - 인스턴스별로 표시되는 루트 파일 시스템 디바이스
+ `root` - 커널별로 표시되는 루트 파일 시스템 디바이스
+ `swap` - 인스턴스별로 표시되는 교체 디바이스
+ `ephemeralN` - N번째 인스턴스 스토어 볼륨
Required: No

`-p, --prefix` *prefix*  
번들링된 AMI 파일의 파일 이름 접두사입니다.  
기본값: 이미지 파일의 이름입니다. 예를 들어, 이미지 경로가 `/var/spool/my-image/version-2/debian.img`이면, 기본 접두사는 `debian.img`입니다.  
Required: No

`--kernel` *kernel\$1id*  
사용되지 않음. [register-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html)를 사용하여 커널을 설정합니다.  
Required: No

`--ramdisk` *ramdisk\$1id*  
사용되지 않음. [register-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html)를 사용하여 RAM 디스크를 설정합니다(필요한 경우).  
필수 여부: 아니요

### 출력
<a name="bundle-image-output"></a>

번들링 프로세스의 단계 및 상태를 설명하는 상태 메시지입니다.

### 예시
<a name="bundle-image-response"></a>

이 예시에서는 루프백 파일에서 생성한 운영 체제 이미지로부터 번들링된 AMI를 생성합니다.

```
[ec2-user ~]$ ec2-bundle-image -k pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem -c cert-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem -u 111122223333 -i image.img -d bundled/ -r x86_64
Please specify a value for arch [i386]: 
Bundling image file...
Splitting bundled/image.gz.crypt...
Created image.part.00
Created image.part.01
Created image.part.02
Created image.part.03
Created image.part.04
Created image.part.05
Created image.part.06
Created image.part.07
Created image.part.08
Created image.part.09
Created image.part.10
Created image.part.11
Created image.part.12
Created image.part.13
Created image.part.14
Generating digests for each part...
Digests generated.
Creating bundle manifest...
ec2-bundle-image complete.
```

## ec2-bundle-vol
<a name="ami-bundle-vol"></a>

### 설명
<a name="bundle-vol-description"></a>

인스턴스의 루트 볼륨 복사본을 압축, 암호화 및 서명하여 Amazon S3 지원 Linux AMI를 생성합니다.

인스턴스로부터 제품 코드, 커널 설정, RAM 디스크 설정 및 블록 디바이스 매핑을 상속하려는 Amazon EC2 시도입니다.

기본적으로 번들 프로세스에는 중요 정보를 포함할 수 있는 파일이 제외됩니다. 값에는 `*.sw`, `*.swo`, `*.swp`, `*.pem`, `*.priv`, `*id_rsa*`, `*id_dsa*` `*.gpg`, `*.jks`, `*/.ssh/authorized_keys` 및 `*/.bash_history`가 포함됩니다. 이러한 파일을 모든 포함하려면 `--no-filter` 옵션을 사용합니다. 이러한 파일 중 일부만 포함하려면 `--include` 옵션을 사용합니다.

자세한 내용은 [Amazon S3 지원 AMI 생성](creating-an-ami-instance-store.md) 섹션을 참조하세요.

### 구문
<a name="bundle-vol-request"></a>

****ec2-bundle-vol** -c *path* -k *path* -u *account* [-d *path*] [--ec2cert *path*] [-r *architecture*] [--productcodes *code1*,*code2*,...] [-B *mapping*] [--all] [-e *directory1*,*directory2*,...] [-i *file1*,*file2*,...] [--no-filter] [-p *prefix*] [-s *size*] [--[no-]inherit] [-v *volume*] [-P *type*] [-S *script*] [--fstab *path*] [--generate-fstab] [--grub-config *path*]** 

### 옵션
<a name="bundle-vol-parameters"></a>

`-c, --cert` *path*  
사용자의 PEM 인코딩된 RSA 퍼블릭 키 인증서 파일입니다.  
Required: Yes

`-k, --privatekey ` *path*   
사용자의 PEM 인코딩된 RSA 키 파일의 경로입니다.  
Required: Yes

`-u, --user` *계정*  
사용자의 AWS 계정 ID(대시 없이)입니다.  
Required: Yes

`-d, --destination` *destination*  
번들을 생성할 디렉터리입니다.  
기본값: `/tmp`  
Required: No

`--ec2cert` *path*  
이미지 매니페스트를 암호화하는 데 사용되는 Amazon EC2 X.509 퍼블릭 키 인증서의 경로입니다.  
`us-gov-west-1` 및 `cn-north-1` 리전은 기본값이 아닌 퍼블릭 키 인증서를 사용하며, 해당 인증서의 경로는 이 옵션으로 지정해야 합니다. 인증서 경로는 AMI 도구의 설치 방법에 따라 다릅니다. Amazon Linux의 경우, 인증서가 `/opt/aws/amitools/ec2/etc/ec2/amitools/`에 있습니다. [Amazon EC2 AMI 도구 설정](set-up-ami-tools.md)의 RPM 또는 ZIP 파일에서 AMI 도구를 설치한 경우 `$EC2_AMITOOL_HOME/etc/ec2/amitools/`에 인증서가 있습니다.  
필수: `us-gov-west-1` 및 `cn-north-1` 리전에만 해당됩니다.

`-r, --arch ` *아키텍처*  
이미지 아키텍처입니다. 명령줄에 이를 제공하지 않으면 번들링 시작 시 이를 제공하라는 메시지가 표시됩니다.  
유효한 값: `i386` \$1 `x86_64`  
Required: No

`--productcodes` *code1,code2,...*  
등록 시 이미지에 연결할 제품 코드로, 쉼표로 구분됩니다.  
Required: No

`-B, --block-device-mapping` *매핑*  
이 AMI의 인스턴스에 블록 디바이스를 표시할 방법을 정의합니다(인스턴스 유형이 지정된 디바이스를 지원하는 경우).  
쉼표로 구분된 키-값 페어 목록을 지정합니다. 여기서 각 키는 가상 이름이며 각 값은 해당 디바이스 이름입니다. 가상 이름에는 다음이 포함됩니다.  
+ `ami` - 인스턴스별로 표시되는 루트 파일 시스템 디바이스
+ `root` - 커널별로 표시되는 루트 파일 시스템 디바이스
+ `swap` - 인스턴스별로 표시되는 교체 디바이스
+ `ephemeralN` - N번째 인스턴스 스토어 볼륨
Required: No

`-a, --all`  
원격으로 마운트된 파일 시스템의 디렉터리를 포함하여 모든 디렉터리를 번들링합니다.  
Required: No

`-e, --exclude ` *directory1,directory2,...*  
번들 작업에서 제외할 절대 디렉터리 경로 및 파일 목록입니다. 이 파라미터는 `--all` 옵션보다 우선합니다. exclude가 지정되면 파라미터와 함께 나열된 디렉터리 및 하위 디렉터리는 볼륨에 번들링되지 않습니다.  
Required: No

`-i, --include ` *file1,file2,...*  
번들 작업에 포함할 파일 목록입니다. 지정된 파일은 중요한 정보를 포함할 수 있으므로 AMI에서 제외되지 않습니다.  
Required: No

`--no-filter`  
지정한 경우 지정한 파일이 중요한 정보를 포함할 수 있으므로 AMI에서 파일을 제외하지 않습니다.  
Required: No

`-p, --prefix ` *prefix*  
번들링된 AMI 파일의 파일 이름 접두사입니다.  
기본값: `image`  
Required: No

`-s, --size` *size*  
생성할 이미지 파일의 크기(MB, 1024 \$1 1024바이트)입니다. 최대 크기는 10240MB입니다.  
기본값: 10240  
Required: No

`--[no-]inherit`  
이미지가 인스턴스의 메타데이터를 상속해야 하는지 여부를 나타냅니다(기본값은 상속). `--inherit`를 활성화했지만 인스턴스 메타데이터에 액세스할 수 없으면 번들링이 실패합니다.  
Required: No

`-v, --volume ` *볼륨*  
번들을 생성해 올 마운트된 볼륨의 절대 경로입니다.  
기본값: 루트디렉터리입니다(/).  
Required: No

`-P, --partition` *type*  
디스크 이미지에서 파티션 테이블을 사용해야 하는지 여부를 나타냅니다. 파티션 테이블 유형을 지정하지 않으면, 볼륨의 상위 블록 디바이스에서 사용한 유형이 기본값이 됩니다. 이를 적용할 수 없으면 `gpt`가 기본값이 됩니다.  
유효한 값: `mbr` \$1 `gpt` \$1 `none`  
Required: No

`-S, --script` *스크립트*  
번들링 작업 직전에 실행할 사용자 정의 스크립트입니다. 스크립트에서 하나의 인수(볼륨의 마운트 지점)를 예상해야 합니다.  
Required: No

`--fstab` *path*  
이미지에 번들링할 fstab 경로입니다. 지정하지 않으면 Amazon EC2가 /etc/fstab을 번들링합니다.  
Required: No

`--generate-fstab`  
Amazon EC2-제공 fstab을 사용하여 볼륨을 번들링합니다.  
Required: No

`--grub-config`  
이미지에 번들링할 대체 grub 구성 파일 경로입니다. 기본적으로 `ec2-bundle-vol`은 복제된 이미지에 `/boot/grub/menu.lst` 또는 `/boot/grub/grub.conf`가 있을 것으로 예상합니다. 이 옵션을 사용하면 대체 grub 구성 파일에 대한 경로를 지정할 수 있습니다. 이 경로는 기본값(있는 경우)을 덮어씁니다.  
Required: No

`--kernel` *kernel\$1id*  
사용되지 않음. [register-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html)를 사용하여 커널을 설정합니다.  
Required: No

`--ramdisk`*ramdisk\$1id*  
사용되지 않음. [register-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html)를 사용하여 RAM 디스크를 설정합니다(필요한 경우).  
필수 여부: 아니요

### 출력
<a name="bundle-vol-output"></a>

번들링 단계 및 상태를 설명하는 상태 메시지입니다.

### 예시
<a name="bundle-vol-response"></a>

이 예시에서는 로컬 시스템의 루트 파일 시스템의 스냅샷을 압축, 암호화 및 서명하여 번들링된 AMI를 생성합니다.

```
[ec2-user ~]$ ec2-bundle-vol -d /mnt -k pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem -c cert-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem -u 111122223333 -r x86_64
  Copying / into the image file /mnt/image...
  Excluding:
       sys
       dev/shm
       proc
       dev/pts
       proc/sys/fs/binfmt_misc
       dev
       media
       mnt
       proc
       sys
       tmp/image
       mnt/img-mnt
  1+0 records in
  1+0 records out
  mke2fs 1.38 (30-Jun-2005)
  warning: 256 blocks unused.

  Splitting /mnt/image.gz.crypt...
  Created image.part.00
  Created image.part.01
  Created image.part.02
  Created image.part.03
  ...
  Created image.part.22
  Created image.part.23
  Generating digests for each part...
  Digests generated.
  Creating bundle manifest...
  Bundle Volume complete.
```

## ec2-delete-bundle
<a name="ami-delete-bundle"></a>

### 설명
<a name="delete-bundle-description"></a>

Amazon S3 스토리지에서 지정된 번들을 삭제합니다. 번들을 삭제한 다음에는 해당 AMI에서 인스턴스를 시작할 수 있습니다.

### 구문
<a name="delete-bundle-request"></a>

****ec2-delete-bundle** -b *bucket* -a *access\$1key\$1id* -s *secret\$1access\$1key* [-t *token*] [--url *url*] [--region *region*] [--sigv *version*] [-m *path*] [-p *prefix*] [--clear] [--retry] [-y]** 

### 옵션
<a name="delete-bundle-parameters"></a>

`-b, --bucket `*bucket*  
번들링된 AMI를 포함하는 Amazon S3 버킷 이름으로, '/'-delimited 경로 접두사가 붙기도 합니다(옵션).  
Required: Yes

`-a, --access-key` *access\$1key\$1id*  
AWS 액세스 키 ID입니다.  
Required: Yes

`-s, --secret-key` *secret\$1access\$1key*  
AWS 보안 액세스 키입니다.  
Required: Yes

`-t, --delegation-token` *token*  
AWS 요청에 함께 전달되는 위임 토큰입니다. 자세한 내용은 *IAM 사용 설명서*의 [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)을 참조하세요.  
필수 항목 여부: 임시 보안 자격 증명을 사용하는 경우에만.  
기본값: `AWS_DELEGATION_TOKEN` 환경 변수 값(설정된 경우).

`--region`*region*  
요청 서명에서 사용하는 리전입니다.  
기본값: `us-east-1`  
필수: 서명 버전 4를 사용하는 경우 필수입니다.

`--sigv`*version*  
요청 서명 시 사용하는 서명 버전입니다.  
유효한 값: `2` \$1 `4`  
기본값: `4`  
Required: No

`-m, --manifest`*경로*  
매니페스트 파일 경로입니다.  
필수: `--prefix` 또는 `--manifest`를 지정해야 합니다.

`-p, --prefix` *prefix*  
번들링된 AMI 파일 이름 접두사입니다. 전체 접두사를 제공합니다. 예를 들어 접두사가 image.img인 경우, `-p image.img`를 사용해야 합니다(`-p image` 아님).  
필수: `--prefix` 또는 `--manifest`를 지정해야 합니다.

`--clear`  
지정된 번들을 삭제한 후 비어 있으면 Amazon S3 버킷을 삭제합니다.  
Required: No

`--retry`  
모든 Amazon S3 오류에서 작업당 최대 5회 자동으로 재시도합니다.  
Required: No

`-y, --yes`  
모든 질문 메시지에 대한 답은 자동적으로 예라고 가정합니다.  
필수 여부: 아니요

### 출력
<a name="delete-bundle-output"></a>

Amazon EC2에서 삭제 프로세스의 단계 및 상황을 나타내는 상태 메시지를 표시합니다.

### 예시
<a name="delete-bundle-response"></a>

이 예시에서는 Amazon S3에서 번들을 삭제합니다.

```
[ec2-user ~]$ ec2-delete-bundle -b amzn-s3-demo-bucket -a your_access_key_id -s your_secret_access_key
Deleting files:
amzn-s3-demo-bucket/image.manifest.xml
amzn-s3-demo-bucket/image.part.00
amzn-s3-demo-bucket/image.part.01
amzn-s3-demo-bucket/image.part.02
amzn-s3-demo-bucket/image.part.03
amzn-s3-demo-bucket/image.part.04
amzn-s3-demo-bucket/image.part.05
amzn-s3-demo-bucket/image.part.06
Continue? [y/n]
y
Deleted amzn-s3-demo-bucket/image.manifest.xml
Deleted amzn-s3-demo-bucket/image.part.00
Deleted amzn-s3-demo-bucket/image.part.01
Deleted amzn-s3-demo-bucket/image.part.02
Deleted amzn-s3-demo-bucket/image.part.03
Deleted amzn-s3-demo-bucket/image.part.04
Deleted amzn-s3-demo-bucket/image.part.05
Deleted amzn-s3-demo-bucket/image.part.06
ec2-delete-bundle complete.
```

## ec2-download-bundle
<a name="ami-download-bundle"></a>

### 설명
<a name="download-bundle-description"></a>

지정된 Amazon S3 지원 Linux AMI를 Amazon S3 스토리지에서 다운로드합니다.

### 구문
<a name="download-bundle-request"></a>

****ec2-download-bundle** -b *bucket* -a *access\$1key\$1id* -s *secret\$1access\$1key* -k *path* [--url *url*] [--region *region*] [--sigv *version*] [-m *file*] [-p *prefix*] [-d *directory*] [--retry]** 

### 옵션
<a name="download-bundle-parameters"></a>

`-b, --bucket` *bucket*  
번들이 있는 Amazon S3 버킷 이름으로, '/'-delimited 경로 접두사가 붙기도 합니다(옵션).  
Required: Yes

`-a, --access-key` *access\$1key\$1id*  
AWS 액세스 키 ID입니다.  
Required: Yes

`-s, --secret-key` *secret\$1access\$1key*  
AWS 보안 액세스 키입니다.  
Required: Yes

`-k, --privatekey` *path*  
매니페스트를 해독하는 데 사용되는 프라이빗 키입니다.  
Required: Yes

`--url` *url*  
Amazon S3 서비스 URL입니다.  
기본값: `https://s3.amazonaws.com/`  
Required: No

`--region` *region*  
요청 서명에서 사용하는 리전입니다.  
기본값: `us-east-1`  
필수: 서명 버전 4를 사용하는 경우 필수입니다.

`--sigv` *version*  
요청 서명 시 사용하는 서명 버전입니다.  
유효한 값: `2` \$1 `4`  
기본값: `4`  
Required: No

`-m, --manifest` *file*  
매니페스트 파일 이름입니다(경로 제외). 매니페스트(`-m`) 또는 접두사(`-p`) 중 하나를 지정하는 것이 좋습니다.  
Required: No

`-p, --prefix ` *prefix*  
번들링된 AMI 파일의 파일 이름 접두사입니다.  
기본값: `image`  
Required: No

`-d, --directory ` *directory*  
다운로드된 번들이 저장되는 디렉터리입니다. 존재하는 디렉터리여야 합니다.  
기본값: 현재 작업 디렉터리입니다.  
Required: No

 `--retry`   
모든 Amazon S3 오류에서 작업당 최대 5회 자동으로 재시도합니다.  
필수 여부: 아니요

### 출력
<a name="download-bundle-output"></a>

다운로드 프로세스의 다양한 단계를 나타내는 상태 메시지가 표시됩니다.

### 예시
<a name="download-bundle-response"></a>

이 예시는 `bundled` 디렉터리(Linux **mkdir** 명령 사용)를 생성하고 `amzn-s3-demo-bucket` Amazon S3 버킷에서 번들을 다운로드합니다.

```
[ec2-user ~]$ mkdir bundled
[ec2-user ~]$ ec2-download-bundle -b amzn-s3-demo-bucket/bundles/bundle_name -m image.manifest.xml -a your_access_key_id -s your_secret_access_key -k pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem -d mybundle
Downloading manifest image.manifest.xml from amzn-s3-demo-bucket to mybundle/image.manifest.xml ...
Downloading part image.part.00 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.00 ...
Downloaded image.part.00 from amzn-s3-demo-bucket
Downloading part image.part.01 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.01 ...
Downloaded image.part.01 from amzn-s3-demo-bucket
Downloading part image.part.02 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.02 ...
Downloaded image.part.02 from amzn-s3-demo-bucket
Downloading part image.part.03 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.03 ...
Downloaded image.part.03 from amzn-s3-demo-bucket
Downloading part image.part.04 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.04 ...
Downloaded image.part.04 from amzn-s3-demo-bucket
Downloading part image.part.05 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.05 ...
Downloaded image.part.05 from amzn-s3-demo-bucket
Downloading part image.part.06 from amzn-s3-demo-bucket/bundles/bundle_name to mybundle/image.part.06 ...
Downloaded image.part.06 from amzn-s3-demo-bucket
```

## ec2-migrate-manifest
<a name="ami-migrate-manifest"></a>

### 설명
<a name="migrate-manifest-description"></a>

Amazon S3 지원 Linux AMI(예: 해당 인증서, 커널, RAM 디스크)가 다른 리전을 지원하도록 수정합니다.

### 구문
<a name="migrate-manifest-request"></a>

****ec2-migrate-manifest** -c *path* -k *path* -m *path* \$1(-a *access\$1key\$1id* -s *secret\$1access\$1key* --region *region*) \$1 (--no-mapping)\$1 [--ec2cert *ec2\$1cert\$1path*] [--kernel *kernel-id*] [--ramdisk *ramdisk\$1id*]** 

### 옵션
<a name="migrate-manifest-parameters"></a>

`-c, --cert` *path*  
사용자의 PEM 인코딩된 RSA 퍼블릭 키 인증서 파일입니다.  
Required: Yes

`-k, --privatekey` *path*  
사용자의 PEM 인코딩된 RSA 키 파일의 경로입니다.  
Required: Yes

`--manifest` *path*  
매니페스트 파일 경로입니다.  
Required: Yes

`-a, --access-key` *access\$1key\$1id*  
AWS 액세스 키 ID입니다.  
필수: 자동 매핑 사용 시 필수입니다.

`-s, --secret-key ` *secret\$1access\$1key*  
AWS 보안 액세스 키입니다.  
필수: 자동 매핑 사용 시 필수입니다.

`--region` *region*  
매핑 파일에서 조회하는 리전입니다.  
필수: 자동 매핑 사용 시 필수입니다.

`--no-mapping`  
커널 및 RAM 디스크의 자동 매핑을 비활성화합니다.  
 마이그레이션 동안 Amazon EC2는 매니페스트 파일에 있는 커널 및 RAM 디스크를 대상 리전용으로 설계된 커널 및 RAM 디스크로 교체합니다. `--no-mapping` 파라미터를 지정하지 않으면, `ec2-migrate-bundle`에서 `DescribeRegions` 및 `DescribeImages` 작업을 사용하여 자동화된 매핑을 수행합니다.  
필수: 자동 매핑에 사용되는 `-a`, `-s` 및 `--region` 옵션을 제공하지 않는 경우 필수입니다.

`--ec2cert` *path*  
이미지 매니페스트를 암호화하는 데 사용되는 Amazon EC2 X.509 퍼블릭 키 인증서의 경로입니다.  
`us-gov-west-1` 및 `cn-north-1` 리전은 기본값이 아닌 퍼블릭 키 인증서를 사용하며, 해당 인증서의 경로는 이 옵션으로 지정해야 합니다. 인증서 경로는 AMI 도구의 설치 방법에 따라 다릅니다. Amazon Linux의 경우, 인증서가 `/opt/aws/amitools/ec2/etc/ec2/amitools/`에 있습니다. [Amazon EC2 AMI 도구 설정](set-up-ami-tools.md)의 ZIP 파일에서 AMI 도구를 설치한 경우, `$EC2_AMITOOL_HOME/etc/ec2/amitools/`에 인증서가 있습니다.  
필수: `us-gov-west-1` 및 `cn-north-1` 리전에만 해당됩니다.

`--kernel` *kernel\$1id*  
선택할 커널의 ID입니다.  
커널 및 RAM 디스크 대신 PV-GRUB를 사용하는 것이 좋습니다. 자세한 내용을 알아보려면 *Amazon EC2 사용 설명서*의 [사용자 제공 커널](https://docs.aws.amazon.com/linux/al2/ug/UserProvidedKernels.html)을 참조하세요.
필수 여부: 아니요

`--ramdisk` *ramdisk\$1id*  
선택할 RAM 디스크의 ID입니다.  
커널 및 RAM 디스크 대신 PV-GRUB를 사용하는 것이 좋습니다. 자세한 내용을 알아보려면 *Amazon EC2 사용 설명서*의 [사용자 제공 커널](https://docs.aws.amazon.com/linux/al2/ug/UserProvidedKernels.html)을 참조하세요.
필수 여부: 아니요

### 출력
<a name="migrate-manifest-output"></a>

번들링 프로세스의 단계 및 상태를 설명하는 상태 메시지입니다.

### 예시
<a name="migrate-manifest-response"></a>

이 예시는 `my-ami.manifest.xml` 매니페스트에 지정된 AMI;를 복사합니다.

```
[ec2-user ~]$ ec2-migrate-manifest --manifest my-ami.manifest.xml --cert cert-HKZYKTAIG2ECMXYIBH3HXV4ZBZQ55CLO.pem --privatekey pk-HKZYKTAIG2ECMXYIBH3HXV4ZBZQ55CLO.pem --region eu-west-1 

Backing up manifest...
Successfully migrated my-ami.manifest.xml It is now suitable for use in eu-west-1.
```

## ec2-unbundle
<a name="ami-unbundle"></a>

### 설명
<a name="unbundle-description"></a>

Amazon S3 지원 Linux AMI에서 번들을 다시 생성합니다.

### 구문
<a name="unbundle-request"></a>

****ec2-unbundle** -k *path* -m *path* [-s *source\$1directory*] [-d *destination\$1directory*]** 

### 옵션
<a name="unbundle-parameters"></a>

`-k, --privatekey` *path*  
PEM 인코딩된 RSA 키 파일의 경로입니다.  
Required: Yes

`-m, --manifest` *path*  
매니페스트 파일 경로입니다.  
Required: Yes

`-s, --source` *source\$1directory*  
번들이 포함된 디렉터리입니다.  
기본값: 현재 디렉터리입니다.  
Required: No

`-d, --destination` *destination\$1directory*  
AMI 번들을 해제해 넣을 디렉터리입니다. 대상 디렉터리가 있어야 합니다.  
기본값: 현재 디렉터리입니다.  
필수 여부: 아니요

### 예시
<a name="unbundle-response"></a>

이 Linux 및 UNIX 예시는 `image.manifest.xml` 파일에 지정된 AMI 번들을 해제합니다.

```
[ec2-user ~]$ mkdir unbundled
$ ec2-unbundle -m mybundle/image.manifest.xml -k pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem -s mybundle -d unbundled
$ ls -l unbundled
total 1025008
-rw-r--r-- 1 root root 1048578048 Aug 25 23:46 image.img
```

### 출력
<a name="unbundle-output"></a>

번들 해제 프로세스의 다양한 단계를 나타내는 상태 메시지가 표시됩니다.

## ec2-upload-bundle
<a name="ami-upload-bundle"></a>

### 설명
<a name="upload-bundle-description"></a>

Amazon S3 지원 Linux AMI 번들을 Amazon S3로 업로드하고 업로드된 객체에서 적절한 액세스 제어 목록(ACL)을 설정합니다. 자세한 내용은 [Amazon S3 지원 AMI 생성](creating-an-ami-instance-store.md) 섹션을 참조하세요.

**참고**  
Amazon S3 지원 Linux AMI의 S3 버킷에 객체를 업로드하려면 버킷에 대해 ACL을 사용하도록 설정해야 합니다. 그렇지 않으면 Amazon EC2는 업로드할 객체에 ACL을 설정할 수 없습니다. 대상 버킷에서 S3 객체 소유권에 대해 버킷 소유자 강제 설정을 사용하는 경우 ACL이 비활성화되어 있으므로 이 설정은 작동하지 않습니다. 자세한 내용은 [객체 소유권 제어 및 버킷에 대해 ACL 사용 중지](https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html)를 참조하십시오.

### 구문
<a name="upload-bundle-request"></a>

****ec2-upload-bundle** -b *bucket* -a *access\$1key\$1id* -s *secret\$1access\$1key* [-t *token*] -m *path* [--url *url*] [--region *region*] [--sigv *version*] [--acl *acl*] [-d *directory*] [--part *part*] [--retry] [--skipmanifest]** 

### 옵션
<a name="upload-bundle-parameters"></a>

`-b, --bucket` *bucket*  
번들 이름을 저장할 Amazon S3 버킷 이름으로, 선택 항목인 '/'-delimited 경로 접두사가 붙기도 합니다. 버킷이 없을 경우에는 생성됩니다(해당 버킷 이름을 사용할 수 있는 경우). 또한 버킷이 존재하지 않고 AMI 도구 버전이 1.5.18 이상인 경우 이 명령은 버킷에 대한 ACL을 설정합니다.  
필수 여부: 예

`-a, --access-key` *access\$1key\$1id*  
사용자의 AWS 액세스 키 ID입니다.  
Required: Yes

`-s, --secret-key` *secret\$1access\$1key*  
AWS 보안 액세스 키입니다.  
Required: Yes

`-t, --delegation-token` *token*  
AWS 요청에 함께 전달되는 위임 토큰입니다. 자세한 내용은 *IAM 사용 설명서*의 [임시 보안 자격 증명](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)을 참조하세요.  
필수 항목 여부: 임시 보안 자격 증명을 사용하는 경우에만.  
기본값: `AWS_DELEGATION_TOKEN` 환경 변수 값(설정된 경우).

`-m, --manifest` *path*  
매니페스트 파일 경로입니다. 매니페스트 파일은 번들링 프로세스 중 생성되며 번들이 포함된 디렉터리에 있습니다.  
Required: Yes

`--url` *url*  
사용되지 않음. 버킷이 `--region` 위치(`EU` 제외)로 제한되어 있지 않은 경우 대신 `eu-west-1` 옵션을 사용합니다. `--location` 플래그는 이러한 특정 위치 제한을 적용하는 유일한 방법입니다.  
Amazon S3 엔드포인트 서비스 URL입니다.  
기본값: `https://s3.amazonaws.com/`  
Required: No

`--region` *region*  
대상 S3 버킷의 요청 서명에 사용할 리전입니다.  
+ 버킷이 없고 리전을 지정하지 않는 경우 이 도구는 (`us-east-1`에서) 위치 제한 없이 버킷을 만듭니다.
+ 버킷이 없고 리전을 지정하는 경우 이 도구는 지정된 리전에 버킷을 만듭니다.
+ 버킷이 있고 리전을 지정하지 않는 경우 이 도구는 버킷의 위치를 사용합니다.
+ 버킷이 있고 `us-east-1`을 리전으로 지정하는 경우 이 도구는 오류 메시지 없이 버킷의 실제 위치를 사용하며 일치하는 기존 파일을 덮어씁니다.
+ 버킷이 있고 버킷의 실제 위치와 일치하지 않는 리전(`us-east-1` 이외)을 지정하는 경우 도구가 종료되고 오류가 발생합니다.
버킷이 `EU` 위치(`eu-west-1` 제외)로 제한된 경우 대신 `--location` 플래그를 사용합니다. `--location` 플래그는 이러한 특정 위치 제한을 적용하는 유일한 방법입니다.  
기본값: `us-east-1`  
필수: 서명 버전 4를 사용하는 경우 필수입니다.

`--sigv` *version*  
요청 서명 시 사용하는 서명 버전입니다.  
유효한 값: `2` \$1 `4`  
기본값: `4`  
Required: No

`--acl` *acl*  
번들링된 이미지의 액세스 제어 목록 정책입니다.  
유효한 값: `public-read` \$1 `aws-exec-read`  
기본값: `aws-exec-read`  
Required: No

`-d, --directory` *directory*  
번들링된 AMI 파트가 포함된 디렉터리입니다.  
기본값: 매니페스트 파일이 포함된 디렉터리(`-m` 옵션 참조)입니다.  
Required: No

`--part` *part*  
지정된 파트와 모든 후속 파트의 업로드를 시작합니다. 예를 들어 `--part 04`입니다.  
Required: No

`--retry`  
모든 Amazon S3 오류에서 작업당 최대 5회 자동으로 재시도합니다.  
Required: No

`--skipmanifest`  
매니페스트를 업로드하지 않습니다.  
Required: No

`--location` *location*  
사용되지 않음. 버킷이 `--region` 위치(`EU` 제외)로 제한되어 있지 않은 경우 대신 `eu-west-1` 옵션을 사용합니다. `--location` 플래그는 이러한 특정 위치 제한을 적용하는 유일한 방법입니다.  
대상 Amazon S3 버킷의 위치 제한입니다. 버킷이 있고 버킷의 실제 위치와 일치하지 않는 위치를 지정하는 경우 도구가 종료되고 오류가 발생합니다. 버킷이 있고 위치를 지정하지 않는 경우 이 도구는 버킷의 위치를 사용합니다. 버킷이 없고 위치를 지정하는 경우 이 도구는 지정된 리전에 버킷을 만듭니다. 버킷이 없고 위치를 지정하지 않는 경우 이 도구는 (`us-east-1`에서) 위치 제한 없이 버킷을 만듭니다.  
기본값: `--region`이 지정된 경우 위치는 여기에 지정된 리전으로 설정됩니다. `--region`이 지정되지 않은 경우 위치는 기본적으로 `us-east-1`로 설정됩니다.  
필수 여부: 아니요

### 출력
<a name="upload-bundle-output"></a>

Amazon EC2에서 업로드 프로세스의 단계 및 상황을 나타내는 상태 메시지를 표시합니다.

### 예시
<a name="upload-bundle-response"></a>

이 예시에서는 `image.manifest.xml` 매니페스트에서 지정한 번들을 업로드합니다.

```
[ec2-user ~]$ ec2-upload-bundle -b amzn-s3-demo-bucket/bundles/bundle_name -m image.manifest.xml -a your_access_key_id -s your_secret_access_key
Creating bucket...
Uploading bundled image parts to the S3 bucket amzn-s3-demo-bucket ...
Uploaded image.part.00
Uploaded image.part.01
Uploaded image.part.02
Uploaded image.part.03
Uploaded image.part.04
Uploaded image.part.05
Uploaded image.part.06
Uploaded image.part.07
Uploaded image.part.08
Uploaded image.part.09
Uploaded image.part.10
Uploaded image.part.11
Uploaded image.part.12
Uploaded image.part.13
Uploaded image.part.14
Uploading manifest ...
Uploaded manifest.
Bundle upload completed.
```

## AMI 도구의 일반 옵션
<a name="common-args-ami"></a>

AMI 도구의 대부분은 다음과 같은 선택적 파라미터를 허용합니다.

`--help, -h`  
도움말 메시지를 표시합니다.

`--version`  
버전 및 저작권 통지를 표시합니다.

`--manual`  
수동 입력 항목을 표시합니다.

`--batch`  
배치 모드에서 실행되며 대화형 메시지를 표시하지 않습니다.

`--debug`  
문제를 해결할 때 유용한 정보를 표시합니다.