본문 바로가기
CSP (Cloud Service Provider)/AWS

[AWS] CLI 설치 and 업데이트 - 리눅스 환경

by 알 수 없는 사용자 2022. 12. 13.

안녕하세요~? 오늘은 팔선생 탕수육 땡기는 그런 날입니다`^^

오늘은 Linux(리눅스) 환경에세 지원되는 운영 체제에서 AWS Command Line Interface(AWS CLI)의 최신 릴리스를 설치하거나 업데이트하는 방법을 설명하려고 합니다!

 AWS CLI의 최신 릴리스에 대한 자세한 내용은 GitHub에서 AWS CLI 버전 2 변경 로그를 참조하세요.

 

AWS CLI의 이전 릴리스를 설치하려면 AWS CLI 버전 2의 이전 릴리스 설치 단원을 참조하세요.

제거 지침은 AWS CLI 버전 2 제거 단원을 참조하세요.

 

더보기

중요

AWS CLI 버전 1과 2는 동일한 aws 명령 이름을 사용합니다. 이전에 AWS CLI 버전 1을 설치한 경우 AWS CLI 버전 1에서 버전 2로 마이그레이션 섹션을 참조하세요.

 

AWS CLI 설치 및 업데이트 지침

Linux

 

설치 및 업데이트 요구 사항

  • 다운로드한 패키지를 추출 또는 "압축 해제"할 수 있어야 합니다. 운영 체제에 기본 제공 unzip 명령이 없는 경우 이와 동등한 명령을 사용하세요.
  • AWS CLI에서는 glibc, groff  less를 사용합니다. 이들은 Linux의 대부분의 주요 배포판에 기본적으로 포함되어 있습니다.
  • AWS CLI는 CentOS, Fedora, Ubuntu, Amazon Linux 1, Amazon Linux 2 및 Linux ARM 최신 배포판의 64비트 버전에서 지원됩니다.
  • AWS에서는 타사 리포지토리를 유지 관리하지 않으므로 최신 버전의 AWS CLI가 포함되었다고 보장할 수 없습니다.

AWS CLI 설치 또는 업데이트

AWS CLI의 현재 설치를 업데이트하려면 업데이트할 때마다 새 설치 관리자를 다운로드하여 이전 버전을 덮어씁니다. 명령줄에서 다음 단계에 따라 Linux에 AWS CLI를 설치합니다.

64비트 Linux를 사용하는지 Linux ARM을 사용하는지에 따라 복사 및 붙여넣기가 쉬운 한 그룹에서 단계를 제공합니다. 다음 단계에서 각 라인에 대한 설명을 참조하세요.

 

Linux x86 (64-bit)

더보기

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install

Linux ARM

더보기

curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

 

더보기

참고

AWS CLI의 현재 설치를 업데이트하려면 기존 심볼 링크 및 설치 관리자 정보를 추가하여 --update 파라미터를 포함한 install 명령을 구성합니다.

 

sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update

1. 다음 방법 중 하나로 설치 파일을 다운로드합니다.

 

Linux x86 (64-bit)

더보기
  • curl 명령 사용 - -o 옵션은 다운로드한 패키지가 기록되는 파일 이름을 지정합니다. 다음 예제 명령의 옵션을 사용하면 다운로드한 파일이 로컬 이름 awscliv2.zip으로 현재 디렉터리에 기록됩니다.
     
    $ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

 

Linux ARM

더보기
  • curl 명령 사용 - -o 옵션은 다운로드한 패키지가 기록되는 파일 이름을 지정합니다. 다음 예제 명령의 옵션을 사용하면 다운로드한 파일이 로컬 이름 awscliv2.zip으로 현재 디렉터리에 기록됩니다.
     
    $ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"

 

 

  1. (선택 사항) 다운로드한 zip 파일의 무결성 확인

    위의 단계에서 AWS CLI 설치 관리자 패키지 .zip를 수동으로 다운로드하도록 선택한 경우 다음 단계에 따라 GnuPG 도구를 사용하여 서명을 확인할 수 있습니다.

    AWS CLI 설치 관리자 패키지 .zip 파일은 PGP 서명을 사용하여 암호로 서명됩니다. 파일이 손상되거나 변경되면 이 확인이 실패하며 설치를 진행해서는 안 됩니다.

    1. 패키지 관리자를 사용하여 gpg 명령을 다운로드하고 설치합니다. GnuPG에 대한 자세한 내용은 GnuPG 웹 사이트를 참조하십시오.
    2. 퍼블릭 키 파일을 만들려면 텍스트 파일을 만들고 다음 텍스트를 붙여 넣습니다.참고로 다음은 퍼블릭 키의 세부 정보입니다.
    3. Key ID: A6310ACC4672 Type: RSA Size: 4096/4096 Created: 2019-09-18 Expires: 2023-09-17 User ID: AWS CLI Team <aws-cli@amazon.com> Key fingerprint: FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C

    4. -----BEGIN PGP PUBLIC KEY BLOCK----- mQINBF2Cr7UBEADJZHcgusOJl7ENSyumXh85z0TRV0xJorM2B/JL0kHOyigQluUG ZMLhENaG0bYatdrKP+3H91lvK050pXwnO/R7fB/FSTouki4ciIx5OuLlnJZIxSzx PqGl0mkxImLNbGWoi6Lto0LYxqHN2iQtzlwTVmq9733zd3XfcXrZ3+LblHAgEt5G TfNxEKJ8soPLyWmwDH6HWCnjZ/aIQRBTIQ05uVeEoYxSh6wOai7ss/KveoSNBbYz gbdzoqI2Y8cgH2nbfgp3DSasaLZEdCSsIsK1u05CinE7k2qZ7KgKAUIcT/cR/grk C6VwsnDU0OUCideXcQ8WeHutqvgZH1JgKDbznoIzeQHJD238GEu+eKhRHcz8/jeG 94zkcgJOz3KbZGYMiTh277Fvj9zzvZsbMBCedV1BTg3TqgvdX4bdkhf5cH+7NtWO lrFj6UwAsGukBTAOxC0l/dnSmZhJ7Z1KmEWilro/gOrjtOxqRQutlIqG22TaqoPG fYVN+en3Zwbt97kcgZDwqbuykNt64oZWc4XKCa3mprEGC3IbJTBFqglXmZ7l9ywG EEUJYOlb2XrSuPWml39beWdKM8kzr1OjnlOm6+lpTRCBfo0wa9F8YZRhHPAkwKkX XDeOGpWRj4ohOx0d2GWkyV5xyN14p2tQOCdOODmz80yUTgRpPVQUtOEhXQARAQAB tCFBV1MgQ0xJIFRlYW0gPGF3cy1jbGlAYW1hem9uLmNvbT6JAlQEEwEIAD4WIQT7 Xbd/1cEYuAURraimMQrMRnJHXAUCXYKvtQIbAwUJB4TOAAULCQgHAgYVCgkICwIE FgIDAQIeAQIXgAAKCRCmMQrMRnJHXJIXEAChLUIkg80uPUkGjE3jejvQSA1aWuAM yzy6fdpdlRUz6M6nmsUhOExjVIvibEJpzK5mhuSZ4lb0vJ2ZUPgCv4zs2nBd7BGJ MxKiWgBReGvTdqZ0SzyYH4PYCJSE732x/Fw9hfnh1dMTXNcrQXzwOmmFNNegG0Ox au+VnpcR5Kz3smiTrIwZbRudo1ijhCYPQ7t5CMp9kjC6bObvy1hSIg2xNbMAN/Do ikebAl36uA6Y/Uczjj3GxZW4ZWeFirMidKbtqvUz2y0UFszobjiBSqZZHCreC34B hw9bFNpuWC/0SrXgohdsc6vK50pDGdV5kM2qo9tMQ/izsAwTh/d/GzZv8H4lV9eO tEis+EpR497PaxKKh9tJf0N6Q1YLRHof5xePZtOIlS3gfvsH5hXA3HJ9yIxb8T0H QYmVr3aIUes20i6meI3fuV36VFupwfrTKaL7VXnsrK2fq5cRvyJLNzXucg0WAjPF RrAGLzY7nP1xeg1a0aeP+pdsqjqlPJom8OCWc1+6DWbg0jsC74WoesAqgBItODMB rsal1y/q+bPzpsnWjzHV8+1/EtZmSc8ZUGSJOPkfC7hObnfkl18h+1QtKTjZme4d H17gsBJr+opwJw/Zio2LMjQBOqlm3K1A4zFTh7wBC7He6KPQea1p2XAMgtvATtNe YLZATHZKTJyiqA== =vYOk -----END PGP PUBLIC KEY BLOCK-----

     

    1. 다음 명령을 사용하여 AWS CLI 퍼블릭 키를 가져옵니다. public-key-file-name을 생성한 퍼블릭 키의 파일 이름으로 대체합니다.
    2.  
      $ gpg --import public-key-file-name gpg: /home/username/.gnupg/trustdb.gpg: trustdb created gpg: key A6310ACC4672475C: public key "AWS CLI Team <aws-cli@amazon.com>" imported gpg: Total number processed: 1 gpg: imported: 1
    3. 다운로드한 패키지의 AWS CLI 서명 파일을 다운로드합니다. 해당 .zip 파일과 경로 및 이름은 같지만 확장명은 .sig입니다. 다음 예제에서는 이 파일을 현재 디렉터리에 이름이 awscliv2.sig인 파일로 저장합니다.
      • Linux x86 (64-bit)
      • Linux ARM

      최신 버전의 AWS CLI의 경우 다음 명령 블록을 사용하세요.

       
      $ curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip.sig

      특정 버전의 AWS CLI의 경우 파일 이름에 하이픈과 버전 번호를 추가하세요. 이 예제의 경우 버전 2.0.30의 파일 이름은 awscli-exe-linux-x86_64-2.0.30.zip.sig이므로 명령은 다음과 같습니다.

       
      $ curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip.sig

      버전 목록은 GitHub에서 AWS CLI 버전 2 변경 로그를 참조하세요.

    4. .sig  .zip 파일 이름을 모두 gpg 명령의 파라미터로 전달하여 서명을 확인합니다.다음과 같이 출력됩니다.
      중요

      결과에서 경고가 예상되지만 문제가 되지는 않습니다. 이 경고는 개인 PGP 키(보유한 경우)와 AWS CLI PGP 키 사이에 신뢰 체인이 없기 때문에 발생한 것입니다. 자세한 내용은 Web of trust를 참조하십시오.

    5. gpg: Signature made Mon Nov 4 19:00:01 2019 PST gpg: using RSA key FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C gpg: Good signature from "AWS CLI Team <aws-cli@amazon.com>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C
    6. $ gpg --verify awscliv2.sig awscliv2.zip
     
  2. 설치 관리자의 압축을 풉니다. Linux 배포에 기본 제공 unzip 명령이 없는 경우 이와 동등한 명령을 사용하여 압축을 풉니다. 다음 명령 예제는 패키지의 압축을 풀고 현재 디렉터리 아래에 aws라는 디렉터리를 만듭니다.
     
    참고

    이전 버전에서 업데이트하는 경우 unzip 명령을 실행하면 기존 파일을 덮어쓸지 묻는 메시지가 표시됩니다. 스크립트 자동화와 같은 경우에 이러한 프롬프트를 건너뛰려면 unzip에 대한 -u 업데이트 플래그를 사용합니다. 이 플래그는 기존 파일을 자동으로 업데이트하고 필요에 따라 새 파일을 만듭니다.

     
    $ unzip -u awscliv2.zip

     

  3. $ unzip awscliv2.zip
  4. 설치 프로그램을 실행합니다. 설치 명령은 새로 압축을 푼 install 디렉터리의 aws이라는 이름의 파일을 사용합니다. 기본적으로 파일은 모두 /usr/local/aws-cli에 설치되고 /usr/local/bin에 심볼 링크가 생성됩니다. 이 명령은 해당 디렉터리에 대한 쓰기 권한을 부여하는 sudo를 포함합니다.이미 쓰기 권한이 있는 디렉터리를 지정하는 경우 sudo 없이도 설치할 수 있습니다. install 명령에 대해 다음 지침에 따라 설치 위치를 지정합니다.
     
    $ ./aws/install -i /usr/local/aws-cli -b /usr/local/bin
    참고

    AWS CLI의 현재 설치를 업데이트하려면 기존 심볼 링크 및 설치 관리자 정보를 추가하여 --update 파라미터를 포함한 install 명령을 구성합니다.

     
    $ sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update

    기존 심볼 링크 및 설치 디렉터리를 찾으려면 다음 단계를 따릅니다.

    1. which 명령을 사용하여 symlink를 찾습니다. 그러면 --bin-dir 파라미터와 함께 사용할 경로가 제공됩니다.
    2. $ which aws /usr/local/bin/aws
    3. ls 명령을 사용하여 symlink가 가리키는 디렉터리를 찾습니다. 그러면 --install-dir 파라미터와 함께 사용할 경로가 제공됩니다.
    4. $ ls -l /usr/local/bin/aws lrwxrwxrwx 1 ec2-user ec2-user 49 Oct 22 09:49 /usr/local/bin/aws -> /usr/local/aws-cli/v2/current/bin/aws
    • -i  -b 파라미터에 입력하는 경로의 볼륨 이름이나 디렉터리 이름에 공백이나 기타 공백 문자가 없어야 합니다. 공백이 있으면 설치가 실패합니다.
    • --install-dir 또는 -i - 이 옵션은 모든 파일을 복사할 디렉터리를 지정합니다.
    • 기본 값은 /usr/local/aws-cli입니다.
    • --bin-dir 또는 -b - 이 옵션은 설치 디렉터리의 기본 aws 프로그램에 대한 심볼 링크를 지정된 경로의 aws 파일에 연결하도록 지정합니다. 지정된 디렉터리에 대한 쓰기 권한이 있어야 합니다. 이미 경로에 있는 디렉터리에 대한 symlink를 만들면 설치 디렉터리를 사용자의 $PATH 변수에 추가할 필요가 없습니다.
    • 기본 값은 /usr/local/bin입니다.
  5. $ sudo ./aws/install
  6. 다음 명령을 사용하여 설치를 확인합니다.aws 명령을 찾을 수 없는 경우 터미널을 재시작하거나 AWS CLI 오류 문제 해결에 나온 문제 해결 지침을 따라야 할 수도 있습니다
  7. $ aws --version aws-cli/2.7.24 Python/3.8.8 Linux/4.14.133-113.105.amzn2.x86_64 botocore/2.4.5

 



이상으로 리눅스 환경에서의 CLI 설치 AND 업데이트에 대한 포스팅을 마치겠습니다!

 

참고:https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/getting-started-install.html

'CSP (Cloud Service Provider) > AWS' 카테고리의 다른 글

AWS - Athena (1)  (0) 2022.12.16
[AWS] CW Synthetics Canary  (0) 2022.12.13
API Gateway 실전 사용 (HTTP API)  (0) 2022.12.12
AWS Trusted Advisor  (0) 2022.12.12
[AWS] VPC flow log 실습  (0) 2022.12.09

댓글