Manage Storage Configuration using gsutil

Atelier 10 minutes universal_currency_alt Sans frais show_chart Débutant
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Ce contenu n'est pas encore optimisé pour les appareils mobiles.
Pour une expérience optimale, veuillez accéder à notre site sur un ordinateur de bureau en utilisant un lien envoyé par e-mail.

Google Cloud self-paced labs logo

Overview

In this lab, you will use gsutil to create a bucket and perform operations on objects. gsutil is a Python application that lets you access Cloud Storage from the command line. The gsutil tool has commands such as mb and cp to perform operations. Each command has a set of options that are used to customize settings further.

What you'll learn to do

  • Create a bucket
  • Copy files from a local folder to a bucket
  • Synchronize the contents of the local folder with the contents of the bucket
  • Change access control permissions on objects

Setup and requirements

  • Labs are timed and cannot be paused. The timer starts when you click Start Lab.
  • The included cloud terminal is preconfigured with the gcloud SDK.
  • Use the terminal to execute commands and then click Check my progress to verify your work.

Get the sample code and set variables

  1. In the cloud terminal session, execute the following command to download sample data for this lab from a git repository:
git clone https://github.com/GoogleCloudPlatform/training-data-analyst
  1. Change to the blogs directory:
cd training-data-analyst/blogs
  1. Set some environment variables:
PROJECT_ID=`gcloud config get-value project` BUCKET=${PROJECT_ID}-bucket

Task 1. Create a bucket

  • Run the following command to create a bucket with multi-regional storage class:
gsutil mb -c multi_regional gs://${BUCKET}

The gsutil mb command is used to create a new Google Cloud Storage bucket. The -c flag allows you to specify the storage class for the bucket, and the multi_regional storage class is designed for data that needs to be available in multiple regions (ideal for high availability and low-latency access).

Click Check my progress to verify the objective.

Create a bucket

Task 2. Upload objects to your bucket

  • Run the following to copy the endpointslambda object to your bucket:
gsutil -m cp -r endpointslambda gs://${BUCKET}

The gsutil -m cp -r command is used to copy files or directories to a Google Cloud Storage bucket

If you have a large number of files to transfer, you might want to use the -m option, to perform a parallel (multi-threaded/multi-processing) copy for faster performance. The -r option allows gsutil to recurse through directories.

Click Check my progress to verify the objective.

Upload objects to your bucket

Task 3. List objects

  • To list objects in your bucket, execute the following command:
gsutil ls gs://${BUCKET}/*

This command lists all objects (files and directories) inside a specific bucket in Google Cloud Storage, including any nested objects.

Task 4. Sync changes with bucket

  1. Use the following mv command to rename and rm command to delete some files:
mv endpointslambda/Apache2_0License.txt endpointslambda/old.txt rm endpointslambda/aeflex-endpoints/app.yaml
  1. Now synchronize the local changes with the bucket:
gsutil -m rsync -d -r endpointslambda gs://${BUCKET}/endpointslambda

In this command, the -d option deletes files from the target if they're missing in the source (in this case, it deletes app.yaml from the bucket). The -r option runs the command recursively on directories.

  1. To verify that the bucket is now in sync with your local changes, list the files in the bucket again:
gsutil ls gs://${BUCKET}/*

Click Check my progress to verify the objective.

Sync changes with bucket

Task 5. Make objects public

  1. To allow public access to all files under the endpointslambda folder in your bucket, execute the following command:
gsutil -m acl set -R -a public-read gs://${BUCKET}

The above command is used to set access control lists (ACLs) on Cloud Storage buckets or objects. This makes all the objects in a bucket publicly readable.

The -m flag enables parallel processing, which means multiple operations (like setting ACLs on many files) will be executed simultaneously, speeding up the process. The -R flag applies the ACL recursively to all objects inside the bucket. Without this, it would only apply to the bucket itself, not its contents.

  1. To confirm files are viewable by the public, open the following link in a new incognito or private browser window, replacing <your-bucket-name> with the full name of your bucket, not the environment variable:
http://storage.googleapis.com/<your-bucket-name>/endpointslambda/old.txt

This URL uses the Cloud Storage API link to view the object without authentication. Learn more about accessing public data from the Accessing public data documentation.

Task 6. Copy with different storage class

gsutil cp -s nearline ghcn/ghcn_on_bq.ipynb gs://${BUCKET}

The gsutil cp command is used to copy files from one location to another, either within Cloud Storage or from a local file system to Cloud Storage and -s flag specifies the storage class for the file being uploaded.

Click Check my progress to verify the objective.

Copy with different storage class

Task 7. Check storage classes

  1. Run the following to check the storage classes and view other detailed information about the objects in your bucket:
gsutil ls -Lr gs://${BUCKET} | more
  1. Press the space key to continue viewing the rest of the command's output.

The output shows that the ghcn_on_bq.ipynb object has NEARLINE storage class while the other objects have MULTI_REGIONAL storage class.

Output:

gs://qwiklabs-xxx-xxxxxxxxxxxxxxxx-bucket/ghcn_on_bq.ipynb: Creation time: Tue, 13 Aug 2019 20:19:27 GMT Update time: Tue, 13 Aug 2019 20:19:27 GMT Storage class: NEARLINE Content-Length: 980176 Content-Type: application/octet-stream ... gs://qwiklabs-xxx-xxxxxxxxxxxxxxxx-bucket/endpointslambda/: gs://qwiklabs-xxx-xxxxxxxxxxxxxxxx-bucket/endpointslambda/README.md: Creation time: Tue, 13 Aug 2019 20:03:29 GMT Update time: Tue, 13 Aug 2019 20:15:43 GMT Storage class: MULTI_REGIONAL Content-Length: 452 Content-Type: text/markdown ...
  1. You can use Ctrl + c to return to the command line.

Congratulations

You have now learned how to perform operations on Cloud Storage buckets and objects!

Next steps/learn more

For complete information about the gsutil command-line options, see:

Google Cloud training and certification

...helps you make the most of Google Cloud technologies. Our classes include technical skills and best practices to help you get up to speed quickly and continue your learning journey. We offer fundamental to advanced level training, with on-demand, live, and virtual options to suit your busy schedule. Certifications help you validate and prove your skill and expertise in Google Cloud technologies.

Manual Last Updated May 21, 2025

Lab Last Tested May 21, 2024

Copyright 2026 Google LLC. All rights reserved. Google and the Google logo are trademarks of Google LLC. All other company and product names may be trademarks of the respective companies with which they are associated.

Avant de commencer

  1. Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
  2. Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
  3. En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.

Utilisez la navigation privée

  1. Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
  2. Cliquez sur Ouvrir la console en navigation privée

Connectez-vous à la console

  1. Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
  2. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
  3. Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible

Un atelier à la fois

Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci

Utilisez la navigation privée pour effectuer l'atelier

Le meilleur moyen d'exécuter cet atelier consiste à utiliser une fenêtre de navigation privée. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.