Auf dieser Seite wird beschrieben, wie gsutil eine boto-Konfigurationsdatei verwendet. Außerdem finden Sie ein Beispiel für eine boto-Zusammenarbeit. Die boto-Konfigurationsdatei wird auch von boto verwendet, dem Amazon S3 SDK for Python.
Konfigurationsdatei
Die boto-Konfigurationsdatei enthält Werte, die das Verhalten von gsutil steuern. Die Variable prefer_api
bestimmt beispielsweise, welche API gsutil bevorzugt verwendet. Die Variablen der boto-Konfigurationsdatei können durch direkte Bearbeitung der Konfigurationsdatei geändert werden. Die meisten Nutzer müssen diese Variablen zwar nicht bearbeiten, tun dies aber in der Regel aus einem der folgenden Gründe:
- Um gsutil für die Arbeit über einen Proxy einzurichten.
- Um vom Kunden verwaltete oder vom Kunden bereitgestellte Verschlüsselungsschlüssel zu verwenden.
- Für eine spezifische Anpassung des globalen gsutil-Verhaltens.
Speicherort
Der Standardspeicherort für die boto-Konfigurationsdatei ist das Basisverzeichnis des Nutzers, ~/.boto unter Linux und macOS bzw. %HOMEDRIVE%%HOMEPATH% unter Windows. Sie können den Speicherort der Konfigurationsdatei mit dem Befehl gsutil version -l
abrufen.
Mit einer entsprechenden Einstellung der Umgebungsvariablen BOTO_CONFIG
können Sie überschreiben, wo gsutil die Konfigurationsdatei erwartet. Sie können auch einen Pfad zu boto-Konfigurationsdateien einrichten, die geladen werden sollen. Legen Sie dazu die Umgebungsvariable BOTO_PATH
mithilfe eines durch :
getrennten Pfads (oder ;
für Windows) fest. Wenn Sie beispielsweise die Umgebungsvariable BOTO_PATH
auf Folgendes festlegen:
/etc/projects/my_group_project.boto.cfg:/home/mylogin/.boto
lädt gsutil jede im Pfad gefundene Konfigurationsdatei der Reihe nach. Dies ist nützlich, wenn Sie einen gemeinsamen Konfigurationsstatus für viele Nutzer einrichten möchten. Ein solches Szenario für die Datenfreigabe und Zusammenarbeit finden Sie im Beispiel zur Verwendung der Konfigurationsdatei.
Struktur
Die Konfigurationsdatei enthält eine Reihe von Abschnitten: [Credentials]
, [Boto]
, [GSUtil]
und [OAuth2]
. Im Folgenden sind die derzeit definierten Konfigurationseinstellungen nach Abschnitten aufgeführt. Ihre Verwendung wird direkt in der boto-Konfigurationsdatei in den Kommentaren vor jeder Einstellung dokumentiert:
[Credentials] aws_access_key_id aws_secret_access_key gs_access_key_id gs_host gs_host_header gs_json_host gs_json_host_header gs_json_port gs_oauth2_refresh_token gs_port gs_secret_access_key gs_service_client_id gs_service_key_file gs_service_key_file_password s3_host s3_host_header s3_port [Boto] proxy proxy_type proxy_port proxy_user proxy_pass proxy_rdns http_socket_timeout ca_certificates_file https_validate_certificates debug max_retry_delay num_retries [GoogleCompute] service_account [GSUtil] check_hashes content_language decryption_key1 ... 100 default_api_version disable_analytics_prompt encryption_key json_api_version max_upload_compression_buffer_size parallel_composite_upload_component_size parallel_composite_upload_threshold sliced_object_download_component_size sliced_object_download_max_components sliced_object_download_threshold parallel_process_count parallel_thread_count gzip_compression_level prefer_api resumable_threshold resumable_tracker_dir (deprecated in 4.6, use state_dir) rsync_buffer_lines software_update_check_period state_dir tab_completion_time_logs tab_completion_timeout task_estimation_threshold test_cmd_regional_bucket_location test_notification_url use_magicfile test_hmac_service_account test_hmac_alt_service_account test_hmac_list_service_account [OAuth2] client_id client_secret oauth2_refresh_retries provider_authorization_uri provider_label provider_token_uri token_cache
Achten Sie beim Bearbeiten der Datei darauf, dass Sie keine Einstellungsnamen wie gs_access_key_id
falsch bearbeiten und die Abschnittsbegrenzungen wie [Credentials]
nicht entfernen.
Auf die neueste Konfigurationsdatei aktualisieren
Neue, steuerbare Konfigurationsfunktionen werden der boto-Konfigurationsdatei im Laufe der Zeit hinzugefügt, aber die meisten gsutil-Nutzer erstellen eine Konfigurationsdatei einmal und behalten sie dann lange Zeit. Dies bedeutet, dass neue Features nicht sichtbar sind, wenn Sie auf eine neuere Version von gsutil aktualisieren. Wenn Sie die neueste Konfigurationsdatei mit den neuesten Einstellungen und der entsprechenden Dokumentation abrufen möchten, benennen Sie die aktuelle Datei um (z. B. in .boto_old
), führen Sie gcloud init
aus – Sie können auch, wenn Sie eine Legacy-Standalone-Version von gustil verwenden gsutil config
mit den Flags -a
oder -e
verwenden – und übertragen dann alle Konfigurationseinstellungen aus der alten Datei, die Sie behalten möchten, in die neue erstellte Datei. Beachten Sie jedoch, dass Ihre vorherigen OAuth2-Anmeldeinformationen ungültig werden, wenn Sie OAuth2-Anmeldeinformationen verwenden und den OAuth2-Konfigurationsprozess noch einmal durchlaufen.
Beispiel für das Verwenden der Konfigurationsdatei
In diesem Beispiel möchte ein kleines Unternehmen Cloud Storage als Speichersystem für seine Mitarbeiter verwenden. Als IT-Administrator erstellen Sie in der Google Cloud Console ein Projekt und erstellen Buckets für jeden Mitarbeiter. Damit Sie den Mitarbeitern die Verwendung von Cloud Storage erleichtern, legen Sie unternehmensweite Einstellungen wie beispielsweise eine Proxykonfiguration und Schwellenwerte für parallele zusammengesetzte Uploads fest und speichern Sie sie in einer zentralen Datei, auf die Mitarbeiter in ihrem BOTO-Konfigurationspfad verweisen können. Auf diese Weise müssen die Mitarbeiter die freigegebenen Teile der Konfiguration nicht manuell festlegen und Sie als Administrator können diese freigegebenen Konfigurationen bei Bedarf problemlos ändern.
Gehen Sie dazu folgendermaßen vor:
Erstellen Sie eine zentrale boto-Konfigurationsdatei, die von allen Mitarbeitern gelesen werden kann.
Verwenden Sie dazu
gcloud init
.Die boto-Konfigurationsdatei kann zum Beispiel Folgendes enthalten:
[Boto] proxy = yourproxy.com proxy_port = 8080 proxy_type = http [GSUtil] parallel_composite_upload_threshold = 150M
Weisen Sie die Mitarbeiter an, das Google Cloud CLI zu installieren.
Während der Installation müssen die Mitarbeiter die vom Unternehmen verwendete Projekt-ID angeben. Außerdem müssen sie individuelle Anmeldedaten für die Authentifizierung generieren, da Sie Anmeldedaten niemals zentral freigeben sollten.
Weisen Sie die Mitarbeiter an, eine BOTO_PATH-Umgebungsvariable hinzuzufügen.
Die BOTO_PATH-Umgebungsvariable enthält den Pfad zur zentral gespeicherten Konfigurationsdatei, gefolgt von der lokalen Konfigurationsdatei des jeweiligen Mitarbeiters. Befindet sich die zentrale Konfigurationsdatei beispielsweise im Verzeichnis
centralhub/
, kann die BOTO_PATH-Umgebungsvariable für Nutzerjane
so aussehen:BOTO_PATH =/centralhub/boto.cfg:home/jane/.boto
Wenn Mitarbeiter gsutil ausführen, verwenden sie automatisch die Konfiguration, die in der zentralen boto-Datei festgelegt ist. Bei Bedarf kann der Administrator die Proxyeinstellungen, den Schwellenwert für parallele zusammengesetzte Uploads und andere Einstellungen in der zentralen Konfigurationsdatei ändern. Diese Änderungen gelten dann für alle Mitarbeiter, die die zentrale Konfigurationsdatei verwenden.