Curl verwenden

Last change on 2024-10-16 • Created on 2024-10-16 • ID: ST-4CD56
  1. Erstelle deine S3-Zugangsdaten

    Für eine Schritt-für-Schritt-Anleitung, siehe das Getting Started "S3-Zugangsdaten hinzufügen".

    Denk daran, die Keys nach dem Erstellen lokal abzuspeichern, da es nicht möglich ist, sich den Secret Key erneut anzeigen zu lassen. Weder über die Hetzner Console noch über die API.


  1. Curl Version prüfen

    • curl Version 7.86 oder höher

    Unter Debian, muss das bookworm-backports APT-Repository aktiviert werden. Curl kann anschließend darüber installiert werden.

    Mit curl -V kannst du die Version prüfen.

    Dieses Getting Started verwendet --aws-sigv4 für die Signatur (siehe curl-Dokumentation).


  1. Umgebungsvariablen festlegen

    Ersetze <access_key>, <secret_key>, und <region> (z.B. fsn1) mit den tatsächlichen Informationen und führe den folgenden Befehl aus, um die Umgebungsvariablen in ~/.bashrc hinzuzufügen.

    cat << 'EOF' >> ~/.bashrc
    export ACCESS_KEY="<access_key>"
    export SECRET_KEY="<secret_key>"
    export REGION="<region>"
    export ENDPOINT="${REGION}.your-objectstorage.com"
    EOF

    Aktualisiere nun die Umgebungsvariablen:

    source ~/.bashrc

  1. Buckets verwalten

    • Buckets listen

      curl -sS "https://${ENDPOINT}/" \
        --user "${ACCESS_KEY}:${SECRET_KEY}" \
        --aws-sigv4 "aws:amz:${REGION}:s3" \
        | grep -oP "<Name>\K[^<]+"

    • Bucket erstellen

      Ersetze <bucket_name> mit einem verfügbaren Namen.

      curl \
        -X PUT \
        --user "${ACCESS_KEY}:${SECRET_KEY}" \
        --aws-sigv4 "aws:amz:${REGION}:s3" \
        "https://${ENDPOINT}/<bucket_name>"

    • Bucket löschen

      Beachte, dass ein Bucket nur gelöscht werden kann, wenn er keine vollständigen Objekte enthält (sieh dazu diesen FAQ-Eintrag).

      Ersetze <bucket_name> mit dem tatsächlichen Namen.

      curl \
        -X DELETE \
        --user "${ACCESS_KEY}:${SECRET_KEY}" \
        --aws-sigv4 "aws:amz:${REGION}:s3" \
        "https://${ENDPOINT}/<bucket_name>"

  1. Objekte verwalten

    • Objekte listen

      Ersetze <bucket_name> mit dem tatsächlichen Namen.

    curl -sS "https://<bucket_name>.${ENDPOINT}" \
      --user "${ACCESS_KEY}:${SECRET_KEY}" \
      --aws-sigv4 "aws:amz:${REGION}:s3" \
      | grep -oP "<Key>\K[^<]+"

    • Objekte hochladen

      Ersetze <bucket_name>, <filename> und <local_filename> mit den tatsächlichen Namen.

    curl "https://<bucket_name>.${ENDPOINT}/<filename>" \
      -T "<local_filename>" \
      --user "${ACCESS_KEY}:${SECRET_KEY}" \
      --aws-sigv4 "aws:amz:${REGION}:s3"

    • Objekte herunterladen

      Ersetze <bucket_name>, <filename> und <local_filename> mit den tatsächlichen Namen.

    curl "https://<bucket_name>.${ENDPOINT}/<filename>" \
      -o "<local_filename>" \
      --user "${ACCESS_KEY}:${SECRET_KEY}" \
      --aws-sigv4 "aws:amz:${REGION}:s3"

    • Objekte löschen

      Ersetze <bucket_name> und <filename> mit den tatsächlichen Namen.

    curl "https://<bucket_name>.${ENDPOINT}/<filename>" \
      -X DELETE \
      --user "${ACCESS_KEY}:${SECRET_KEY}" \
      --aws-sigv4 "aws:amz:${REGION}:s3"

Du solltest nun startklar sein, um deine Buckets zu verwalten. Weitere Informationen über verfügbare Funktionen findest du in dem Artikel "Liste unterstützter Actions".


Nächste Schritte: