Instala gsutil

En esta página, se describe la instalación y configuración de gsutil, una herramienta que te permite acceder a Cloud Storage desde la línea de comandos con HTTPS.

La instalación de gsutil te brinda acceso inmediato de lectura o escritura a datos públicos. La autenticación con el servicio de Cloud Storage te proporciona acceso de lectura o escritura a los datos protegidos que se compartieron contigo. Si habilitas la facturación, podrás crear y administrar tus propios buckets.

Requisitos del sistema

  • La herramienta gsutil se ejecuta en Linux o Unix, Mac OS y Windows (versión XP o posterior).

  • Las versiones de gsutil 5.0 y posteriores requieren Python 3.

  • Si piensas usar objetos compuestos, debes instalar crcmod compilado. En Windows, solo está disponible para Python de 32 bits. Para obtener más información sobre crcmod, instala gsutil y consulta el tema de ayuda mediante el comando gsutil help crc32c.

Instalación de gsutil

El método de instalación y actualización que se admite de forma oficial para gsutil es parte del Google Cloud CLI.

Instala gsutil como parte de Google Cloud CLI

Sigue las instrucciones de tu sistema operativo para instalar gsutil como parte de Google Cloud CLI:

Linux
  1. Confirma que tienes una versión compatible de Python. Google Cloud CLI requiere la versión de Python 3.8 a la 3.12. Ten en cuenta que el paquete x86_64 de Linux incluye un intérprete de Python empaquetado que se preferirá de forma predeterminada. Para obtener información sobre cómo elegir y configurar tu intérprete de Python, consulta gcloud topic startup.
  2. Descarga una de las siguientes opciones:
    Plataforma Nombre del paquete Tamaño Suma de verificación SHA256
    Linux de 64 bits

    (x86_64)

    google-cloud-cli-479.0.0-linux-x86_64.tar.gz 130.4 MB 82b01bc36bd60ea9ce0284de3e424f7b09f54acc9118b353f15951d33c5fe15c
    Linux de 64 bits

    (Arm)

    google-cloud-cli-479.0.0-linux-arm.tar.gz 51.9 MB 84d5686ad0d9b5c39476911134b97f7a1e84032972b13b68d4aea22b691563d7
    Linux de 32 bits

    (x86)

    google-cloud-cli-479.0.0-linux-x86.tar.gz 51.9 MB 4653559382a9df4554c17d19584b253d9f04cb5142f277a5c2a1a72e2ce2e15a

    Para descargar el archivo de Linux, ejecuta el siguiente comando:

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

    Consulta la tabla anterior y reemplaza google-cloud-cli-479.0.0-linux-x86_64.tar.gz por el nombre del paquete *.tar.gz que se aplica a tu configuración.

  3. Para extraer el contenido del archivo en tu sistema de archivos (de preferencia en tu directorio principal), ejecuta el siguiente comando:
    tar -xf google-cloud-cli-479.0.0-linux-x86_64.tar.gz
    Opcional: Para reemplazar una instalación existente, quita el directorio google-cloud-sdk existente y, luego, extrae el archivo en la misma ubicación.
  4. Agrega la gcloud CLI a tu ruta. Ejecuta la secuencia de comandos de instalación desde la raíz de la carpeta a la que extrajiste con el siguiente comando:
    ./google-cloud-sdk/install.sh
    Esto también se puede hacer de forma no interactiva (por ejemplo, con una secuencia de comandos) y proporcionando preferencias como marcas. Para ver las marcas disponibles, ejecuta el siguiente comando:
    ./google-cloud-sdk/install.sh --help
    Opcional:
    • Si deseas enviar estadísticas de uso anónimas para ayudar a mejorar gcloud CLI, responde Y cuando se te solicite (opcional).
    • PATH Para agregar gcloud CLI a tu Y y habilitar la finalización de comandos, responde cuando se te solicite.
  5. Abre una terminal nueva para que los cambios tengan efecto.
  6. Para inicializar la gcloud CLI, ejecuta gcloud init:
  7. ./google-cloud-sdk/bin/gcloud init
  8. Instala componentes adicionales mediante el administrador de componentes.
Debian/Ubuntu

Contenido del paquete

La gcloud CLI está disponible en formato de paquete para instalarla en sistemas Debian y Ubuntu. Este paquete solo contiene los comandos gcloud, gcloud alpha, gcloud beta, gsutil y bq. No incluye kubectl ni las extensiones de App Engine necesarias para implementar una aplicación con los comandos gcloud. Si quieres estos componentes, debes instalarlos por separado.

Antes de comenzar

Antes de instalar la gcloud CLI, asegúrate de que tu sistema operativo cumpla con los siguientes requisitos:

Instalación
  1. Importa la clave pública de Google Cloud.
    • Para las distribuciones más recientes (Debian 9 y versiones posteriores o Ubuntu 18.04 y versiones posteriores), ejecuta el siguiente comando:

      curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg
    • Para las distribuciones más antiguas, ejecuta el siguiente comando:
      curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
    • Si el comando apt-key de la distribución no admite el argumento --keyring, ejecuta el siguiente comando:

      curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
    • Si no puedes obtener las actualizaciones más recientes debido a una clave vencida, obtén el último archivo de claves apt-get.gpg.

  2. Agrega el URI de distribución de gcloud CLI como una fuente de paquetes.
    • Para las distribuciones más recientes (Debian 9 y versiones posteriores o Ubuntu 18.04 y versiones posteriores), ejecuta el siguiente comando:
      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
    • Para las distribuciones más antiguas que no admiten la opción de firmado, ejecuta el siguiente comando:

      echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
  3. Instala y actualiza gcloud CLI:
    sudo apt-get update && sudo apt-get install google-cloud-cli
    Para obtener más opciones de apt-get, como la inhabilitación de mensajes o las pruebas de validación, consulta las páginas del manual de apt-get.

    Sugerencia de Docker: Si instalas la gcloud CLI dentro de una imagen de Docker, mejor usa un solo paso RUN:

    RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://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 | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg && apt-get update -y && apt-get install google-cloud-sdk -y
        
    En el caso de las imágenes base más antiguas que no admiten el comando gpg --dearmor, haz lo siguiente:
    RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://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-cli -y
          
  4. (Opcional) Instala cualquiera de los siguientes componentes adicionales:
    • google-cloud-cli
    • google-cloud-cli-anthos-auth
    • google-cloud-cli-app-engine-go
    • google-cloud-cli-app-engine-grpc
    • google-cloud-cli-app-engine-java
    • google-cloud-cli-app-engine-python
    • google-cloud-cli-app-engine-python-extras
    • google-cloud-cli-bigtable-emulator
    • google-cloud-cli-cbt
    • google-cloud-cli-cloud-build-local
    • google-cloud-cli-cloud-run-proxy
    • google-cloud-cli-config-connector
    • google-cloud-cli-datastore-emulator
    • google-cloud-cli-firestore-emulator
    • google-cloud-cli-gke-gcloud-auth-plugin
    • google-cloud-cli-kpt
    • google-cloud-cli-kubectl-oidc
    • google-cloud-cli-local-extract
    • google-cloud-cli-minikube
    • google-cloud-cli-nomos
    • google-cloud-cli-pubsub-emulator
    • google-cloud-cli-skaffold
    • google-cloud-cli-spanner-emulator
    • google-cloud-cli-terraform-validator
    • google-cloud-cli-tests
    • kubectl

    Por ejemplo, el componente google-cloud-cli-app-engine-java se puede instalar de la siguiente manera:

    sudo apt-get install google-cloud-cli-app-engine-java
  5. Ejecuta gcloud init para comenzar:
    gcloud init

Cambia a una versión inferior de la gcloud CLI

Para volver a una versión específica de gcloud CLI, en la que VERSION tiene el formato 123.0.0, ejecuta el siguiente comando:

sudo apt-get update && sudo apt-get install google-cloud-cli=123.0.0-0

Las diez versiones más recientes siempre están disponibles en el repositorio.

NOTA: Para las versiones anteriores a la 371.0.0, el nombre del paquete es google-cloud-sdk.

Red Hat/Fedora/CentOS

Contenido del paquete

Gcloud CLI está disponible en formato de paquete para instalarla en sistemas Red Hat Enterprise Linux 7, 8 y 9; Fedora 33 y 34; y CentOS 7 y 8. Este paquete solo contiene los comandos gcloud, gcloud alpha, gcloud beta, gsutil y bq. No incluye kubectl ni las extensiones de App Engine necesarias para implementar una aplicación mediante comandos de gcloud, los que se pueden instalar por separado como se describe más adelante en esta sección.

Instalación
  1. Actualiza el DNF con la información del repositorio de gcloud CLI. El siguiente comando de muestra es para una instalación compatible con Red Hat Enterprise Linux 9, pero asegúrate de actualizar los parámetros de configuración según sea necesario para tu configuración:
    sudo tee -a /etc/yum.repos.d/google-cloud-sdk.repo << EOM
    [google-cloud-cli]
    name=Google Cloud CLI
    baseurl=https://packages.cloud.google.com/yum/repos/cloud-sdk-el9-x86_64
    enabled=1
    gpgcheck=1
    repo_gpgcheck=0
    gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOM
    
  2. Si instalas Fedora 34 o 35, instala libxcrypt-compat.x86_64.
    sudo dnf install libxcrypt-compat.x86_64
  3. Instala gcloud CLI:
    sudo dnf install google-cloud-cli
  4. (Opcional) Instala cualquiera de los siguientes componentes adicionales:
    • google-cloud-cli
    • google-cloud-cli-anthos-auth
    • google-cloud-cli-app-engine-go
    • google-cloud-cli-app-engine-grpc
    • google-cloud-cli-app-engine-java
    • google-cloud-cli-app-engine-python
    • google-cloud-cli-app-engine-python-extras
    • google-cloud-cli-bigtable-emulator
    • google-cloud-cli-cbt
    • google-cloud-cli-cloud-build-local
    • google-cloud-cli-cloud-run-proxy
    • google-cloud-cli-config-connector
    • google-cloud-cli-datastore-emulator
    • google-cloud-cli-firestore-emulator
    • google-cloud-cli-gke-gcloud-auth-plugin
    • google-cloud-cli-kpt
    • google-cloud-cli-kubectl-oidc
    • google-cloud-cli-local-extract
    • google-cloud-cli-minikube
    • google-cloud-cli-nomos
    • google-cloud-cli-pubsub-emulator
    • google-cloud-cli-skaffold
    • google-cloud-cli-spanner-emulator
    • google-cloud-cli-terraform-validator
    • google-cloud-cli-tests
    • kubectl

    Por ejemplo, el componente google-cloud-cli-app-engine-java se puede instalar de la siguiente manera:

    sudo dnf install google-cloud-cli-app-engine-java
  5. Ejecuta gcloud init para comenzar:
    gcloud init

Cambia a una versión inferior de la gcloud CLI

Si deseas volver a una versión específica de gcloud CLI, en la que VERSION tiene el formato 123.0.0, ejecuta: sudo dnf downgrade google-cloud-cli-VERSION Las diez actualizaciones más recientes siempre estarán disponibles en el repositorio. NOTA: Para las versiones anteriores a la 371.0.0, el nombre del paquete es google-cloud-sdk.

macOS
  1. Confirma que tienes una versión compatible de Python:
    • Para comprobar tu versión actual de Python, ejecuta python3 -V o python -V. Las versiones compatibles son Python 3.8 a 3.12.
    • La secuencia de comandos de instalación principal ofrece la instalación de Python 3.11 de CPython.
    • De lo contrario, para instalar una versión de Python compatible, visita las Python.org Versiones de Python para macOS.
    • Si tienes varios intérpretes de Python instalados en tu máquina, configura la variable de entorno CLOUDSDK_PYTHON dentro de tu shell para que apunte a la ruta de acceso de tu intérprete preferido.
    • Para obtener información sobre cómo elegir y configurar tu intérprete de Python, consulta gcloud topic startup.
  2. Descarga una de las siguientes opciones:
  3. Plataforma Paquete Tamaño Suma de verificación SHA256
    macOS de 64 bits

    (x86_64)

    google-cloud-cli-479.0.0-darwin-x86_64.tar.gz 52.0 MB 4e79437b3c973a2c8b7a0915b778875012a0c6724ba88d98bcb3bae367b375ae
    macOS de 64 bits

    (ARM64, Apple M1 silicon)

    google-cloud-cli-479.0.0-darwin-arm.tar.gz 52.0 MB 7316ee41298a8db36f3e1a72115f491fc08214c7f7b374e7eb87cec3b2f2debc
    macOS de 32 bits

    (x86)

    google-cloud-cli-479.0.0-darwin-x86.tar.gz 50.7 MB 1a6230246525ff948e55de8b9e1c394dfeeccdfa809c75d613a61fb989fab8fe
    1. Extrae el archivo a cualquier ubicación de tu sistema de archivos (de preferencia, en tu directorio principal). Para hacer esto en macOS, abre el archivo .tar.gz descargado en la ubicación preferida.

      Para reemplazar una instalación existente, quita el directorio google-cloud-sdk existente y extrae el archivo en la misma ubicación.

    2. Usa la secuencia de comandos de instalación para agregar las herramientas de la gcloud CLI a tu PATH. También puedes habilitar la finalización de comandos para tu shell, la recopilación de estadísticas de uso y la instalación de Python 3.11 (opcional).

      Ejecuta la secuencia de comandos (desde la raíz de la carpeta que extrajiste en el último paso) con este comando:

      ./google-cloud-sdk/install.sh
      
      This can also be done non-interactively (for example, using a script) by providing preferences as flags. To describe the available flags, run:
      ./google-cloud-sdk/install.sh --help
      
      To run the install script with screen reader mode on:
      ./google-cloud-sdk/install.sh --screen-reader=true
      
      Open a new terminal so that the changes take effect.
    3. To initialize the gcloud CLI, run gcloud init:
    4. ./google-cloud-sdk/bin/gcloud init
      
    5. Optional. Install additional components using the component manager.
Windows
    The Google Cloud CLI works on Windows 8.1 and later and Windows Server 2012 and later.
  1. Download the Google Cloud CLI installer.

    Alternatively, open a PowerShell terminal and run the following PowerShell commands:

    (New-Object Net.WebClient).DownloadFile("https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe", "$env:Temp\GoogleCloudSDKInstaller.exe")
    
    & $env:Temp\GoogleCloudSDKInstaller.exe
        
  2. Inicia el instalador y sigue las instrucciones. El instalador está firmado por Google LLC.

    Si usas un lector de pantalla, marca la casilla de verificación Activar el modo de lector de pantalla. Esta opción configura gcloud para usar herramientas de seguimiento de estado en lugar de íconos giratorios Unicode, mostrar el progreso como un porcentaje y compactar tablas. Para obtener más información, consulta la guía de funciones de accesibilidad.

  3. Google Cloud CLI requiere Python. Las versiones compatibles son Python 3.8 a 3.12. De forma predeterminada, la versión de Windows de Google Cloud CLI incluye Python 3. Para usar Google Cloud CLI, tu sistema operativo debe poder ejecutar una versión compatible de Python.

    El instalador instala todas las dependencias necesarias, incluida la versión de Python correspondiente. Si bien Google Cloud CLI instala y administra Python 3 de forma predeterminada, puedes usar una instalación de Python existente si desmarcas la opción para instalar Python incluido en el paquete. Consulta gcloud topic startup para aprender a usar una instalación de Python existente.

  4. Una vez completada la instalación, el instalador te da la opción de crear menús de inicio y accesos directos de escritorio, iniciar la shell de la Google Cloud CLI y configurar la gcloud CLI. Asegúrate de dejar las opciones para iniciar la shell y configurar la instalación. El instalador inicia una ventana de terminal y ejecuta el comando gcloud init.

  5. La instalación predeterminada no incluye las extensiones de App Engine necesarias para implementar una aplicación con los comandos de gcloud. Estos componentes se pueden instalar con el administrador de componentes de la gcloud CLI.
Sugerencias para la solución de problemas:
  • Si la instalación no se hace correctamente debido a que el comando find no se reconoce, asegúrate de que la variable de entorno PATH esté configurada para incluir la carpeta que contiene find. Por lo general, esto es C:\WINDOWS\system32;.
  • Si desinstalaste gcloud CLI, debes reiniciar el sistema antes de volver a instalarla.
  • Si la descompresión falla, ejecuta el instalador como administrador.

Realiza actualizaciones con el comando components update: gcloud components update.

Configura las credenciales para acceder a datos protegidos

Para acceder a los datos protegidos o escribir en un bucket protegido, debes configurar las credenciales (es decir, autenticarte). Por ejemplo, si alguien más creó una cuenta de Cloud Storage y subió datos a los que solo puedes acceder tú o personas específicas, debes configurar tus credenciales en el servicio de Cloud Storage para poder acceder a estos datos.

Cuando se usa gsutil como parte de Google Cloud CLI, se usa OAuth2 para autenticar y autorizar el acceso a los recursos de Cloud Storage. Para establecer el acceso, ejecuta el comando gcloud init y sigue las instrucciones proporcionadas en la línea de comandos, que incluyen el acceso a tu cuenta de usuario. Ten en cuenta que es probable que ya hayas realizado esta configuración si seguiste los pasos de instalación anteriores. Si ya ejecutaste gcloud init, cuando vuelvas a ejecutar el comando, se te preguntará si deseas volver a inicializar la configuración o crear una nueva. Para obtener más información, consulta Inicializa Google Cloud CLI.

Eso es todo. Está todo listo para acceder a los datos protegidos. Para ver una lista de los comandos de gsutil, escribe gsutil en el símbolo del sistema.

Soluciona problemas

Si intentas autenticar gsutil con el comando gcloud init, pero aún no puedes acceder a los objetos o buckets esperados, el sistema puede tener la versión independiente y heredada de gsutil y la versión incluida en la Google Cloud CLI instalada en ella. Ejecuta el comando gsutil version -l y verifica el valor de using cloud sdk. Si es False, tu sistema usa la versión independiente de gsutil cuando ejecutas los comandos. Se recomienda que quites la versión independiente de gsutil de tu sistema. Sin embargo, puedes autenticarte de forma alternativa con gsutil config -a o gsutil config -e.

Autentica con HMAC

Aunque OAuth 2.0 es la forma recomendada de autenticar gsutil, también puedes usar claves HMAC para tus credenciales. Para la autenticación con HMAC, usa el siguiente comando:

gsutil config -a

Usar este comando te lleva a través de un proceso de autenticación en el que se te solicita el ID de acceso y el secreto asociados con la clave HMAC.

Cuando realizas la autenticación con claves HMAC, debes inhabilitar el paso de credenciales desde la Google Cloud CLI mediante el comando gcloud config set pass_credentials_to_gsutil false.

Habilita la mTLS

También te recomendamos habilitar la TLS mutua (mTLS). Cuando se habilita mTLS en tu dispositivo, este intentará conectarse a storage.mtls.googleapis.com. Antes de que se permita la conexión, Cloud Storage verificará el certificado de tu dispositivo.

La manera más sencilla de obtener un certificado es a través de la Google Cloud CLI. Puedes configurar uno de forma manual en el archivo .boto si configuras los siguientes valores en “Credenciales”:

  1. use_client_certificate: Una marca que controla si usa la mTLS o no
  2. cert_provider_command: Un comando de shell que imprime un certificado en stdout para que gsutil lo lea

Pruébalo tú mismo

Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud Storage en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.

Probar Cloud Storage gratis