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.

Instala 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. Ingresa lo siguiente en un símbolo del sistema:
    curl https://sdk.cloud.google.com | bash
  2. Cuando se te solicite, elige una ubicación en el sistema de archivos (por lo general, en el directorio principal) en la que quieras crear el subdirectorio google-cloud-sdk.
  3. Si deseas agregar herramientas de línea de comandos del SDK de Cloud a tu PATH y habilitar la finalización de comandos, responde y cuando se te solicite.
  4. Reinicia tu shell:
    exec -l $SHELL
  5. Ejecuta gcloud init para inicializar el entorno gcloud:
    gcloud init
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 un origen 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:

macOS
  1. Ingresa lo siguiente en un símbolo del sistema:
    curl https://sdk.cloud.google.com | bash
  2. Cuando se te solicite, elige una ubicación en el sistema de archivos (por lo general, en el directorio principal) en la que quieras crear el subdirectorio google-cloud-sdk.
  3. Si deseas agregar herramientas de línea de comandos del SDK de Cloud a tu PATH y habilitar la finalización de comandos, responde y cuando se te solicite.
  4. Reinicia tu shell:
    exec -l $SHELL
  5. Ejecuta gcloud init para inicializar el entorno gcloud:
    gcloud init
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.

    El SDK de Cloud requiere Python. Las versiones compatibles son las de 3.5 a 3.7, y 2.7.9 o 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.

  3. 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.

  4. 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 depósito 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