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

Object Storage Service:revert-versioning, revert-versioning

最終更新日:Dec 26, 2024

このトピックでは、revert-versioningコマンドを実行して、バージョン管理が有効なバケット内のオブジェクトを最新の以前のバージョンに復元する方法について説明します。

使用上の注意

  • オブジェクトバージョンを復元するには、oss:ListObjectVersionsおよびoss:DeleteObjectVersion権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。

  • ossutil 1.6.16以降の場合、コマンドラインでossutilをバイナリ名として直接使用できます。 オペレーティングシステムに基づいてバイナリ名を更新する必要はありません。 1.6.16より前のossutilの場合、オペレーティングシステムに基づいてバイナリ名を更新する必要があります。 詳細は、「ossutilコマンドリファレンス」をご参照ください。

  • バージョン管理の詳細については、「概要」をご参照ください。

  • 削除マーカーの詳細については、「マーカーの削除」をご参照ください。

コマンド構文

ossutil revert-versioning oss://bucketname[/prefix]
[--encoding-type <value>]
[-r, --recursive]
[--start-time <value> ]
[--end-time <value>]
[--include <value>]
[--exclude <value>]
[--payer <value>]

次の表に、構文のパラメーターとオプションを示します。

パラメータ /オプション

説明

bucketname

復元するオブジェクトを含むバケットの名前。

プレフィックス

ディレクトリやオブジェクトなどのリソース名のプレフィックス。

-- encoding-type

oss:// bucket_nameに続くプレフィックスのエンコーディング。 有効値: url このオプションを指定しない場合、プレフィックスはエンコードされません。

-r, -- recursive

このオプションを指定すると、プレフィックスオプションで指定されたプレフィックスを名前に含むすべてのオブジェクトが、最新の以前のバージョンに復元されます。 このオプションを指定しない場合、ossutilは指定されたオブジェクトのみを最新の以前のバージョンに復元します。

-- 開始時間

オブジェクトをフィルタリングする時間範囲の始まり。 この値は UNIX タイムスタンプです。 このオプションを指定すると、今回より前に削除されたオブジェクトは復元されません。

-終了時間

オブジェクトをフィルタリングする時間範囲の終わり。 この値は UNIX タイムスタンプです。 このオプションを指定した場合、この時間以降に削除されたオブジェクトは復元されません。

-含める

指定された条件を満たすすべてのオブジェクトを含みます。

詳細については、「オプション -- includeおよび -- exclude」をご参照ください。

-除外

指定された条件を満たすすべてのオブジェクトを除外します。

詳細については、「オプション -- includeおよび -- exclude」をご参照ください。

-- 支払人

操作によって生成される料金の支払人。 指定されたパスのリソースにアクセスするリクエスタにトラフィックとリクエスト料金の支払いをさせたい場合は、このオプションをrequesterに設定します。

  • サンプルコマンド

    • examplebucketバケット内の削除されたexampleobject.jpgオブジェクトを最新の以前のバージョンに復元します。

      ossutil revert-versioning oss://examplebucket/exampleobject.jpg
    • examplebucketバケットに格納され、名前に指定されたdestdirプレフィックスが含まれている複数の削除済みオブジェクトを、-rオプションを指定して最新の以前のバージョンに復元します。

      ossutil revert-versioning oss://examplebucket/destdir -r
    • -rオプションを指定して、examplebucketバケット内のすべての削除されたオブジェクトを最新の以前のバージョンに復元します。

      ossutil revert-versioning oss://examplebucket  -r
    • 特定の期間に削除されたオブジェクトを最新の以前のバージョンに復元します。

      -rオプションを指定して、examplebucketバケットから以前のバージョンに6月16日2020 (UTC + 8) の16:22:58から16:39:38まで削除されたオブジェクトを復元します。

      ossutil revert-versioning oss://examplebucket -r --start-time 1592295778 --end-time 1592296778
    • 指定された条件を満たすすべての削除されたオブジェクトを最新の以前のバージョンに復元します。

      • -rオプションを指定して、examplebucketバケット内のすべての削除されたTXTオブジェクトを最新の以前のバージョンに復元します。

        ossutil revert-versioning oss://examplebucket --include "*.txt" -r
      • -rオプションを指定して、JPGオブジェクトを除くexamplebucketバケット内のすべての削除されたオブジェクトを最新の以前のバージョンに復元します。

        
        ossutil revert-versioning oss://examplebucket --exclude "*.jpg" -r
  • サンプル出力

    成功応答には、復元されたオブジェクトの数と、これらのオブジェクトを復元するのにかかる時間が含まれます。 例:

    revert versioning object count is 10, batch list count is 10
    
    0.066413(s) elapsed

一般的なオプション

ossutilを使用して別のリージョンにあるバケットに切り替える場合は、-eオプションを追加して、バケットが配置されているリージョンのエンドポイントを指定します。 ossutilを使用して別のAlibaba Cloudアカウントに属するバケットに切り替える場合、-iオプションを追加して指定されたアカウントのAccessKey IDを指定し、-kオプションを追加して指定されたアカウントのAccessKey secretを指定します。

たとえば、次のコマンドを実行して、testbucketバケット内のexampletest.pngオブジェクトを最新の以前のバージョンに復元できます。 testbucketバケットは中国 (上海) リージョンにあり、別のAlibaba Cloudアカウントが所有しています。

ossutil revert-versioning oss://testbucket/exampletest.png -e oss-cn-shanghai.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA****  -k 67DLVBkH7EamOjy2W5RVAHUY9H****

共通オプションの詳細については、「共通オプション」をご参照ください。