gsutil 설치

이 페이지에서는 HTTPS를 사용하여 명령줄에서 Cloud Storage에 액세스할 수 있는 도구인 gsutil의 설치 및 설정을 설명합니다.

gsutil을 설치하면 공개 데이터에 대한 즉시 읽기 또는 쓰기 액세스가 가능합니다. Cloud Storage 서비스를 인증하면 공유되는 보호된 데이터에 대한 읽기 또는 쓰기 액세스가 가능합니다. 결제를 사용 설정하면 버킷을 직접 만들고 관리할 수 있습니다.

시스템 요구사항

  • gsutil 도구는 Linux/Unix, Mac OS, Windows(XP 이상)에서 실행됩니다.

  • gsutil 버전 5.0 이상에는 Python 3이 필요합니다.

  • 복합 객체를 사용하려면 컴파일된 crcmod를 설치해야 합니다. Windows에서는 32비트 Python용으로만 제공됩니다.

gsutil 설치

공식적으로 지원되는 gsutil의 설치 및 업데이트 방법은 Google Cloud SDK를 사용하는 것입니다.

Google Cloud SDK의 일부로 gsutil 설치하기

운영체제의 안내에 따라 gsutil을 Google Cloud SDK의 일부로 설치하세요.

Linux
  1. Cloud SDK에는 Python이 필요합니다. 지원되는 버전은 Python 3(권장, 3.5~3.8) 및 Python 2(2.7.9 이상)입니다.

    python --version
    Cloud SDK를 실행하려면 운영체제가 다음과 같은 지원되는 Python 버전 중 하나를 실행할 수 있어야 합니다. Python 인터프리터를 선택하고 구성하는 방법에 대한 자세한 내용은 gcloud topic startup를 참조하세요.
  2. 다음 중 하나를 다운로드합니다.
  3. 플랫폼 패키지 크기 SHA-256 체크섬
    Linux 64비트

    (x86_64)

    google-cloud-sdk-360.0.0-linux-x86_64.tar.gz 92.3MB 6192cb2791f592da6d372888dbd7ee81d3d91f255d844ab5fc518fc97e453648
    Linux 64비트

    (arm)

    google-cloud-sdk-360.0.0-linux-arm.tar.gz 89.6MB 19cb40f5678c652c0960cf6e4e8faa896754f6a6dd3716701126063cac3b61ca
    Linux 32비트

    (x86)

    google-cloud-sdk-360.0.0-linux-x86.tar.gz 89.6MB aabf563e3f9b467b123f6ee2bff0017eaec5c154458c623ec8a59306d72194ea

  4. 또는 명령줄에서 Linux 64비트 보관 파일을 다운로드하려면 다음을 실행합니다.

    curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-360.0.0-linux-x86_64.tar.gz

    64비트 arm 보관 파일의 경우 다음을 실행합니다.

    curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-360.0.0-linux-arm.tar.gz

    32비트 보관 파일의 경우 다음을 실행합니다.

    curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-360.0.0-linux-x86.tar.gz
  5. 원하는 파일 시스템 위치(예: 홈 디렉터리)에 파일 콘텐츠 압축을 풉니다. 기존 설치를 대체하려면 기존 google-cloud-sdk 디렉터리를 삭제하고 동일한 위치에 보관 파일 압축을 풉니다.
  6. (선택사항) 설치 스크립트를 사용하여 PATH에 Cloud SDK 도구를 추가합니다. 또한 셸 및 사용 통계 수집에 명령어 완료 옵션을 선택할 수 있습니다.

    다음 명령어를 사용하여(마지막 단계에서 추출한 폴더의 루트에서) 스크립트를 실행합니다.

    ./google-cloud-sdk/install.sh
    
    이 경우 환경설정을 플래그로 제공하여 비대화형(예: 스크립트 사용)으로도 수행할 수 있습니다. 명령어는 다음과 같습니다.
    ./google-cloud-sdk/install.sh --help
    
    변경사항이 적용되도록 새 터미널을 엽니다.
  7. gcloud init을 실행하여 SDK를 초기화합니다.
  8. ./google-cloud-sdk/bin/gcloud init
    
  9. (선택사항) 구성요소 관리자를 사용하여 추가 구성요소를 설치합니다.
Debian/Ubuntu

패키지 콘텐츠

Debian 및 Ubuntu 시스템에서 Cloud SDK는 설치용 패키지 형식으로 제공됩니다. 이 패키지에는 gcloud, gcloud alpha, gcloud beta, gsutil, bq 명령어만 포함됩니다. gcloud 명령어를 사용하여 애플리케이션을 배포하는 데 필요한 kubectl 또는 App Engine 확장 프로그램은 포함되지 않습니다. 이러한 구성요소를 사용하려면 이 섹션의 뒷부분에 설명된 대로 별도로 설치해야 합니다.

기본 요건

Cloud SDK를 설치하기 전에 운영체제가 다음 중 하나인지 확인하세요.

설치
  1. 패키지 소스로 Cloud SDK 배포 URI를 추가합니다.
    echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
    apt-transport-https가 설치되어 있는지 확인하세요.
    sudo apt-get install apt-transport-https ca-certificates gnupg
  2. Google Cloud 공개 키를 가져옵니다.
    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
  3. Cloud SDK를 업데이트하고 설치합니다.
    sudo apt-get update && sudo apt-get install google-cloud-sdk
    프롬프트 사용 중지 또는 연습 실행과 같은 추가 apt-get 옵션에 대해서는 apt-get 설명 페이지를 참조하세요.

    Docker 팁: Docker 이미지 내에 Cloud SDK를 설치하는 경우 단일 RUN 단계를 사용하세요.

    RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg  add - && apt-get update -y && apt-get install google-cloud-sdk -y
          

  4. 필요한 경우 다음 추가 구성요소를 설치합니다.
    • google-cloud-sdk-app-engine-python
    • google-cloud-sdk-app-engine-python-extras
    • google-cloud-sdk-app-engine-java
    • google-cloud-sdk-app-engine-go
    • google-cloud-sdk-bigtable-emulator
    • google-cloud-sdk-cbt
    • google-cloud-sdk-cloud-build-local
    • google-cloud-sdk-datalab
    • google-cloud-sdk-datastore-emulator
    • google-cloud-sdk-firestore-emulator
    • google-cloud-sdk-pubsub-emulator
    • kubectl

    예를 들어 google-cloud-sdk-app-engine-java 구성요소는 다음과 같이 설치할 수 있습니다.

    sudo apt-get install google-cloud-sdk-app-engine-java
  5. 시작하려면 gcloud init를 실행합니다.
    gcloud init

Cloud SDK 버전 다운그레이드

VERSION123.0.0 형식인 특정 버전의 Cloud SDK로 되돌려야 할 경우에는 다음을 실행합니다. sudo apt-get update && sudo apt-get install google-cloud-sdk=123.0.0-0 최신 출시 버전 10개가 저장소에서 항상 제공됩니다.

Red Hat/Fedora/CentOS

패키지 콘텐츠

Cloud SDK는 Red Hat Enterprise Linux 7, Red Hat Enterprise Linux 8, Fedora 33, CentOS 7 및 8 시스템에 설치할 수 있는 패키지 형식으로 제공됩니다. 이 패키지에는 gcloud, gcloud alpha, gcloud beta, gsutil, bq 명령어만 포함됩니다. 이 섹션의 후반부에 설명된 대로 별도로 설치할 수 있는 gcloud 명령어를 사용하여 애플리케이션을 배포하는 데 필요한 kubectl 또는 App Engine 확장 프로그램은 포함되지 않습니다.

설치
  1. Cloud SDK 저장소 정보로 DNF를 업데이트합니다.
    sudo tee -a /etc/yum.repos.d/google-cloud-sdk.repo << EOM
    [google-cloud-sdk]
    name=Google Cloud SDK
    baseurl=https://packages.cloud.google.com/yum/repos/cloud-sdk-el8-x86_64
    enabled=1
    gpgcheck=1
    repo_gpgcheck=0
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
           https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOM
    
  2. Cloud SDK를 설치합니다.
    sudo dnf install google-cloud-sdk
  3. 필요한 경우 다음 추가 구성요소를 설치합니다
      .
    • google-cloud-sdk-app-engine-python
    • google-cloud-sdk-app-engine-python-extras
    • google-cloud-sdk-app-engine-java
    • google-cloud-sdk-app-engine-go
    • google-cloud-sdk-bigtable-emulator
    • google-cloud-sdk-cbt
    • google-cloud-sdk-cloud-build-local
    • google-cloud-sdk-datalab
    • google-cloud-sdk-datastore-emulator
    • google-cloud-sdk-firestore-emulator
    • google-cloud-sdk-pubsub-emulator
    • kubectl

    예를 들어 google-cloud-sdk-app-engine-java 구성요소는 다음과 같이 설치할 수 있습니다.

    sudo dnf install google-cloud-sdk-app-engine-java
  4. 시작하려면 gcloud init를 실행합니다.
    gcloud init

Cloud SDK 버전 다운그레이드

VERSION123.0.0 형식인 특정 버전의 Cloud SDK로 되돌려야 할 경우에는 다음을 실행합니다. sudo dnf downgrade google-cloud-sdk-VERSION 최신 출시 버전 10개가 저장소에서 항상 제공됩니다.

macOS
  1. Cloud SDK에는 Python이 필요합니다.
    • 지원되는 버전은 Python 3(3.7 권장) 및 Python 2(2.7.9 이상)입니다.
    • 최신 버전의 macOS에는 Cloud SDK에 필요한 적절한 Python 버전이 포함되어 있습니다. 현재 Python 버전을 확인하려면 python -V를 실행합니다.
    • Cloud SDK 출시 버전 352.0.0 이상의 경우 기본 설치 스크립트는 Intel 기반 Mac에 CPython의 Python 3.7을 설치하도록 제공합니다.
    • Python 인터프리터를 선택하고 구성하는 방법에 대한 자세한 내용은 gcloud topic startup를 참조하세요.
  2. 다음 중 하나를 다운로드합니다.
  3. 플랫폼 패키지 크기 SHA-256 체크섬
    macOS 64비트

    (x86_64)

    google-cloud-sdk-360.0.0-darwin-x86_64.tar.gz 92.8MB b900370f1c05f2dbf819aa257c545790ef087f858f0e438eac20ed0bed375e32
    macOS 64비트

    (arm64, Apple M1 실리콘)

    google-cloud-sdk-360.0.0-darwin-arm.tar.gz 92.7MB 7d40e2282958d713ebb5ce8fa7c28ccb4787f2cd304c2ee1f5bf9c91f4f00b5e
    macOS 32비트

    (x86)

    google-cloud-sdk-360.0.0-darwin-x86.tar.gz 96.6MB 4159f7419b8abe7de7bddb88ced85bf547cbc49c488801b3f06ee9188474a33f

    1. 파일 시스템의 임의 위치(예: 홈 디렉터리)에 보관 파일 압축을 풉니다. macOS에서는 다운로드된 .tar.gz 보관 파일을 원하는 위치에서 열어 압축을 풀 수 있습니다.

      기존 설치를 대체하려면 기존 google-cloud-sdk 디렉터리를 삭제하고 동일한 위치에 보관 파일 압축을 풉니다.

    2. (선택사항) 설치 스크립트를 사용하여 PATH에 Cloud SDK 도구를 추가합니다.

      또한 셸 및 사용 통계 수집에 명령어 완성을 사용하고 선택적으로 Python 3.7을 설치할 수도 있습니다.

      다음 명령어를 사용하여(마지막 단계에서 추출한 폴더의 루트에서) 스크립트를 실행합니다.

      ./google-cloud-sdk/install.sh
      
      이 경우 환경설정을 플래그로 제공하여 비대화형(예: 스크립트 사용)으로도 수행할 수 있습니다. 명령어는 다음과 같습니다.
      ./google-cloud-sdk/install.sh --help
      
      스크린 리더 모드가 설정된 상태에서 설치 스크립트를 실행하려면 다음 안내를 따르세요.
      ./google-cloud-sdk/install.sh --screen-reader=true
      
      변경사항이 적용되도록 새 터미널을 엽니다.
    3. gcloud init을 실행하여 SDK를 초기화합니다.
    4. ./google-cloud-sdk/bin/gcloud init
      
    5. (선택사항) 구성요소 관리자를 사용하여 추가 구성요소를 설치합니다.
Windows
  1. Cloud SDK 설치 프로그램을 다운로드합니다.

    또는 PowerShell 터미널을 열고 다음 PowerShell 명령어를 실행합니다.

    (New-Object Net.WebClient).DownloadFile("https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe", "$env:Temp\GoogleCloudSDKInstaller.exe")
    
    & $env:Temp\GoogleCloudSDKInstaller.exe
        
  2. 설치 프로그램을 실행하고 안내 메시지를 따릅니다. 설치 프로그램 서명자는 Google LLC입니다.

    스크린 리더를 사용하는 경우 스크린 리더 모드 설정 체크박스를 선택합니다. 이 옵션은 유니코드 스피너 대신 상태 추적기를 사용하고, 진행 상태를 백분율로 표시하고, 테이블을 평면화하도록 gcloud를 구성합니다. 자세한 내용은 가용성 기능 가이드를 참조하세요.

  3. Cloud SDK에는 Python이 필요합니다. 지원되는 버전은 Python 3(권장, 3.5~3.8) 및 Python 2(2.7.9 이상)입니다. Cloud SDK는 기본적으로 Python 3가 번들로 함께 제공됩니다. Cloud SDK를 사용하려면 운영체제가 지원되는 Python 버전을 실행할 수 있어야 합니다.

    설치 프로그램은 필요한 Python 버전을 포함하여 필요한 모든 종속 항목을 설치합니다. Cloud SDK는 Python 3을 기본적으로 설치 및 관리하지만 필요한 경우 번들 Python 설치 옵션을 선택 해제하여 기존 Python 설치를 사용할 수 있습니다. 기존 Python 설치를 사용하는 방법은 gcloud topic startup을 참조하세요.

  4. 설치가 완료되면 설치 프로그램이 시작 메뉴 및 바탕화면 바로가기를 만들고, Cloud SDK 셸을 시작하고 Cloud SDK를 구성할 수 있는 옵션을 제공합니다. 셸을 시작하고 설치를 구성하는 옵션은 선택한 상태로 두세요. 설치 프로그램이 터미널 창을 시작하고 gcloud init 명령어를 실행합니다.

  5. 기본 설치에는 gcloud 명령어를 사용하여 애플리케이션을 배포하는 데 필요한 App Engine 확장 프로그램이 포함되지 않습니다. 이러한 구성요소는 Cloud SDK 구성요소 관리자를 사용하여 설치할 수 있습니다.
문제 해결 팁:
  • find 명령어가 인식되지 않아 설치에 실패하는 경우 find가 들어 있는 폴더를 포함하도록 PATH 환경 변수가 설정되어 있는지 확인합니다. 일반적으로는, C:\WINDOWS\system32;입니다.
  • Cloud SDK를 방금 제거한 경우 Cloud SDK를 다시 설치하기 전에 시스템을 재부팅해야 합니다.

components update 명령어 gcloud components update를 사용하여 업데이트를 수행합니다.

gsutil 사용 방법을 보려면 빠른 시작: gsutil 도구 사용 실습을 참조하거나 gsutil help를 실행하세요.

대체 설치 방법

gsutil을 독립 실행형 제품으로 설치하는 방법에는 여러 가지가 있습니다. Cloud SDK와 함께 제공되는 다른 구성요소를 원하지 않거나 PyPI로 패키지를 관리하는 경우 이러한 방법 중 하나를 선호할 수 있습니다.

gsutil 5.0 이상을 설치하는 경우 컴퓨터에 Python 3을 설치해야 하며 Python 3.5~3.8이 권장됩니다. Python 3은 대부분의 Linux 및 macOS 배포판에 기본적으로 설치됩니다.

  • Python 3은 Windows에 기본적으로 설치되어 있지 않지만 수동으로 설치할 수 있습니다.
  • Python 3는 CentOS 또는 RHEL에 기본적으로 설치되지 않을 수 있습니다. 현재 설치되지 않았으면 수동으로 설치할 수 있습니다.

gsutil 설치 안내를 보려면 원하는 방법을 확장합니다.

보호된 데이터 액세스를 위해 사용자 인증 정보 설정하기

gsutil을 설치하면 공개적으로 액세스 가능한 데이터를 다운로드하고 액세스할 수 있지만 보호된 데이터에 액세스하거나 보호된 버킷에 쓰려면 사용자 인증 정보(인증)를 설정해야 합니다. 예를 들어 다른 누군가가 Cloud Storage 계정을 만들고 사용자나 다른 특정 개인만 액세스할 수 있는 데이터를 업로드한 경우 Cloud Storage 서비스에 사용자 인증 정보를 설정해야 이 데이터에 액세스할 수 있습니다.

Google Cloud SDK의 일부로 gsutil을 설치한 경우 다음 안내를 따르세요. 그렇지 않으면 독립 실행형 gsutil 인증 섹션을 참조하세요.

Google Cloud SDK 인증

gsutil을 Google Cloud SDK의 일부로 사용할 경우 액세스 인증 및 승인에 OAuth2가 사용됩니다. 위에서 Google Cloud SDK의 일부로 gsutil 설치하기를 수행한 경우 다음 단계를 이미 수행했을 수 있습니다. gcloud init를 이전에 실행했다면 구성을 다시 초기화할지 또는 새 구성을 만들지를 묻는 메시지가 표시됩니다.

  1. 명령 프롬프트 인스턴스를 엽니다.

  2. 명령어 프롬프트에서 gcloud init를 실행합니다.

    다음이 출력됩니다.

    Welcome! This command will take you through the configuration of gcloud.
     
    Your current configuration has been set to: [default]
     
    To continue, you must login. Would you like to login (Y/n)?
    

  3. 'Y'를 입력하고 Enter를 눌러 로그인합니다.

    • 이 명령어는 URL을 인쇄하고 프로젝트에 대한 액세스 요청을 위해 브라우저 창 열기를 시도합니다. 브라우저 창이 열리면 다음이 출력됩니다.

      Your browser has been opened to visit:
       
      https://accounts.google.com/o/oauth2/auth?redirect_uri=http%3A%2F%2F...
      

      다음 단계로 이동합니다.

    • 로컬 머신에서 작업 중이며 브라우저가 URL을 자동으로 로드하지 않는 경우 --console-only 플래그를 사용하여 gcloud init 명령어를 다시 시도하세요.

      gcloud init --console-only
      

      이 명령어를 사용하거나 Cloud SDK가 브라우저를 열 수 없음을 감지하는 경우(예: 원격 머신에서 작업하는 경우) 다음이 출력됩니다.

      Go to the following link in your browser:
       
      https://accounts.google.com/o/oauth2/auth?redirect_uri=urn%3Aietf%3Awg%3A...
       
      Enter verification code:
      

      브라우저를 열고 제공된 URL로 이동합니다.

  4. 메시지가 나타나면 브라우저 창에서 Cloud Storage 데이터와 연결된 Google 계정으로 로그인합니다.

  5. 액세스 권한을 부여합니다.

    • 브라우저 창이 자동으로 열린 경우 응용 프로그램 권한을 검토하고 준비가 되면 수락을 클릭합니다. 그러면 인증 코드가 명령줄 도구로 자동 전송됩니다.

    • 원격 머신에서 작업 중이거나 --console-only 플래그를 사용한 경우 URL에서 인증 코드를 복사하여 터미널 명령줄의 인증 코드 입력: 다음에 붙여넣습니다.

  6. 이 구성의 기본 프로젝트를 선택합니다.

    사용자 인증 정보를 설정하면 gcloud 명령줄 도구는 이 구성의 기본 프로젝트를 묻는 프롬프트와 사용 가능한 프로젝트 목록을 제공합니다. 목록에서 프로젝트 ID를 선택합니다.

    이 속성을 설정할 때 -p 플래그로 기본 프로젝트 ID를 재정의하거나 CLOUDSDK_CORE_PROJECT 환경 변수를 설정하지 않으면 프로젝트를 필요로 하는 gsutil 명령어(예: gsutil mb)에서 기본 프로젝트 ID를 사용합니다.

의 성능에 영향을 주지 않습니다.

작업이 끝났습니다. 보호된 데이터에 액세스할 준비가 되었습니다. gsutil 명령어 목록을 보려면 명령어 프롬프트에서 gsutil을 입력하세요.

독립 실행형 gsutil 인증

HMAC로 인증

OAuth 2.0을 사용하여 gsutil을 인증하는 것이 좋지만 사용자 인증 정보용 HMAC 키를 사용할 수도 있습니다. HMAC를 사용하여 인증하려면 gsutil config 명령어에서 -a 플래그를 사용합니다.

gsutil config -a

이 명령어를 사용하면 액세스 ID 및 HMAC 키와 연결된 보안 비밀을 입력하라는 메시지가 표시되는 것을 제외하고는 독립 실행형 gsutil을 인증하는 것과 유사한 프로세스가 수행됩니다(이전 섹션 참조).

Google Cloud SDK를 사용하는 경우 다음 명령어로 사용자 인증 정보 전달을 중지해야 합니다.

gcloud config set pass_credentials_to_gsutil false

mTLS 사용 설정

상호 TLS(mTLS)를 사용 설정할 수도 있습니다. 기기에 mTLS가 사용 설정되면 기기는 storage.mtls.googleapis.com에 연결을 시도합니다. 연결이 허용되기 전에 Cloud Storage는 기기의 인증서를 확인합니다.

인증서를 가져오는 가장 간단한 방법은 Google Cloud SDK를 사용하는 것입니다. .boto 파일에서 '사용자 인증 정보'에 다음 값을 설정하여 수동으로 설정할 수 있습니다.

  1. use_client_certificate: mTLS 사용 여부를 제어하는 플래그입니다.
  2. cert_provider_command: gsutil에서 읽을 수 있도록 인증서를 stdout에 출력하는 셸 명령어입니다.

직접 사용해 보기

Google Cloud를 처음 사용하는 경우 계정을 만들어 실제 시나리오에서 Cloud Storage의 성능을 평가할 수 있습니다. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.

Cloud Storage 무료로 사용해 보기