revertコマンドを実行すると、バージョン管理が有効なバケット内の削除されたオブジェクトバージョンを最新の以前のバージョンに復元できます。
使用上の注意
削除されたオブジェクトバージョンを復元するには、
oss:GetObject
、oss:PutObject
、oss:ListObjectVersions
、およびoss:DeleteObject
権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。
コマンド構文
ossutil revert oss:// bucket[/prefix] version-directive [flags]
パラメーター | データ型 | 説明 |
version-directive | String | 復元するオブジェクトのバージョン。 有効な値:
|
-d, -- dirs | / | 現在のディレクトリのオブジェクトとサブディレクトリが返されることを指定します。 |
-- encoding-type | String | オブジェクト名のエンコードに使用されるエンコード方法。 有効値: url |
-- end-with | String | -- end-withパラメーターの値の前または同じ名前のオブジェクトが返されるように指定します。 |
--exclude | stringArray | パスまたはオブジェクト名の除外ルール。 |
-- exclude-from | stringArray | 除外ルールをルールファイルから読み取ることを指定します。 |
--files-from | stringArray | ソースオブジェクト名をルールファイルから読み取り、空の行またはコメント行を無視することを指定します。 |
-- files-from-raw | stringArray | ソースオブジェクト名をルールファイルから読み取ることを指定します。 |
--filter | stringArray | パスまたはオブジェクト名のフィルタールール。 |
-- filter-from | stringArray | パスまたはオブジェクト名のフィルタールールをルールファイルから読み取ることを指定します。 |
-f, --force | / | 確認のプロンプトなしでコマンドを強制的に実行することを指定します。 |
-- ignore-version-not-exist | / | 存在しないバージョンを示すエラーがバッチ操作で無視されることを指定します。 |
--include | stringArray | パスまたはオブジェクト名の包含ルール。 |
-- include-from | stringArray | 包含ルールをルールファイルから読み取ることを指定します。 |
--max-age | 有効期間 | 最終変更時刻が -- max-ageパラメーターの値より前のオブジェクトを復元しないように指定します。 デフォルトの単位は秒です。 単位は、ミリ秒、秒、分、時間、日、週、月、または年とすることができる。 デフォルトでは、このパラメータは空のままです。 |
-- min-mtime | 時間 | 最終変更時刻が -- min-mtimeパラメーターの値より前のオブジェクトは復元されません。 値はUTCです。 デフォルトでは、このパラメータは空のままです。 |
--page-size | int | 返されるオブジェクトの最大数。 デフォルト値は 1000 です。 有効な値: 1 ~ 1000 |
-r, -- recursive | / | コマンドがオブジェクトに対して再帰的に実行されることを指定します。 このパラメーターを指定すると、revertコマンドはバケット内の条件を満たすすべてのオブジェクトに対して有効になります。 それ以外の場合、revertコマンドは指定されたパス内のオブジェクトに対してのみ有効になります。 |
-- request-payer | String | リクエストの支払人。 pay-by-requesterがバケットに対して有効になっている場合、このパラメーターをrequesterに設定します。 |
-- start-after | String | -- start-afterパラメーターの値の後に名前がアルファベット順であるオブジェクトが返されることを指定します。 |
詳細については、「コマンドラインオプション」をご参照ください。
注: revertコマンドを実行してオブジェクトバージョンを削除し、オブジェクトを特定のオブジェクトバージョンに復元することはできません。 バージョンを削除してオブジェクトを特定のバージョンに復元するには、rmコマンドを実行します。 たとえば、次のコマンドを実行して、key123という名前のオブジェクトの3つの最新バージョンを削除できます。
ossutil rm oss:// bucket/key123 -- end-with key123 -- limited-num 3 -rf -- all-versions
例
examplebucketバケット内の削除されたexample.txtオブジェクトを、バージョンIDが123のバージョンに復元します。
ossutil revert oss:// examplebucket/example.txt 123
examplebucketバケット内の削除されたexample.txtオブジェクトを最新の以前のバージョンに復元します。
ossutil return oss:// examplebucket/example.txt HEAD ~ 0
examplebucketバケット内の削除されたexample.txtオブジェクトを4番目に新しいバージョンに復元します。
ossutil return oss:// examplebucket/example.txt HEAD ~ 4
examplebucketバケット内の削除されたexample.txtオブジェクトを前日の最新バージョンに復元します。
ossutil return oss:// examplebucket/example.txt NOW ~ 1d
examplebucketバケット内の削除されたexample.txtオブジェクトを、最終変更時刻が2024-04-12T14:00:00以下の最新バージョンに復元します。
ossutil revert oss://examplebucket/example.txt NOW~2024-04-12T14:00:00
examplebucketバケットのdirディレクトリにあるオブジェクトを、4番目に新しいバージョンに復元します。
ossutil revert oss:// examplebucket/dir -r HEAD ~ 4
examplebucketバケットのdirディレクトリ内のオブジェクトを最新の4番目に前のバージョンに復元し、バージョンが存在しないことを示すエラーを無視します。
ossutil revert oss:// examplebucket/dir -r HEAD ~ 4 -- ignore-version-not-exist