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 depósitos.

Requisitos del sistema

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

  • Si piensas usar objetos compuestos, debes instalar crcmod compilado. En Windows, solo está disponible para Python de 32 bits.

Instalación de gsutil

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

Instala gsutil como parte del SDK de Google Cloud

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

Linux
  1. El SDK de Cloud requiere Python. Versiones compatibles: Python 3 (de preferencia de 3.5 a 3.8) y Python 2 (2.7.9 o versiones posteriores).

    python --version
    Para obtener más información sobre cómo elegir y configurar tu intérprete de Python, consulta gcloud topic startup.
  2. Descarga una de estas opciones:
  3. Plataforma Paquete Tamaño Suma de verificación SHA256
    Linux de 64 bits

    (x86_64)

    google-cloud-sdk-323.0.0-linux-x86_64.tar.gz 111.4 MB 3c7eb5b1d7a6d1111b195cc6892b1329585f0253559aa502731fd8fa31c435a9
    Linux de 32 bits

    (x86)

    google-cloud-sdk-323.0.0-linux-x86.tar.gz 85.3 MB 6110dbd6abb7a8350d72dba01a57a7dac33108596852c35dfdc2019dd2f66856

  4. Como alternativa, ejecuta lo siguiente para descargar el archivo de Linux de 64 bits desde la línea de comandos:

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

    Para el archivo de 32 bits, ejecuta lo siguiente:

    curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-323.0.0-linux-x86.tar.gz
  5. Extrae el contenido del archivo a cualquier ubicación en tu sistema de archivos. Si deseas reemplazar una instalación existente, quita el directorio google-cloud-sdk existente y extrae el archivo en la misma ubicación.
  6. Opcional: Usa la secuencia de comandos de instalación para agregar las herramientas del SDK de Cloud a tu ruta. También podrás habilitar la finalización de comandos para tu shell y la recopilación de estadísticas de uso. Ejecuta la secuencia de comandos con este comando:
    ./google-cloud-sdk/install.sh
    
    Esto también se puede hacer de forma no interactiva (por ejemplo, con una secuencia de comandos) o si proporcionas preferencias como marcas. Estas se describen a continuación:
    ./google-cloud-sdk/install.sh --help
    
    Abre una terminal nueva para que los cambios tengan efecto.
  7. Ejecuta gcloud init para inicializar el SDK:
  8. ./google-cloud-sdk/bin/gcloud init
    
  9. Opcional: Instala los componentes adicionales mediante el administrador de componentes.
Debian/Ubuntu

Contenido del paquete

El SDK de Cloud está disponible en formato de paquete para instalarlo en sistemas Debian y Ubuntu. Este paquete solo contiene los comandos gcloud, gcloud alpha, gcloud beta, gsutil y bq. No incluye kubectl o las extensiones de App Engine necesarias para implementar una aplicación con los comandos gcloud. Si quieres estos componentes, debes instalarlos por separado como se describe más adelante en esta sección.

Requisitos

Antes de instalar el SDK de Cloud, asegúrate de que tu sistema operativo sea una de las siguientes opciones:

Instalación
  1. Agrega el URI de distribución del SDK de Cloud como una fuente de paquete:
    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
    Asegúrate de que tengas instalado apt-transport-https:
    sudo apt-get install apt-transport-https ca-certificates gnupg

    Sugerencia para la solución de problemas: Si tu distribución no admite la opción “signed-by”, ejecuta este comando en su lugar:

    echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

    Sugerencia para la solución de problemas: Asegúrate de no tener entradas duplicadas del repositorio cloud-sdk.

  2. Importa la clave pública de Google Cloud:
    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -

    Sugerencia para la solución de problemas: Si no puedes obtener las actualizaciones más recientes debido a una clave vencida, obtén el archivo de claves apt-get.gpg más reciente.

    Sugerencia para la solución de problemas: Si el comando apt-key de tu distribución no admite el argumento --keyring, ejecuta este comando en su lugar:

    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

  3. Instala y actualiza el SDK de Cloud:
    sudo apt-get update && sudo apt-get install google-cloud-sdk
    Para obtener más opciones de apt-get, como la inhabilitación de mensajes o las ejecuciones de prueba, consulta las páginas del manual de apt-get.

    Sugerencia de Docker: Si instalas el SDK de Cloud en una imagen de Docker, mejor usa un solo paso 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. De manera opcional, instala cualquiera de estos componentes adicionales:
    • 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

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

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

Cambia a una versión inferior del SDK de Cloud

Si deseas volver a una versión específica del SDK de Cloud, en la que “VERSION” tiene el formato “123.0.0”, ejecuta sudo apt-get update && sudo apt-get install google-cloud-sdk=123.0.0-0: Las diez actualizaciones más recientes siempre estarán disponibles en el repositorio.

Red Hat/Fedora/CentOS

Contenido del paquete

El SDK de Cloud está disponible en formato de paquete para su instalación en sistemas Red Hat Enterprise Linux 7, Red Hat Enterprise Linux 8, Fedora 32 y CentOS 7. 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 de gcloud, que se pueden instalar por separado como se describe más adelante en esta sección.

Instalación
  1. Actualiza DNF con la información del repositorio del SDK de Cloud:
    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-el7-x86_64
    enabled=1
    gpgcheck=1
    repo_gpgcheck=1
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
           https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOM
    
  2. Instala el SDK de Cloud:
    dnf install google-cloud-sdk
  3. De manera opcional, instala cualquiera de estos componentes adicionales:
    • 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

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

    dnf install google-cloud-sdk-app-engine-java
  4. Ejecuta gcloud init para comenzar:
    gcloud init

Cambia a una versión inferior del SDK de Cloud

Si deseas volver a una versión específica del SDK de Cloud, en la que “VERSION” tiene el formato “123.0.0”, ejecuta sudo dnf downgrade google-cloud-sdk-VERSION: Las diez actualizaciones más recientes siempre estarán disponibles en el repositorio.

macOS
  1. El SDK de Cloud requiere Python. Versiones compatibles: Python 3 (de preferencia de 3.5 a 3.8) y Python 2 (2.7.9 o versiones posteriores). Las versiones modernas de macOS incluyen la versión apropiada de Python requerida para el SDK de Cloud.
      python -V
      
    Para obtener más información sobre cómo elegir y configurar tu intérprete de Python, consulta gcloud topic startup.
  2. Descarga una de estas opciones:
  3. Plataforma Paquete Tamaño Suma de verificación SHA256
    macOS de 64 bits

    (x86_64)

    google-cloud-sdk-323.0.0-darwin-x86_64.tar.gz 109.0 MB 17db4d373eb2607fc1e6d6c49881d0370b9e02415f52a35654a48e78233b3f7e
    macOS de 32 bits

    (x86)

    google-cloud-sdk-323.0.0-darwin-x86.tar.gz 86.4 MB d8f11372d7b69e19c6e320cdbd4f3b86fad44bbd72406a7bb5eca85389b9f4d3

    1. Extrae el archivo a cualquier ubicación de tu sistema de archivos; preferentemente, en tu directorio principal. En macOS, esto se logra abriendo el archivo .tar.gz descargado en la ubicación preferida.

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

    2. Opcional: Usa la secuencia de comandos de instalación para agregar las herramientas del SDK de Cloud a tu ruta. También podrás habilitar la finalización de comandos para tu shell y la recopilación de estadísticas de uso. Ejecuta la secuencia de comandos con este comando:
      ./google-cloud-sdk/install.sh
      
      Esto también se puede hacer de forma no interactiva (por ejemplo, con una secuencia de comandos) o si proporcionas preferencias como marcas. Estas se describen a continuación:
      ./google-cloud-sdk/install.sh --help
      
      Si quieres ejecutar la secuencia de comandos de instalación con el modo de lector de pantalla activado, haz lo siguiente:
      ./google-cloud-sdk/install.sh --screen-reader=true
      
      Abre una terminal nueva para que los cambios tengan efecto.
    3. Ejecuta gcloud init para inicializar el SDK:
    4. ./google-cloud-sdk/bin/gcloud init
      
    5. Opcional: Instala los componentes adicionales mediante el administrador de componentes.
Windows
  1. Descarga el instalador del SDK de Cloud.

    También puedes abrir una terminal de PowerShell y ejecutar los siguientes comandos.

    (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 deseas habilitar el modo de lector de pantalla, selecciona la opción Activar el modo lector de pantalla para brindar una experiencia de lector de pantalla más optimizada. Para obtener más información sobre la experiencia del lector de pantalla del SDK de Cloud, consulta la Guía de funciones de accesibilidad.

    Diálogo de bienvenida de la configuración del SDK de Google Cloud para Windows con la casilla de verificación para habilitar el modo de lector de pantalla

  3. El SDK de Cloud requiere Python. Versiones compatibles: Python 3 (de preferencia de 3.5 a 3.8) y Python 2 (2.7.9 o versiones posteriores).

    Se instalarán todas las dependencias necesarias, incluida la versión de Python correspondiente. Si bien en la actualidad el SDK de Cloud usa Python 3 de forma predeterminada, puedes desmarcar la opción “Install Bundled Python” para usar una instalación existente si lo necesitas.

  4. Después de que se haya completado la instalación, el instalador presenta varias opciones:

    Mensajes del instalador de Windows

    Asegúrate de seleccionar lo siguiente:

    • Iniciar el SDK de Google Cloud Shell
    • Ejecutar 'gcloud init'

    El instalador inicia una ventana de la 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 gcloud. Estos componentes se pueden instalar con el administrador de componentes del SDK de Cloud.
Sugerencias para la solución de problemas:
  • Si el SDK de Cloud no se ejecuta después de instalar la versión 274.0.0, consulta este error de seguimiento para conocer las soluciones más recientes.
  • Si la instalación no se completa de forma correcta 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, esa carpeta es C:\WINDOWS\system32;.
  • Después de desinstalar el SDK de Cloud, deberás reiniciar el sistema antes de volver a instalarlo.

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

Para aprender a usar gsutil, consulta la guía de inicio rápido del uso de la herramienta gsutil o ejecuta gsutil help.

Métodos de instalación alternativos

Hay varias formas de instalar gsutil como un producto independiente. Es posible que prefieras uno de estos métodos si no quieres ninguno de los otros componentes que vienen con el SDK de Cloud o si administras paquetes con PyPI.

Si instalas gsutil como un elemento independiente, se generará un requisito adicional del sistema que establece que debes tener Python instalado en tu computadora. gsutil admite de forma oficial la versión secundaria 2.7.x hasta la 3.7.x. Python se instala de forma predeterminada en la mayoría de las distribuciones de Linux y macOS, pero no en Windows. Debes instalar Python para poder ejecutar gsutil en Windows.

Expande el método deseado para las instrucciones.

Configura las credenciales para acceder a datos protegidos

La instalación de gsutil te permite descargar objetos de acceso público y acceder a ellos, pero para acceder a 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.

Si instalaste gsutil como parte del SDK de Google Cloud, sigue estas instrucciones. De lo contrario, consulta la sección Autentica gsutil independiente.

Autentica el SDK de Google Cloud

Cuando se usa gsutil como parte del SDK de Google Cloud, se usa OAuth2 para autenticar y autorizar el acceso. Ten en cuenta que es posible que ya hayas realizado los pasos siguientes si seguiste las instrucciones en la sección Instala gsutil como parte del SDK de Google Cloud anterior. Si ya ejecutaste gcloud init, se te preguntará si deseas volver a inicializar la configuración o crear una nueva.

  1. Abre una instancia del símbolo del sistema.

  2. Ejecuta gcloud init en el símbolo del sistema.

    Recibirás el resultado siguiente:

    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. Escribe “Y” y presiona Intro para acceder.

    • El comando imprime una URL y, luego, intenta abrir una ventana del navegador para solicitar acceso a tu proyecto. Si se puede abrir una ventana del navegador, recibirás el resultado siguiente:

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

      Dirígete al paso siguiente.

    • Si trabajas en una máquina local y tu navegador no carga la URL de forma automática, vuelve a intentar usar el comando gcloud init con la marca --console-only:

      gcloud init --console-only
      

      Si usas este comando o si el SDK de Cloud detecta que no se puede abrir un navegador (por ejemplo, si trabajas en una máquina remota), recibirás el resultado siguiente:

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

      Abre un navegador y navega hacia la URL proporcionada.

  4. Si se te solicita, accede con la Cuenta de Google asociada a tus datos de Cloud Storage en la ventana del navegador.

  5. Otorga el acceso.

    • Si la ventana del navegador se abrió de forma automática, revisa los permisos de la aplicación y haz clic en Aceptar cuando estés listo. El código de verificación se envía de forma automática a la herramienta de línea de comandos.

    • Si trabajas en una máquina remota o usaste la marca --console-only, copia el código de verificación de la URL y pégalo en la línea de comandos de la terminal después de Ingresar código de verificación:.

  6. Elige el proyecto predeterminado para esta configuración.

    Después de configurar tus credenciales, la herramienta de línea de comandos gcloud te solicita un proyecto predeterminado para esta configuración y te proporciona una lista de proyectos disponibles. Selecciona un ID del proyecto de la lista.

    Cuando configuras esta propiedad, los comandos de gsutil que requieren un proyecto, como gsutil mb, usan el ID del proyecto predeterminado, a menos que los anules con la marca -p o establezcas la variable de entorno CLOUDSDK_CORE_PROJECT.

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.

Autentica el gsutil independiente

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 la marca -a en el comando gsutil config:

gsutil config -a

Usar este comando te lleva a través de un proceso similar al de la autenticación del gsutil independiente (consulta la sección anterior), excepto que se te solicita el ID de acceso y el secreto asociados con la clave HMAC.

Si usas el SDK de Google Cloud, también debes inhabilitar el paso de credenciales con este 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 del SDK de Google Cloud. 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