すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:ossutil 2.0

最終更新日:Mar 12, 2026

ossutil 2.0 は、オペレーティングシステムを問わず Object Storage Service (OSS) の管理を簡素化し、高速なファイルのアップロード、ダウンロード、同期、および管理を実現します。大規模なデータ移行や日常的な運用作業に活用でき、開発者、運用エンジニア、企業にとって理想的なツールです。

オペレーティングシステム

システムアーキテクチャ

ダウンロードリンク

SHA256 チェックサム

Linux

x86_32

ossutil-2.2.1-linux-386.zip

09726a85eb35f863fc584f4fa1ca5e6a8805729083bc29ec91e803f0eb64bcc7

x86_64

ossutil-2.2.1-linux-amd64.zip

fbf1026bd383a5d9bee051cd64a6226c730357ba569491f7c7b91af66560ef1d

arm32

ossutil-2.2.1-linux-arm.zip

30fed1691d774a3d1872cae0fc266122b8f9c68c990199361d974406f7d2ef5a

arm64

ossutil-2.2.1-linux-arm64.zip

b7680e79aec0adc9d42a12b795612680a58efec1fad24b0ceb9e13b2390c6652

macOS

x86_64

ossutil-2.2.1-mac-amd64.zip

a1bf1491037e138e52b0b92cdfd620decdc9e22d8dd1d8699226a8f2596b0cc2

arm64

ossutil-2.2.1-mac-arm64.zip

326bff983e8e02142fc4e68d07f129475f9cbafb9777ed57cd7b6640edd8595c

Windows

x86_32

ossutil-2.2.1-windows-386.zip

36043ddeed88188f36b41b631fae3c6909ffffb661d34bc1d5405863f9064d0c

x86_64

ossutil-2.2.1-windows-amd64.zip

a7c22a0172fdca0e54cb8366f1ae8a869bc6bb64c1899352eb62d8eb9a1a9af0

amd64

ossutil-2.2.1-windows-amd64-go1.20.zip

8670b88437be62053aa4b3d2da7695fa410f451693833534faa7b20e39c8eded

迅速な統合

ossutil 2.0 のコマンドラインインターフェイスをすぐに使い始めるには、以下の手順を実行してください。

image

ossutil のインストール

Linux

  1. unzip ツールをインストールします。

    Alibaba Cloud Linux

    sudo yum install -y unzip

    CentOS

    sudo yum install -y unzip

    Ubuntu

    sudo apt install -y unzip
  2. ご利用のオペレーティングシステムおよびシステムアーキテクチャに応じたインストールパッケージを選択します(Linux x86 32 ビットLinux x86 64 ビットLinux ARM 32 ビット、または Linux ARM 64 ビット)。また、curl を使用してパッケージをダウンロードすることもできます。次の例では、Linux x86_64 システムでの curl の使用方法を示しています。

    curl -o ossutil-2.2.1-linux-amd64.zip https://gosspublic.alicdn.com/ossutil/v2/2.2.1/ossutil-2.2.1-linux-amd64.zip
  3. パッケージをダウンロードしたディレクトリで、以下のコマンドを実行して展開します。

    unzip ossutil-2.2.1-linux-amd64.zip
  4. ossutil-2.2.1-linux-amd64 ディレクトリに移動します。

    cd ossutil-2.2.1-linux-amd64
  5. 現在のディレクトリで、以下のコマンドを実行します。

    chmod 755 ossutil
  6. 以下のコマンドを実行して、ossutil をグローバルに利用可能にします。

    sudo mv ossutil /usr/local/bin/ && sudo ln -s /usr/local/bin/ossutil /usr/bin/ossutil
  7. インストールを確認するには、ossutil コマンドを実行します。

    ossutil

    ossutil のヘルプ情報が表示された場合、インストールは成功しています。

Windows

  1. ossutil をインストールします。

    1. ご利用のオペレーティングシステムおよびシステムアーキテクチャに応じたインストールパッケージを選択します(Windows x86 32 ビットWindows x86 64 ビット、または Windows 7、Windows 8、Windows Server 2008R2)。

    2. ダウンロードした .zip パッケージを任意のフォルダに展開し、展開先のディレクトリに移動します。

    3. 展開した ossutil フォルダのパスをシステム環境変数に追加します。

      1. 現在のディレクトリのパスバーをクリックして、フォルダパスをコピーします。

      2. 環境変数 ダイアログボックスを開きます。システム環境変数 セクションで、Path 変数をダブルクリックします。新規 をクリックし、ossutil フォルダへのパスを新しいエントリに貼り付けます。

    4. インストールを確認するには、ossutil コマンドを実行します。

      ossutil

      ossutil のヘルプ情報が表示された場合、インストールは成功しています。

macOS

  1. ご利用のオペレーティングシステムおよびシステムアーキテクチャに応じたインストールパッケージを選択します(macOS x86 64 ビット または macOS ARM 64 ビット)。また、curl を使用してパッケージをダウンロードすることもできます。次の例では、macOS ARM64 システムでの curl の使用方法を示しています。

    curl -o ossutil-2.2.1-mac-arm64.zip  https://gosspublic.alicdn.com/ossutil/v2/2.2.1/ossutil-2.2.1-mac-arm64.zip
  2. パッケージをダウンロードしたディレクトリで、以下のコマンドを実行して展開します。

    unzip ossutil-2.2.1-mac-arm64.zip
  3. ossutil-2.2.1-mac-arm64 ディレクトリに移動します。

    cd ossutil-2.2.1-mac-arm64
  4. 現在のディレクトリで、以下のコマンドを実行します。

    chmod 755 ossutil
  5. 以下のコマンドを実行して、ossutil をグローバルに利用可能にします。

    sudo mv ossutil /usr/local/bin/ && sudo ln -s /usr/local/bin/ossutil /usr/bin/ossutil
  6. ossutil が正常にインストールされたことを確認します。

    ossutil

    ossutil のヘルプ情報が表示された場合、インストールは成功しています。

ossutil の設定

設定漏れによる操作失敗を防ぐため、ossutil config コマンドのウィザード機能を使用して、AccessKey ID、AccessKey Secret、およびリージョン ID をすばやく設定してください。詳細設定については、「設定ガイド」を参照し、アクセス認証情報の手動設定について確認してください。

次の例では、設定ウィザードを使用して RAM ユーザーの AccessKey ペアをアクセス認証情報としてすばやく設定する方法を示します。

Linux

  1. 設定コマンドを実行します。

    ossutil config
  2. プロンプトが表示されたら、設定ファイルのパスを入力します。デフォルトパスを使用する場合は、Enter キーを押します。

    設定ファイル名を入力してください(ファイル名にはパスを含めることができます。デフォルトは /root/.ossutilconfig です。改行するとデフォルトのファイルが使用されます。他のファイルを指定した場合は、他のコマンドを使用する際に --config-file オプションでそのファイルを指定する必要があります):

    デフォルトでは、ossutil は /root/.ossutilconfig を設定ファイルとして使用します。

  3. プロンプトに従って、AccessKey ID、AccessKey Secret、およびリージョン ID を設定します。

    1. AccessKey ID を入力します。

      Access Key ID を入力してください [****************id]:yourAccessKeyID
    2. AccessKey Secret を入力します。

      Access Key Secret を入力してください [****************sk]:yourAccessKeySecret
    3. OSS データセンターが配置されているリージョンを入力します。値を指定しない場合、デフォルト値 cn-hangzhou が使用されます。

      リージョンを入力してください [ap-southeast-1]:ap-southeast-1
    4. OSS データセンターのエンドポイントを入力します。カスタムエンドポイントを必要としない場合は、このパラメーターをスキップするために Enter キーを押します。

      前のステップでリージョンを設定すると、そのリージョン ID に対応するパブリックエンドポイントがデフォルトで使用されます。たとえば、region-idap-southeast-1 に設定した場合、デフォルトのパブリックエンドポイントは https://oss-ap-southeast-1.aliyuncs.com になります。

      OSS データセンターが配置されているリージョンでカスタムエンドポイントを必要とする場合は、エンドポイント情報を入力します。たとえば、同一リージョン内の他の Alibaba Cloud サービスから OSS にアクセスする場合は、https://oss-ap-southeast-1-internal.aliyuncs.com のような内部エンドポイントを使用します。

      エンドポイントを入力してください(省略可。デフォルトではパブリックエンドポイントを使用)[None]: https://oss-ap-southeast-1-internal.aliyuncs.com

    次の表に、パラメーターを説明します。

    パラメーター

    必須

    説明

    accessKeyID

    はい

    アカウントの AccessKey ペアです。AccessKey ペアの取得方法については、「AccessKey ペアの作成」をご参照ください。

    ROS スクリプトを使用して、OSS 管理権限と AccessKey ペアを持つ RAM ユーザーをすばやく作成する

    Resource Orchestration Service (ROS) コンソールの スタックの作成 ページで、セキュリティ確認 の下にある確認チェックボックスを選択し、作成 をクリックします。

    1.png

    スタックが作成された後、出力 タブから AccessKey ペアをコピーします。

    image

    accessKeySecret

    はい

    Region

    はい

    バケットが配置されているリージョンの ID です。本トピックでは、シンガポール リージョンを例として使用しています。値を ap-southeast-1 に設定します。リージョン ID の詳細については、「リージョンとエンドポイント」をご参照ください。

    endpoint

    いいえ

    バケットが配置されているリージョンのエンドポイントです。エンドポイントを手動で設定しない場合、Region に対応するパブリックエンドポイントが自動的に使用されます。内部エンドポイントは明示的に指定する必要があります。本トピックでは、シンガポール のパブリックエンドポイントを使用しています。値を https://oss-ap-southeast-1.aliyuncs.com に設定します。

    同一リージョン内の他の Alibaba Cloud サービスから OSS にアクセスする場合は、内部エンドポイントを使用します。値を https://oss-ap-southeast-1-internal.aliyuncs.com に設定します。

    さまざまなリージョンのエンドポイントの詳細については、「リージョンとエンドポイント」をご参照ください。

    重要

    コンプライアンスおよびセキュリティの向上を目的としたポリシー変更により、2025年3月20日以降、新しい OSS ユーザーは、中国本土のリージョンにある OSS バケットに対してデータ API オペレーションを実行する際に、カスタムドメイン名(CNAME)を使用する必要があります。これらの操作については、デフォルトのパブリックエンドポイントが制限されています。影響を受ける操作の完全なリストについては、公式アナウンスをご参照ください。HTTPS を使用してデータにアクセスする場合、カスタムドメインに有効な SSL 証明書をバインドする必要があります。これは、コンソールが HTTPS を強制するため、OSS コンソールへのアクセスには必須です

Windows

  1. 設定コマンドを実行します。

    ossutil config
  2. プロンプトが表示されたら、設定ファイルのパスを入力します。デフォルトパスを使用する場合は、Enter キーを押します。

    設定ファイル名を入力してください(ファイル名にはパスを含めることができます。デフォルトは "C:\Users\issuser\.ossutilconfig" です。改行するとデフォルトのファイルが使用されます。他のファイルを指定した場合は、他のコマンドを使用する際に --config-file オプションでそのファイルを指定する必要があります):

    デフォルトでは、ossutil は C:\Users\issuser\.ossutilconfig を設定ファイルとして使用します。

  3. プロンプトに従って、AccessKey ID、AccessKey Secret、およびリージョン ID を設定します。

    1. AccessKey ID を入力します。

      Access Key ID を入力してください [****************id]:yourAccessKeyID
    2. AccessKey Secret を入力します。

      Access Key Secret を入力してください [****************sk]:yourAccessKeySecret
    3. OSS データセンターが配置されているリージョンを入力します。値を指定しない場合、デフォルト値 cn-hangzhou が使用されます。

      リージョンを入力してください [ap-southeast-1]:ap-southeast-1
    4. OSS データセンターのエンドポイントを入力します。カスタムエンドポイントを必要としない場合は、このパラメーターをスキップするために Enter キーを押します。

      前のステップでリージョンを設定すると、そのリージョン ID に対応するパブリックエンドポイントがデフォルトで使用されます。たとえば、region-idap-southeast-1 に設定した場合、デフォルトのパブリックエンドポイントは https://oss-ap-southeast-1.aliyuncs.com になります。

      OSS データセンターが配置されているリージョンでカスタムエンドポイントを必要とする場合は、エンドポイント情報を入力します。たとえば、同一リージョン内の他の Alibaba Cloud サービスから OSS にアクセスする場合は、https://oss-ap-southeast-1-internal.aliyuncs.com のような内部エンドポイントを使用します。

      エンドポイントを入力してください(省略可。デフォルトではパブリックエンドポイントを使用)[None]: https://oss-ap-southeast-1-internal.aliyuncs.com

    次の表に、パラメーターを説明します。

    パラメーター

    必須

    説明

    accessKeyID

    はい

    アカウントの AccessKey ペアです。AccessKey ペアの取得方法については、「AccessKey ペアの作成」をご参照ください。

    ROS スクリプトを使用して、OSS 管理権限と AccessKey ペアを持つ RAM ユーザーをすばやく作成する

    Resource Orchestration Service (ROS) コンソールの スタックの作成 ページで、セキュリティ確認 の下にある確認チェックボックスを選択し、作成 をクリックします。

    1.png

    スタックが作成された後、出力 タブから AccessKey ペアをコピーします。

    image

    accessKeySecret

    はい

    Region

    はい

    バケットが配置されているリージョンの ID です。本トピックでは、シンガポール リージョンを例として使用しています。値を ap-southeast-1 に設定します。リージョン ID の詳細については、「リージョンとエンドポイント」をご参照ください。

    endpoint

    いいえ

    バケットが配置されているリージョンのエンドポイントです。エンドポイントを手動で設定しない場合、Region に対応するパブリックエンドポイントが自動的に使用されます。内部エンドポイントは明示的に指定する必要があります。本トピックでは、シンガポール のパブリックエンドポイントを使用しています。値を https://oss-ap-southeast-1.aliyuncs.com に設定します。

    同一リージョン内の他の Alibaba Cloud サービスから OSS にアクセスする場合は、内部エンドポイントを使用します。値を https://oss-ap-southeast-1-internal.aliyuncs.com に設定します。

    さまざまなリージョンのエンドポイントの詳細については、「リージョンとエンドポイント」をご参照ください。

    重要

    コンプライアンスおよびセキュリティの向上を目的としたポリシー変更により、2025年3月20日以降、新しい OSS ユーザーは、中国本土のリージョンにある OSS バケットでデータ API オペレーションを実行する際に、カスタムドメイン名(CNAME)を使用する必要があります。これらの操作については、デフォルトのパブリックエンドポイントが制限されています。影響を受ける操作の完全なリストについては、公式アナウンスをご参照ください。HTTPS 経由でデータにアクセスする場合は、カスタムドメインに有効な SSL 証明書をバインドする必要があります。これは、コンソールが HTTPS を強制するため、OSS コンソールへのアクセスには必須です。

macOS

  1. 設定コマンドを実行します。

    ossutil config
  2. プロンプトが表示されたら、設定ファイルのパスを入力します。デフォルトパスを使用する場合は、Enter キーを押します。

    設定ファイル名を入力してください(ファイル名にはパスを含めることができます。デフォルトは "/Users/user/.ossutilconfig" です。改行するとデフォルトのファイルが使用されます。他のファイルを指定した場合は、他のコマンドを使用する際に --config-file オプションでそのファイルを指定する必要があります): 

    デフォルトでは、ossutil は /Users/user/.ossutilconfig を設定ファイルとして使用します。

  3. プロンプトに従って、AccessKey ID、AccessKey Secret、およびリージョン ID を設定します。

    1. AccessKey ID を入力します。

      Access Key ID を入力してください [****************id]:yourAccessKeyID
    2. AccessKey Secret を入力します。

      Access Key Secret を入力してください [****************sk]:yourAccessKeySecret
    3. OSS データセンターが配置されているリージョンを入力します。値を指定しない場合、デフォルト値 cn-hangzhou が使用されます。

      リージョンを入力してください [ap-southeast-1]:ap-southeast-1
    4. OSS データセンターのエンドポイントを入力します。カスタムエンドポイントを必要としない場合は、このパラメーターをスキップするために Enter キーを押します。

      前のステップでリージョンを設定すると、そのリージョン ID に対応するパブリックエンドポイントがデフォルトで使用されます。たとえば、region-idap-southeast-1 に設定した場合、デフォルトのパブリックエンドポイントは https://oss-ap-southeast-1.aliyuncs.com になります。

      OSS データセンターが配置されているリージョンでカスタムエンドポイントを必要とする場合は、エンドポイント情報を入力します。たとえば、同一リージョン内の他の Alibaba Cloud サービスから OSS にアクセスする場合は、https://oss-ap-southeast-1-internal.aliyuncs.com のような内部エンドポイントを使用します。

      エンドポイントを入力してください(省略可。デフォルトではパブリックエンドポイントを使用)[None]: https://oss-ap-southeast-1-internal.aliyuncs.com

    次の表に、パラメーターを説明します。

    パラメーター

    必須

    説明

    accessKeyID

    はい

    アカウントの AccessKey ペアです。AccessKey ペアの取得方法については、「AccessKey ペアの作成」をご参照ください。

    ROS スクリプトを使用して、OSS 管理権限と AccessKey ペアを持つ RAM ユーザーをすばやく作成する

    Resource Orchestration Service (ROS) コンソールの スタックの作成 ページで、セキュリティ確認 の下にある確認チェックボックスを選択し、作成 をクリックします。

    1.png

    スタックが作成された後、出力 タブから AccessKey ペアをコピーします。

    image

    accessKeySecret

    はい

    Region

    はい

    バケットが配置されているリージョンの ID です。本トピックでは、シンガポール リージョンを例として使用しています。値を ap-southeast-1 に設定します。リージョン ID の詳細については、「リージョンとエンドポイント」をご参照ください。

    endpoint

    いいえ

    バケットが配置されているリージョンのエンドポイントです。エンドポイントを手動で設定しない場合、Region に対応するパブリックエンドポイントが自動的に使用されます。内部エンドポイントは明示的に指定する必要があります。本トピックでは、シンガポール のパブリックエンドポイントを使用しています。値を https://oss-ap-southeast-1.aliyuncs.com に設定します。

    同一リージョン内の他の Alibaba Cloud サービスから OSS にアクセスする場合は、内部エンドポイントを使用します。値を https://oss-ap-southeast-1-internal.aliyuncs.com に設定します。

    さまざまなリージョンのエンドポイントの詳細については、「リージョンとエンドポイント」をご参照ください。

    重要

    コンプライアンスとセキュリティを向上させるためのポリシーの変更により、2025 年 3 月 20 日以降、新規 OSS ユーザーは、中国本土リージョンにある OSS バケットでデータ API オペレーションを実行するために、カスタムドメイン名を使用する必要があります (CNAME)。 デフォルトのパブリックエンドポイントは、これらの操作では制限されます。 影響を受ける操作の完全なリストについては、公式発表をご参照ください。 HTTPS 経由でデータにアクセスする場合、カスタムドメインに有効な SSL 証明書をバインドする必要があります。 コンソールでは HTTPS が強制されるため、これはOSS コンソールへのアクセスには必須です

コマンドの実行

  1. バケットを作成します。

    ossutil mb oss://examplebucket

    次の出力は、examplebucket が作成されたことを示しています。

    0.668238(s) 経過
  2. ファイルをバケットにアップロードします。

    1. ローカルファイル uploadFile.txt を作成します。

      echo 'Hello, OSS!' > uploadFile.txt
    2. ファイルを examplebucket にアップロードします。

      ossutil cp uploadFile.txt oss://examplebucket

      次の出力は、ファイルが examplebucket にアップロードされたことを示しています。

      成功:合計 1 個のファイル、サイズ 12 B、アップロード完了:(1 個のオブジェクト、12 B)、平均 44 B/s
      
      0.271779(s) 経過
  3. ファイルをダウンロードします。

    examplebucket から uploadFile.txt サンプルファイルを localfolder にダウンロードします。

    ossutil cp oss://examplebucket/uploadFile.txt localfolder/

    次の出力は、ファイルが localfolder にダウンロードされたことを示しています。

    成功:合計 1 個のオブジェクト、サイズ 12 B、ダウンロード完了:(1 個のファイル、12 B)、平均 74 B/s
    
    0.162447(s) 経過
  4. examplebucket 内のファイルを一覧表示します。

    ossutil ls oss://examplebucket

    次の出力は、examplebucket 内のファイルが一覧表示されたことを示しています。

    最終更新日時                   サイズ(B)  ストレージクラス   ETAG                                  オブジェクト名
    2024-11-26 14:35:29 +0800 CST           12      標準   1103F650EB2C292D179A032D2A97B0F5      oss://examplebucket/uploadFile.txt
    オブジェクト数:1
    
    0.124679(s) 経過
  5. examplebucket から uploadFile.txt を削除します。

    ossutil rm oss://examplebucket/uploadFile.txt

    次の出力は、uploadFile.txt が examplebucket から削除されたことを示しています。

    0.295530(s) 経過
  6. examplebucket を削除します。

    ossutil rb oss://examplebucket

    次の出力は、examplebucket が削除されたことを示しています。

    0.478659(s) 経過

設定ガイド

ossutil は、設定ファイル、環境変数、およびコマンドラインオプションによる設定をサポートしており、高い柔軟性を提供します。

設定の優先順位

ossutil は、以下の優先順位で設定を読み込みます。

コマンドラインオプション-i-k-e など)> 環境変数OSS_ACCESS_KEY_ID など)> 設定ファイル~/.ossutilconfig

説明

バージョン 2.2.0 以降では、--ignore-env-var コマンドラインオプションを使用して、OSS_ で始まる環境変数を無視できます。

設定ファイル

ossutil は設定ファイルを使用して構成できます。このファイルのデフォルトパスは ~/.ossutilconfig ですが、-c オプションを使用してカスタムパスを指定することもできます。デフォルトの設定ファイルを使用する場合、そのパスを指定する必要はなく、ossutil コマンドを直接実行できます。たとえば:

ossutil ls oss://examplebucket

カスタム設定ファイルパス(例:/path/yourconfig)を使用する場合、-c オプションでパスを指定する必要があります。たとえば:

ossutil -c /path/yourconfig ls oss://examplebucket

設定ファイルの形式

設定ファイルは INI 形式を使用します。この形式では、設定パラメーターがキーと値のペアとしてセクションごとに整理されます。--profile オプションを使用して特定のセクションを選択できます。デフォルトでは、ossutil は [default] セクションの設定を使用します。他の設定を使用するには、別の名前付き設定を作成して参照できます。

セクションとキーと値のペア

設定ファイル内の各セクションは、角括弧([ ])で囲まれた名前で識別されます。セクション内の設定は key=value 形式で記述されます。例:

[default]
accessKeyID = "your-access-key-id"
accessKeySecret = "your-access-key-secret"
  • セクションの設定は key=value 形式を使用します。

  • セクション名およびキーは大文字小文字を区別しません。

  • 設定パラメーターのキーは、すべて小文字、キャメルケース、ケバブケース(ハイフン区切り)、スネークケース(アンダースコア区切り)など、複数の形式をサポートします。たとえば、accesskeyid、accessKeyId、access-key-id、access_key_id はすべて同じパラメーター名を指します。

  • シャープ記号(#)で始まる行はコメントです。

サポートされるセクションタイプ

セクション名

説明

その他の情報

[default]

デフォルト設定を格納します。--profile オプションが設定されていない場合に使用されます。

[profile default] の簡略形です。

[profile name]

--profile name を使用して参照可能なパラメーターを構成します。

source_profile を使用して他の設定を参照できます。

[buckets name]

特定のバケットのエンドポイント(リージョン、エンドポイント、アドレス指定スタイルなど)を構成します。

インライン表記をサポートします。

説明

config コマンドを使用して設定内容を表示および設定できます。詳細については、「config」をご参照ください。

セクションタイプ:profile

このセクションでは、アクセス認証情報およびグローバルパラメーターを構成します。以下のパラメーター名をサポートします。

  • アクセス認証情報パラメーター

    パラメーター名

    別名

    説明

    mode

    /

    認証モードです。

    有効な値:AK、StsToken、RamRoleArn、EcsRamRole、Anonymous。

    access-key-id

    accessKeyId

    access_key_id

    OSS へのアクセスに使用する AccessKey ID です。

    access-key-secret

    accessKeySecret

    access_key_secret

    OSS へのアクセスに使用する AccessKey Secret です。

    sts-token

    stsToken

    sts_token

    OSS へのアクセスに使用する Security Token Service (STS) トークンです。

    role-arn

    roleArn

    role_arn

    RAM ロールの ARN です。主に RamRoleArn モードで使用されます。

    role-session-name

    roleSessionName

    role_session_name

    セッション名です。主に RamRoleArn モードで使用されます。

    ecs-role-name

    ecsRoleName

    ecs_role_name

    ロール名です。主に EcsRamRole モードで使用されます。

    credential-process

    credentialProcess

    credential_process

    外部コマンドを指定します。

    credential-uri

    credentialUri

    credential_uri

    アクセス認証情報を取得する URI を指定します。

    oidc-provider-arn

    oidcProviderArn

    oidc_provider_arn

    OIDC プロバイダーの Alibaba Cloud Resource Name (ARN) を、acs:ram::account-id:oidc-provider/provider-name の形式で指定します。

    oidc-token-file-path

    oidcTokenFilePath

    oidc_token_file_path

    OIDC トークンのファイルパスを指定します。

    credential-process-timeout

    credentialProcessTimeout

    credential_process_timeout

    外部認証情報要求のタイムアウト期間(秒単位)を指定します。デフォルト値は 15(15 秒)です。最大値は 600(10 分)です。たとえば、credential-process-timeout = 60 は 60 秒のタイムアウトを設定します。バージョン 2.0.3 以降でサポートされています。

  • グローバルパラメーター

    パラメーター名

    別名

    説明

    region

    /

    リージョン ID です。このパラメーターは必須です。

    loglevel

    /

    ログレベルです。有効な値:

    • off(デフォルト)

    • info

    • debug

    read-timeout

    readTimeout

    read_timeout

    クライアントの読み取りおよび書き込み要求のタイムアウト期間です。単位:秒。デフォルト値:20。

    connect-timeout

    connectTimeout

    connect_timeout

    クライアント接続のタイムアウト期間です。単位:秒。デフォルト値:10。

    retry-times

    retryTimes

    retry_times

    エラー発生時の再試行回数です。デフォルト値:10。

    skip-verify-cert

    skipVerifyCert

    skip_verify_cert

    サーバー側のデジタル証明書検証をスキップします。

    sign-version

    signVersion

    sign_version

    要求に使用する署名アルゴリズムのバージョンです。有効な値:

    • v1

    • v4(デフォルト)

    output-format

    outputFormat

    output_format

    出力形式です。有効な値:

    • raw(デフォルト)

    • json

    • xml

    • yaml

    addressing-style

    addressingStyle

    addressing_style

    要求アドレスの形式です。有効な値:

    • 仮想(デフォルト)

    • パス

    • CNAME

    language

    /

    表示言語です。

    endpoint

    /

    パブリックエンドポイントです。このパラメーターは省略可能です。

  • その他のパラメーター

    パラメーター名

    別名

    説明

    source-profile

    sourceProfile

    source_profile

    指定されたプロファイルからパラメーターを参照します。例:

    [profile cred]
    access-key-id=ak
    access-key-secret=sk
    
    [profile dev]
    region=cn-hangzhou
    source-profile=cred

    buckets

    /

    指定された buckets セクションからパラメーターを参照します。

    [profile dev]
    region=cn-hangzhou
    access-key-id=ak
    access-key-secret=sk
    buckets=dev-bucket
    
    [buckets dev-bucket]
    bucket-name-hz =
     endpoint=oss-cn-hangzhou-internal.aliyuncs.com
    bucket-name-bj =
     region=cn-beijing

    endpoint-suffix-list-path-style

    /

    パススタイルの要求モードを自動的に使用するエンドポイント接尾辞のリストを指定します。複数の接尾辞はカンマ(,)で区切ります。バージョン 2.2.0 以降でサポートされています。

    例 1:endpoint-suffix-list-path-style=DEFAULT

    例 2:endpoint-suffix-list-path-style=DEFAULT,.path-style.com

    DEFAULT:組み込みのデフォルトリスト(現在は .privatelink.aliyuncs.com)を示します。

セクションタイプ:buckets

このセクションでは、特定のバケットとエンドポイントのマッピングを構成します。ネスト構造をサポートしており、bucket-name = で buckets セクションをサブセクションに分割します。形式は次のとおりです。

[buckets name]
bucket-name = 
  key=value

この形式では、name は buckets セクションの名前、bucket-name は特定のバケットの名前、key=value は構成パラメーターを表します。以下のパラメーターをサポートします。

パラメーター名

別名

説明

region

/

データセンターが配置されているリージョンです。

設定されていない場合、このパラメーターを参照するプロファイルの region 値が使用されます。

endpoint

/

パブリックエンドポイントです。このパラメーターは省略可能です。

addressing-style

addressingStyle

addressing_style

要求アドレスの形式です。有効な値:

virtual(デフォルト):仮想ホスト方式の要求アドレス形式を使用します。

path:パス方式の要求アドレス形式を使用します。

cname:CNAME 要求アドレス形式を使用します。

次の例は、buckets セクションを示しています。

[buckets dev-bucket]
bucket-hz-01 = 
  region=cn-hangzhou
bucket-hz-02 = 
  region=cn-hangzhou
  endpoint=test.com
  addressing-style=cname
bucket-bj-01 = 
  region=cn-beijing

環境変数の設定

以下の手順に従って環境変数を設定できます。

Linux

  1. コマンドラインインターフェイスで、以下のコマンドを実行して環境変数設定を ~/.bashrc ファイルに追加します。

    echo "export OSS_ACCESS_KEY_ID='your-access-key-id'" >> ~/.bashrc
    echo "export OSS_ACCESS_KEY_SECRET='your-access-key-secret'" >> ~/.bashrc
  2. 以下のコマンドを実行して変更を適用します。

    source  ~/.bashrc
  3. 以下のコマンドを実行して、環境変数が有効であるか確認します。

    echo $OSS_ACCESS_KEY_ID
    echo $OSS_ACCESS_KEY_SECRET

macOS

  1. ターミナルで、以下のコマンドを実行してデフォルトシェルの種類を確認します。

    echo $SHELL
  2. デフォルトシェルの種類に応じて、以下の操作を行います。

    Zsh

    1. 以下のコマンドを実行して環境変数設定を ~/.zshrc ファイルに追加します。

      echo "export OSS_ACCESS_KEY_ID='your-access-key-id'" >> ~/.zshrc
      echo "export OSS_ACCESS_KEY_SECRET='your-access-key-secret'" >> ~/.zshrc
    2. 以下のコマンドを実行して変更を適用します。

      source ~/.zshrc
    3. 以下のコマンドを実行して、環境変数が有効であるか確認します。

      echo $OSS_ACCESS_KEY_ID
      echo $OSS_ACCESS_KEY_SECRET

    Bash

    1. 以下のコマンドを実行して環境変数設定を ~/.bash_profile ファイルに追加します。

      echo "export OSS_ACCESS_KEY_ID='your-access-key-id'" >> ~/.bash_profile
      echo "export OSS_ACCESS_KEY_SECRET='your-access-key-secret'" >> ~/.bash_profile
    2. 以下のコマンドを実行して変更を適用します。

      source ~/.bash_profile
    3. 以下のコマンドを実行して、環境変数が有効であるか確認します。

      echo $OSS_ACCESS_KEY_ID
      echo $OSS_ACCESS_KEY_SECRET

Windows

  1. コマンドプロンプト(CMD)で、以下のコマンドを実行します。

    setx OSS_ACCESS_KEY_ID "your-access-key-id"
    setx OSS_ACCESS_KEY_SECRET "your-access-key-secret"
  2. 新しい CMD ウィンドウを開きます。

  3. 新しい CMD ウィンドウで、以下のコマンドを実行して、環境変数が有効であるか確認します。

    echo %OSS_ACCESS_KEY_ID%
    echo %OSS_ACCESS_KEY_SECRET%

設定可能な環境変数は以下のとおりです。

環境変数名

対応するパラメーター名

OSS_ACCESS_KEY_ID

access-key-id

OSS_ACCESS_KEY_SECRET

access-key-secret

OSS_SESSION_TOKEN

sts-token

OSS_ROLE_ARN

ram-role-arn

OSS_ROLE_SESSION_NAME

role-session-name

OSS_REGION

region

OSS_ENDPOINT

endpoint

OSSUTIL_CONFIG_FILE

config-file

OSSUTIL_PROFILE

profile

コマンドラインオプションの設定

ossutil は、グローバルコマンドラインオプションを含む複数のコマンドラインオプションを提供します。これらのオプションは最も高い優先順位を持ち、設定ファイルまたは環境変数で設定されたパラメーターを上書きします。

重要

コマンドラインオプションで AccessKey ペアを渡すと、ログシステムにキーが露出する可能性があり、セキュリティリスクを引き起こすことがあります。この方法は注意して使用してください。

ossutil ls oss://examplebucket -i "your-access-key-id" -k "your-access-key-secret" --region cn-hangzhou

アクセス認証情報の設定

RAM ユーザーの AccessKey ペアの使用

アプリケーションが外部攻撃に対して安全かつ安定した環境で動作し、OSS への長期的なアクセスが必要であり、認証情報を頻繁にローテーションできない場合、Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ペア(AccessKey ID および AccessKey Secret)を使用して認証情報プロバイダーを初期化します。ただし、この方法では AccessKey ペアの手動メンテナンスが必要となり、セキュリティリスクおよびメンテナンスの複雑さが増加します。

設定ファイル

以下の設定ファイルを作成し、~/.ossutilconfig として保存します。

[default]
accessKeyID = yourAccessKeyID
accessKeySecret = yourAccessKeySecret
region=ap-southeast-1

以下のコマンドを実行して、examplebucket のオブジェクトを照会できます。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

環境変数

export OSS_ACCESS_KEY_ID=yourAccessKeyID
export OSS_ACCESS_KEY_SECRET=yourAccessKeySecret
ossutil ls oss://examplebucket

コマンドラインオプション

以下のコマンドを実行して、examplebucket のオブジェクトを照会できます。

ossutil ls oss://examplebucket -i yourAccessKeyID -k yourAccessKeySecret

STS トークンの使用

アプリケーションが OSS への一時的なアクセスを必要とする場合、Security Token Service (STS) サービスから取得した一時的な認証情報(AccessKey ID、AccessKey Secret、セキュリティトークンなど)を使用して認証情報プロバイダーを初期化できます。この方法では、STS トークンの手動メンテナンスが必要となり、セキュリティリスクおよびメンテナンスの複雑さが増加します。また、OSS に一時的にアクセスするたびに、STS トークンを手動で更新する必要があります。

設定ファイル

以下の設定ファイルを作成し、~/.ossutilconfig として保存します。

[default]
accessKeyID = yourSTSAccessKeyID
accessKeySecret = yourSTSAccessKeySecret
stsToken = yourSecurityToken
region=ap-southeast-1

example bucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

環境変数

export OSS_ACCESS_KEY_ID=yourSTSAccessKeyID
export OSS_ACCESS_KEY_SECRET=yourSTSAccessKeySecret
export OSS_SESSION_TOKEN=yourSecurityToken
ossutil ls oss://examplebucket

コマンドラインオプション

example bucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket -i yourSTSAccessKeyID -k yourSTSAccessKeySecret -t yourSecurityToken --region cn-hangzhou

RamRoleArn の使用

アプリケーションがクロスアカウントアクセスなどの承認済みの OSS アクセスを必要とする場合、RAMRoleArn を指定することで認証情報プロバイダーを初期化できます。この方法では Security Token Service (STS) トークンを使用します。RAM ロールの Alibaba Cloud Resource Name (ARN) を指定すると、プロバイダーは AssumeRole 操作を呼び出して一時トークンを取得し、セッションの有効期限が切れる前に自動的に更新します。policy パラメーターを設定することで、セッションの権限をさらに制限することもできます。

重要
  • Alibaba Cloud アカウントは、そのリソースに対する完全な権限を持ちます。Alibaba Cloud アカウントの AccessKey ペアが漏洩した場合、重大なセキュリティリスクを引き起こす可能性があります。Alibaba Cloud アカウントの AccessKey ペアは使用せず、必要な最小限の権限を持つ RAM ユーザーの AccessKey ペアを使用してください。

  • RAM ユーザーの AccessKey ペアの作成方法については、「AccessKey ペアの作成」をご参照ください。RAM ユーザーの AccessKey ID および AccessKey Secret は、作成時にのみ表示されます。直ちに保存してください。忘れてしまった場合は、ローテーションのために新しい AccessKey ペアを作成する必要があります。

  • RAMRoleARN の取得方法については、「CreateRole」をご参照ください。

以下の設定ファイルを作成し、~/.ossutilconfig として保存します。これらの設定は、環境変数またはコマンドラインオプションでは構成できません。

[default]
accessKeyID = yourAccessKeyID
accessKeySecret = yourAccessKeySecret
mode = RamRoleArn
roleArn = acs:ram::137918634953****:role/Alice
roleSessionName = session_name_example
region=ap-southeast-1

examplebucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

EcsRamRole の使用

アプリケーションが ECS インスタンス、ECI インスタンス、または Container Service for Kubernetes のワーカーノード上で実行される場合、EcsRamRole を使用して認証情報プロバイダーを初期化できます。この方法は Security Token Service (STS) トークンに基づいており、EcsRamRole を使用すると、ECS インスタンス、ECI インスタンス、または Container Service for Kubernetes のワーカーノードにロールを関連付けて、インスタンス内で STS トークンを自動的に更新できます。この方法では、AccessKey ペアや STS トークンを提供する必要がないため、手動メンテナンスに起因するリスクが排除されます。EcsRamRole の取得方法については、「CreateRole」をご参照ください。

説明

この方法は環境変数をサポートしていません。

EcsRamRole モード

設定ファイル

以下の設定ファイルを作成し、~/.ossutilconfig として保存します。

[default]
mode = EcsRamRole
# ecsRoleName は省略可能です。設定しない場合、値は自動的に取得されます。
ecsRoleName = EcsRamRoleOss 
region=ap-southeast-1

examplebucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

コマンドラインインターフェイス

examplebucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket --mode EcsRamRole

EcsRamRole IMDSv2 パターン

説明

バージョン 2.2.0 以降では、ECS RAM Role が IMDSv2 モードをサポートしています。

設定ファイル

以下の設定ファイルを作成し、~/.ossutilconfig として保存します。

[default]
mode = Ali-EcsRamRole
# ecsRoleName パラメーターは省略可能です。設定しない場合、値は自動的に取得されます。
ecsRoleName = EcsRamRoleOss 
region=ap-southeast-1

examplebucket のオブジェクトを照会するには、以下のコマンドを実行できます。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

コマンドラインインターフェイス

examplebucket のオブジェクトを照会するには、以下のコマンドを実行できます。

ossutil ls oss://examplebucket --mode Ali-EcsRamRole

OIDCRoleARN の使用

Container Service for Kubernetes (ACK) のワーカーノードに RAM ロールを割り当てると、それらのノード上の Pod で実行されているアプリケーションは、ECS インスタンスにデプロイされたアプリケーションと同様に、メタデータサービス (Metadata Server) から関連付けられたロールの STS トークンを取得できます。ただし、クラスターに信頼できないアプリケーション(ソースコードが公開されていない顧客提出のアプリケーションなど)をデプロイした場合、それらのアプリケーションがワーカーノードのインスタンス RAM ロールの STS トークンをメタデータサービスから取得する可能性があります。クラウドリソースへのセキュリティリスクを防ぎ、信頼できないアプリケーションがアプリケーションレベルの最小権限を適用しながら必要な STS トークンを安全に取得できるようにするには、RAM Roles for Service Accounts (RRSA) 機能を使用します。この方法は内部で STS トークンを使用します。ACK クラスターは、各アプリケーション Pod に対して OpenID Connect (OIDC) トークンファイルを作成してマウントし、関連する設定情報を環境変数に注入します。認証情報ツールは、この設定を環境変数から取得し、STS の AssumeRoleWithOIDC 操作を呼び出して、アタッチされたロールの STS トークンを取得します。この方法では AccessKey ペアや既存の STS トークンが不要なため、手動メンテナンスに伴うリスクが排除されます。詳細については、「RRSA に基づく Pod の権限分離」をご参照ください。

以下の設定ファイルを作成し、~/.ossutilconfig として保存します。この設定は、環境変数やコマンドラインオプションでは構成できません。

[default]
mode = oidcRoleArn
# OIDC プロバイダーの Alibaba Cloud Resource Name (ARN) を指定します。形式は acs:ram::account-id:oidc-provider/provider-name です。
OIDCProviderArn=acs:ram::113511544585****:oidc-provider/TestOidcProvider
# OIDC トークンのファイルパスを指定します。
OIDCTokenFilePath=OIDCTokenFilePath
# 引き受けるロールの ARN を入力します。形式は acs:ram::113511544585****:oidc-provider/TestOidcProvider です。
roleArn=acs:ram::113511544585****:role/testoidc
# 異なるトークンを区別するためのカスタムロールセッション名です。
roleSessionName= TestOidcAssumedRoleSession
region=ap-southeast-1

examplebucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

外部プロセスからの認証情報の取得

ossutil は、外部コマンドを実行することで独立した外部プロセスを起動できます。このプロセスは実行され、その結果を標準出力を介して ossutil に返します。このような外部プロセスを使用して認証情報を取得できます。

説明
  • 認証情報を生成するコマンドは、セキュリティリスクを避けるため、承認されていないプロセスやユーザーからアクセスできないようにする必要があります。

  • 認証情報を生成するコマンドは、秘密情報を stderr や stdout に書き込んではいけません。これらの情報はキャプチャされたりログに記録されたりする可能性があり、不正なユーザーに公開される可能性があります。

外部コマンドを使用して、以下の形式で長期または一時的な認証情報を取得できます。

長期認証情報

{
  "AccessKeyId" : "ak",
  "AccessKeySecret" : "sk"
}

一時的な認証情報

{
  "AccessKeyId" : "ak",
  "AccessKeySecret" : "sk",
  "Expiration" : "2023-12-29T07:45:02Z",
  "SecurityToken" : "token"
}

以下の設定ファイルを作成し、~/.ossutilconfig に保存します。これらの設定は、環境変数またはコマンドラインオプションでは構成できません。

[default]
mode = Process
credentialProcess = user-cmd
region=ap-southeast-1

examplebucket のオブジェクトを照会するには、以下のコマンドを実行します。

ossutil ls oss://examplebucket -c ~/.ossutilconfig

匿名アクセス

公開読み取り権限を持つ OSS リソースにのみアクセスする必要がある場合は、認証情報を提供せずに匿名アクセスを使用できます。

ossutil cat oss://bucket/public-object --mode Anonymous

コマンドリファレンス

ossutil を使用して、高レベルコマンド、API レベルのコマンド、ヘルパーコマンドの 3 種類のコマンドを実行できます。

コマンドの構造

ossutil コマンドの一般的な形式は次のとおりです。

ossutil command [argument] [flags]  

ossutil command subcommond [argument] [flags]  

ossutil topic
  • argument:文字列パラメーターです。

  • flags:短縮名スタイル(-o[=value]/ -o [ value])と完全名スタイル(--options[=value]/--options[ value])をサポートするオプションです。オプションを複数回指定した場合、最後の値のみが有効になります。

以下はコマンドの例です。

  • コマンド:ossutil cat oss://bucket/object

  • 複数レベルのコマンド:ossutil api get-bucket-cors --bucket bucketexample

  • ヘルプトピック:ossutil filter

コマンド一覧

ossutil を使用して、3 種類のコマンドを実行できます。

  • 高レベルコマンド

    これらのコマンドは、バケットの作成や削除、データのコピー、オブジェクトのプロパティの変更など、一般的なバケットおよびオブジェクト操作に使用できます。

    コマンド名

    説明

    mb

    バケットを作成します

    rb

    バケットを削除します

    du

    バケットまたは指定されたプレフィックスのストレージサイズを取得します

    stat

    バケットまたはオブジェクトの説明を表示します

    mkdir

    名前がスラッシュ(/)で終わるオブジェクトを作成します

    append

    追加可能なオブジェクトの末尾にコンテンツを追加します

    cat

    オブジェクトのコンテンツを標準出力に連結します

    ls

    バケットまたはオブジェクトを一覧表示します

    cp

    オブジェクトをアップロード、ダウンロード、またはコピーします

    rm

    バケット内のオブジェクトを削除します

    set-props

    オブジェクトのプロパティを設定します

    presign

    オブジェクトの署名付き URL を生成します

    restore

    凍結されたオブジェクトを読み取り可能な状態に解凍します

    revert

    オブジェクトを指定されたバージョンに復元します

    sync

    ローカルファイルディレクトリまたはオブジェクトをソースから宛先に同期します

    hash

    ファイルまたはオブジェクトのハッシュ値を計算します

  • これらのコマンドを使用して、API オペレーションを直接呼び出し、そのパラメーターを構成できます。

    説明

    一部のコマンドのみがリストされています。ossutil api -h を実行して、利用可能なすべてのコマンドを表示してください。

    コマンド名

    説明

    put-bucket-acl

    バケットのアクセス権限を設定または変更します

    get-bucket-acl

    アクセス権限を取得します

    ....

    put-bucket-cors

    オリジン間リソース共有ルールを設定します

    get-bucket-cors

    オリジン間リソース共有ルールを取得します

    delete-bucket-cors

    オリジン間リソース共有ルールを削除します

  • これらのコマンドを使用して、ファイルを設定したり、追加のヘルプトピックにアクセスしたりできます。

    コマンド名

    説明

    help

    ヘルプ情報を取得します

    config

    設定項目とアクセス認証情報を格納する設定ファイルを作成します

    update

    バージョンを更新します

    version

    バージョン情報を表示します

    probe

    コマンドをプローブします

コマンドオプションの種類

オプションの種類

オプション

説明

文字列

--option string

  • 文字列パラメーターには、ASCII 文字セットの英数字、記号、スペースを含めることができます。

  • 文字列にスペースが含まれる場合は、引用符で囲む必要があります。

例:--acl private。

ブール値

--option

オプションを有効または無効にします。

例:--dry-run。

整数

--option Int

符号なし整数です。

例:--read-timeout 10。

タイムスタンプ

--option Time

ISO 8601 形式、つまり DateTime または Date です。

例:--max-mtime 2006-01-02T15:04:05。

バイト単位の接尾辞

--option SizeSuffix

デフォルトの単位はバイト(B)です。単位接尾辞も使用できます。サポートされている接尾辞は K(KiB)= 1024 バイト、M(MiB)、G(GiB)、T(TiB)、P(PiB)、E(EiB)です。

例:最小サイズは 1024 バイトです。

--min-size 1024

--min-size 1K

時間単位の接尾辞

--option Duration

時間単位です。デフォルトの単位は秒です。サポートされている接尾辞は ms(ミリ秒)、s(秒)、m(分)、h(時間)、d(日)、w(週)、M(月)、y(年)です。

小数がサポートされています。例:1.5 日。

--min-age 1.5d

文字列リスト

--option strings

同じ名前の単一または複数のオプションをサポートします。カンマ(,)で区切られた複数の値をサポートします。

複数のオプションから単一の値を受け入れる入力です。

例:--metadata user=jack,email=ja**@test.com --metadata address=china

文字列配列

--option stringArray

同じ名前の単一または複数のオプションをサポートします。複数のオプションに対して単一の値のみをサポートします。

例:--include *.jpg --include *.txt。

コマンドライン以外からのデータ読み込み

通常、パラメーター値はコマンドラインで提供します。ただし、複雑なパラメーター値の場合、ファイルから読み込む必要がある場合があります。複数のコマンド操作を連鎖させる場合、標準入力からパラメーター値を読み込む必要がある場合があります。複数の読み込み方法をサポートするパラメーターには、以下の規則が適用されます。

  • file:// で始まる値は、ファイルパスから値が読み込まれることを示します。

  • パラメーター値が - の場合は、標準入力から値が読み込まれることを示します。

たとえば、バケットのオリジン間リソース共有(CORS)設定を JSON 形式で設定するには、ファイルからパラメーターを読み込みます。cors-configuration.json ファイルには以下の内容が含まれています。

{
  "CORSRule": {
    "AllowedOrigin": ["www.aliyun.com"],
    "AllowedMethod": ["PUT","GET"],
    "MaxAgeSeconds": 10000
  }
}
ossutil api put-bucket-cors --bucket examplebucket --cors-configuration file://cors-configuration.json

CORS パラメーターをオプション値として読み込むには、cors-configuration.json のコンパクト形式を使用します。

{"CORSRule":{"AllowedOrigin":["www.aliyun.com"],"AllowedMethod":["PUT","GET"],"MaxAgeSeconds":10000}}
ossutil api put-bucket-cors --bucket examplebucket --cors-configuration  "{\"CORSRule\":{\"AllowedOrigin\":[\"www.aliyun.com\"],\"AllowedMethod\":[\"PUT\",\"GET\"],\"MaxAgeSeconds\":10000}}"

以下は、標準入力からパラメーターを読み込む方法の例です。

cat cors-configuration.json | ossutil api put-bucket-cors --bucket examplebucket --cors-configuration -

コマンド出力の制御

出力形式

--output-format パラメーターを使用して、ossutil api のサブコマンド、および dustat コマンドの出力形式を調整できます。現在サポートされている形式は以下のとおりです。

形式名

説明

raw

サーバーから返された元の形式でコンテンツを出力します。

json

JSON 文字列形式で出力します。

yaml

YAML 文字列形式で出力します。

xml

XML 文字列形式で出力します。

たとえば、get-bucket-cors の元の出力は次のとおりです。

ossutil api get-bucket-cors --bucket bucketexample
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration>
  <CORSRule>
    <AllowedOrigin>www.aliyun.com</AllowedOrigin>
    <AllowedMethod>PUT</AllowedMethod>
    <AllowedMethod>GET</AllowedMethod>
    <MaxAgeSeconds>10000</MaxAgeSeconds>
  </CORSRule>
  <ResponseVary>false</ResponseVary>
</CORSConfiguration>

JSON 出力は次のとおりです。

ossutil api get-bucket-cors --bucket bucketexample --output-format json
{
  "CORSRule": {
    "AllowedMethod": [
      "PUT",
      "GET"
    ],
    "AllowedOrigin": "www.aliyun.com",
    "MaxAgeSeconds": "10000"
  },
  "ResponseVary": "false"
}

フィルター出力

ossutil は、--output-query オプションで使用できる、JSON ベースのクライアント側フィルタリング機能を内蔵しています。

説明

このオプションは、ossutil api のサブコマンドでのみサポートされています。

この機能は JMESPath 構文を使用します。この機能を使用すると、ossutil は返されたコンテンツを JSON に変換し、JMESPath を使用してフィルタリングし、指定された形式で結果を表示します。JMESPath 構文の詳細については、「JMESPath 仕様」をご参照ください。

たとえば、get-bucket-cors の AllowedMethod コンテンツのみを表示するには、次のコマンドを実行します。

ossutil api get-bucket-cors --bucket bucketexample --output-query CORSRule.AllowedMethod --output-format json
[
  "PUT",
  "GET"
]

人間が読みやすい表示

du や stat などの高レベルコマンドでは、--human-readable オプションを使用して、バイトおよびカウントデータを人間が読みやすい形式で表示できます。バイトデータは、Ki、Mi、Gi、Ti、または Pi の接尾辞(基数 1024)を持つ形式に変換されます。カウントデータは、k、m、g、t、または p の接尾辞(基数 1000)を持つ形式に変換されます。

例:Raw モード

ossutil stat oss://bucketexample
ACL                         : private
AccessMonitor               : Disabled
ArchiveObjectCount          : 2
ArchiveRealStorage          : 10
ArchiveStorage              : 131072
...
StandardObjectCount         : 119212
StandardStorage             : 66756852803
Storage                     : 66756852813
StorageClass                : Standard
TransferAcceleration        : Disabled

フレンドリーモード

ossutil stat oss://bucketexample --human-readable
ACL                         : private
AccessMonitor               : Disabled
ArchiveObjectCount          : 2
ArchiveRealStorage          : 10
ArchiveStorage              : 131.072k
...
StandardObjectCount         : 119.212k
StandardStorage             : 66.757G
Storage                     : 66.757G
StorageClass                : Standard
TransferAcceleration        : Disabled

コマンドのリターンコード

プロセスから ossutil を呼び出す場合、出力をリアルタイムで表示することはできません。プロセスが完了すると、ossutil は結果に基づいて異なるリターンコードを返します。最新の実行のリターンコードを取得して、問題を分析およびトラブルシューティングできます。次の表に、リターンコードとその意味を説明します。

Linux

リターンコードを取得するには、次のコマンドを実行します:echo $?

Windows

リターンコードを取得するには、次のコマンドを実行します:echo %errorlevel%

macOS

リターンコードを取得するには、次のコマンドを実行します:echo $?

リターンコード

説明

0

コマンドは成功しました。サーバーに送信されたリクエストは正常に実行され、サーバーは 200 応答を返しました。

1

パラメーターエラーです。たとえば、必須のサブコマンドまたはパラメーターが欠落しているか、不明なコマンドまたはパラメーターが使用されました。

2

コマンドは正常に解析され、指定されたサービスにリクエストが送信されましたが、サービスはエラー(2xx 以外の応答)を返しました。

3

OSS Go SDK の呼び出し時にサーバー以外のエラーが発生しました。

4

`cp` や `rm` などのバッチ操作中に、一部のリクエストでエラーが発生しました。

5

中断エラーです。実行中に Ctrl+C を押してコマンドがキャンセルされました。

コマンドラインオプション

一部のコマンドライン操作では、ターゲットを指定したりオプションを設定したりするために追加のパラメーターが必要ですが、そうでないものもあります。パラメーターを取るコマンドの場合、目的の機能を実現するために適切なパラメーター値を指定します。たとえば:

ossutil ls --profile dev

コマンド ossutil ls --profile dev では、パラメーター値 dev を使用して特定の設定ファイルを指定できます。パラメーターを取るオプションは通常、オプション名とパラメーター値を区切るためにスペースまたは等号(=)を必要とします(例:--profile dev または --profile=dev)。パラメーター値にスペースが含まれる場合は、コマンドが正しく解析されるように、値全体を二重引用符で囲む必要があります(例:--description "OSS bucket list")。

グローバルコマンドラインオプション

パラメーター

タイプ

説明

-i, --access-key-id

string

OSS へのアクセスに使用する AccessKey ID です。

-k, --access-key-secret

string

OSS へのアクセスに使用する AccessKey Secret です。

--addressing-style

string

要求アドレスの形式です。有効な値:

  • virtual(デフォルト値):仮想ホストモードを示します

  • path:パススタイル。

  • cname:カスタムドメイン名モード。

-c, --config-file

string

設定ファイルのパスです。デフォルト値は ~\\.ossutilconfig です。

--connect-timeout

int

クライアント接続のタイムアウト期間です。単位:秒。デフォルト値:10。

-n, --dry-run

/

変更を加えずにドライランを実行します。

-e, --endpoint

string

パブリックエンドポイントです。

-h, --help

/

ヘルプ情報を表示します。

--language

string

表示言語です。

--loglevel

string

ログレベルです。有効な値:

  • off(デフォルト)

  • info

  • debug

--mode

string

認証モードです。有効な値:

  • AK:AccessKey ペア。

  • StsToken:一時的なセキュリティ認証情報。

  • EcsRamRole:ECS インスタンス RAM ロールを使用した認証。

  • Anonymous:匿名アクセス。

--output-format

string

出力形式です。デフォルト値:raw。

--output-query

string

JMESPath クエリ条件です。

--profile

string

設定ファイル内のプロファイルを指定します。

-q, --quiet

/

静寂モード。可能な限り少ない情報を出力します。

--read-timeout

int

クライアントの読み取りおよび書き込み要求のタイムアウト期間です。単位:秒。デフォルト値:20。

--region

string

データセンターが配置されているリージョンです。値を cn-hangzhou に設定します。

--retry-times

int

エラー発生時の再試行回数です。デフォルト値:10。

--sign-version

string

要求に使用する署名アルゴリズムのバージョンです。有効な値:

  • v1

  • v4(デフォルト)

--skip-verify-cert

/

サーバー側のデジタル証明書検証をスキップします。

-t, --sts-token

string

OSS へのアクセスに使用する STS トークンです。

--proxy

string

プロキシサーバーを指定します。バージョン 2.0.1 以降でサポートされています。

値は次のいずれかになります。

  • 直接設定:プロキシサーバーの詳細を直接指定します。例:

    • http://proxy.example.com:8080

    • https://proxy.example.com:8443

  • envHTTP_PROXY および HTTPS_PROXY 環境変数を使用してプロキシサーバー情報を取得することを示します。これらの 2 つの環境変数をオペレーティングシステムで設定する必要があります。例:

    • HTTP_PROXY=http://proxy.example.com:8080

    • HTTPS_PROXY=https://proxy.example.com:8443

    これらの環境変数を設定した後、プロキシサーバーオプションの値を env に設定すると、システムはこれらの変数からプロキシ設定を自動的に使用します。

--log-file

string

ログ出力ファイルを指定します。バージョン 2.0.1 以降でサポートされています。値は次のいずれかになります。

  • -:ログを標準出力(Stdout)に出力します。

  • ファイルパス:ログを出力するファイルパスを指定します。

ログ出力ファイルが指定されていない場合、ログはデフォルトの設定ファイルに出力されます。

--cloudbox-id

string

CloudBox ID。CloudBox シナリオで使用されます。バージョン 2.1.0 以降でサポートされています。

--ignore-env-var

/

OSS_ で始まるすべての環境変数設定を無視します。バージョン 2.2.0 以降でサポートされています。

--bind-address

string

アウトバウンド接続がバインドされるローカル IP アドレス(IPv4 または IPv6)を指定します。バージョン 2.2.0 以降でサポートされています。

--account-id

string

アカウント ID。ベクターバケットシナリオでの ID 識別およびリソース所有権の判断に使用されます。バージョン 2.2.0 以降でサポートされています。

一般的なコマンドラインオプション

コマンド範囲

サポートされるオプション

すべての高レベルコマンド

  • --encoding-type string:入力オブジェクトまたはファイル名のエンコーディング方式です。有効な値:url。

  • --request-payer string:リクエストの支払方法です。リクエスト支払者モードの場合は、この値を requester に設定します。

バッチ操作をサポートするコマンド

  • --start-after/--end-with (, ]:キーのクエリ範囲を指定します(開始は排他的、終了は包括的)。

  • filter オプション:オブジェクト/ファイル名、オブジェクト/ファイルディレクトリ、オブジェクト/ファイルサイズ、オブジェクト/ファイル時間、およびオブジェクトのメタデータのフィルター条件を設定します。特定のフィルタリングルールについては、「フィルターオプション」をご参照ください。

  • --limited-num:クエリインターフェイスによって返されるデータ量を設定します。

  • --recursive/-r:再帰的な操作を実行し、サブディレクトリを含むルートディレクトリ以下のすべてのファイルまたはオブジェクトにアクセスします。

  • --dirs/-d:ルートディレクトリ内のファイルまたはオブジェクトにのみアクセスし、サブディレクトリは含みません。

    説明

    オブジェクトの場合、これは Delimiter メソッドを使用してシミュレートされ、プレフィックス以下のすべてのオブジェクトをスキャンする必要があります。オブジェクトが多いほど、時間がかかります。

  • --force/-f:確認プロンプトなしで操作を強制します。

  • --list-objects:ListObjects インターフェイスを使用してオブジェクトを一覧表示します。

宛先フィルタリングルールをサポートするコマンド

  • --update:宛先に既に存在し、ソースファイルよりも新しいすべてのファイルをスキップします。宛先のファイルがソースファイルと同じ変更時刻を持つ場合、ファイルは更新されます。

  • --size-only:ファイルサイズのみを比較し、ファイルサイズが異なる場合のみ同期します。

  • --checksum:CRC-64 を比較します。まずファイルサイズを比較し、同じ場合は CRC-64 を比較します。片方に CRC-64 が存在しない場合は、不一致と見なされます。これはオブジェクト間のコピーでのみ有効です。

  • --ignore-existing:既に存在するファイルをスキップします。バージョン 2.0.3 以降でサポートされています。

単一オブジェクトをサポートするコマンド

--version-id string:オブジェクトのバージョン ID です。

リストモードをサポートするコマンド

--list-format:リストファイルの形式です。有効な値:plain、inventory。

--list-manifest-from:リストファイルの形式の説明情報をファイルから読み取ります。リストファイルの形式が inventory の場合、このパラメーターを設定する必要があります。

よくある質問

ossutil コマンドを実行すると、「region must be set in sign version 4」というエラーが報告される

原因:ossutil 2.0 の設定時にリージョン ID が構成されていませんでした。

解決策:ossutil を使用する際に設定項目が欠落していることによる操作の失敗を防ぐため、必要な基本項目(AccessKey ID、AccessKey Secret、リージョン ID)を必ず構成してください。署名が V4 にアップグレードされたため、リージョン ID は特に重要であり、必須項目となっています。リージョン ID の取得方法については、「リージョンとエンドポイント」をご参照ください。