オブジェクトのバージョニングの管理
オブジェクト・バージョニングは、偶発的または悪意のあるオブジェクトの更新、上書きまたは削除に対するデータ保護を提供します。
オブジェクト・バージョニングはバケット・レベルで有効化されます。 バージョニングは、新しいオブジェクトのアップロード、既存のオブジェクトの上書き、またはオブジェクトの削除が行われるたびにオブジェクト・バージョンを自動的に作成するようObject Storageに指示します。 オブジェクト・バージョニングは、バケット作成時以降で有効化できます。 バージョニング対応のバケットには、オブジェクトの多数のバージョンを含めることができます。 オブジェクトの最新バージョンは常に1つで、それ以前のバージョンは0つ以上あります。
概念の詳細は、「Oracle Private Cloud Appliance概要ガイド」の「オブジェクト・ストレージの概要」の項を参照してください。
バケット作成時のバージョニングの有効化
オブジェクト・バージョニングは、偶発的または悪意のあるオブジェクトの更新と削除に対するデータ保護を提供します。
OCI CLIの使用
- 
                           
                           コマンドを実行するために必要な情報を収集します。 - 
                                 
                                 ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照) 
- 
                                 
                                 コンパートメントOCID ( oci iam compartment list -all)
- 
                                 
                                 バケット名: このバケットの名前。 
 
- 
                                 
                                 
- 
                           
                           構文(1行に入力): oci os bucket create --namespace-name <object_storage_namespace> --compartment-id <target_compartment_id> --name <bucket_name> --versioning enabled 例: oci os bucket create \ --namespace-name examplenamespace \ --compartment-id ocid.compartment.â¦.â¦.â¦.exampleuniqueID \ --name MyStandardBucket \ --versioning enabled { "data": { "approximate-count": null, "approximate-size": null, "compartment-id": "ocid1.compartment.â¦.â¦.â¦.uniqueID", "created-by": "ocid1.user.â¦.â¦.â¦.uniqueID", "defined-tags": null, "etag": "00b4edbb27012ae78a912428ad1e630c", "freeform-tags": null, "id": null, "is-read-only": null, "kms-key-id": null, "metadata": null, "name": "bucket-4-versioning", "namespace": "export/examplenamespace", "object-events-enabled": null, "object-lifecycle-policy-etag": null, "public-access-type": "NoPublicAccess", "replication-enabled": null, "storage-tier": "Standard", "time-created": "2021-06-10T18:39:12+00:00", "versioning": "Enabled" }, "etag": "00b4edbb27012ae78a912428ad1e630c" }
バージョニングの有効化または一時停止(バケット作成後)
オブジェクト・バージョニングは、偶発的または悪意のあるオブジェクトの更新と削除に対するデータ保護を提供します。
OCI CLIの使用
- 
                           
                           コマンドを実行するために必要な情報を収集します。 - 
                                 
                                 ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照) 
- 
                                 
                                 コンパートメントOCID ( oci iam compartment list -all)
- 
                                 
                                 バケット名( oci os bucket list)、「バケットのリスト」を参照
 
- 
                                 
                                 
- 
                           
                           次のコマンドを実行します 構文(1行に入力): oci os bucket update --namespace-name <object_storage_namespace> --compartment-id <target_compartment_id> --bucket-name <bucket_name> --versioning <enabled | suspended> --versioningの場合は、いずれかのオプションを選択:enabledまたはsuspended。オブジェクト・バージョニングの有効化例: oci os bucket update \ --namespace-name examplenamespace \ --compartment-id ocid.compartment.â¦.â¦.â¦.uniqueID \ --bucket-name MyBucket \ --versioning Enabled { "data": { "approximate-count": null, "approximate-size": null, "compartment-id": "ocid1.compartment.â¦.â¦.â¦.uniqueID", "created-by": "ocid1.user.â¦.â¦.â¦.uniqueID", "defined-tags": null, "etag": "117f0608bdf83b9c7ea393db556a0ee4", "freeform-tags": null, "id": null, "is-read-only": null, "kms-key-id": null, "metadata": null, "name": "MyBucket", "namespace": "export/examplenamespace", "object-events-enabled": null, "object-lifecycle-policy-etag": null, "public-access-type": "ObjectRead", "replication-enabled": null, "storage-tier": "Standard", "time-created": "2021-06-02T17:06:18+00:00", "versioning": "Enabled" }, "etag": "117f0608bdf83b9c7ea393db556a0ee4" }
オブジェクト・バージョンおよび詳細の表示
OCI CLIの使用
- 
                           
                           コマンドを実行するために必要な情報を収集します。 - 
                                 
                                 ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照) 
- 
                                 
                                 コンパートメントOCID ( oci iam compartment list -all)
- 
                                 
                                 バケット名( oci os bucket list)、「バケットのリスト」を参照
 
- 
                                 
                                 
- 
                           
                           次のコマンドを実行します 構文(1行に入力): oci os object list-object-versions --namespace-name <object_storage_namespace> --bucket-name <bucket_name> 例: oci os object list-object-versions \ --namespace-name examplenamespace \ --bucket-name MyBucket { "data": [ { "etag": null, "is-delete-marker": false, "md5": "3DI5GbLmKiRxY/ozWxyXHQ==", "name": "bucket-data", "size": 103, "time-created": "2021-06-02T22:20:25+00:00", "time-modified": null, "version-id": null }, { "etag": null, "is-delete-marker": false, "md5": "VIic5JncRWwDQj6CnsZ1Ww==", "name": "compute.log", "size": 4878456, "time-created": "2021-06-10T19:03:26+00:00", "time-modified": null, "version-id": "5f4ce7e8-656f-409a-b70a-ebfedddcfeda" } ], "prefixes": [] }
オブジェクトの前のバージョンの削除
バージョニングが有効な場合、特定のバージョンをターゲットとせずにオブジェクトを削除すると、リカバリ可能なオブジェクトの削除マーカーおよび以前のバージョンが作成されます。 ただし、オブジェクトの以前のバージョンを削除することは永続的な削除です。
OCI CLIの使用
- 
                           
                           コマンドを実行するために必要な情報を収集します。 - 
                                 
                                 ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照) 
- 
                                 
                                 コンパートメントOCID ( oci iam compartment list -all)
- 
                                 
                                 バケット名( oci os bucket list)、「バケットのリスト」を参照
- 
                                 
                                 オブジェクト名 ( oci os object list)、「バケット内のオブジェクトの表示」を参照
 
- 
                                 
                                 
- 
                           
                           構文: ノート: オブジェクトの version-idがnullの場合、オブジェクトのバージョンは1つのみです。 このオブジェクトを削除するには、--version-id引数を省略します。oci os object delete --namespace-name <object_storage_namespace> --bucket-name <bucket_name> --version-id <bucket_version_id> --object-name <object_name> 例: oci os object delete --namespace-name examplenamespace \ --bucket-name MyBucket \ --version-id 7f1f537d-ec9c-4706-867a-b1dae355c263 \ --object-name compute.log 
削除されたオブジェクト・バージョンのリカバリ
削除されたオブジェクト・バージョンのリカバリは、オブジェクトの最新バージョンを削除したときに作成された削除マーカーを削除するのと同様に簡単です。 削除マーカーの直下にリストされているオブジェクトの前のバージョンが回復され、オブジェクトの最新バージョンになります。
OCI CLIの使用
- 
                           
                           バケット内のオブジェクトをリストします。 「オブジェクト・バージョンおよび詳細の表示」を参照してください。 出力で、 "is-delete-marker": trueを持つオブジェクト・バージョンを見つけます。削除マーカーを削除するには、deleteコマンドでそのオブジェクトのversion-idを使用します。 ノート: オブジェクトの version-idがnullの場合、オブジェクトのバージョンは1つのみです。 このオブジェクト・マーカーを削除するには、--version-id引数を省略します。
- 
                           
                           コマンドを実行するために必要な情報を収集します。 - 
                                 
                                 ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照) 
- 
                                 
                                 コンパートメントOCID ( oci iam compartment list -all)
- 
                                 
                                 バケット名( oci os bucket list)、「バケットのリスト」を参照
- 
                                 
                                 オブジェクト名 ( oci os object list)、「バケット内のオブジェクトの表示」を参照
- 
                                 
                                 バージョンID (前のステップを参照) 
 
- 
                                 
                                 
- 
                           
                           構文: oci os object delete --namespace-name <object_storage_namespace> --bucket-name <bucket_name> --object-name <object_name> --version-id <bucket_version_id> 例: oci os object delete --namespace-name examplenamespace \ --bucket-name MyBucket --object-name application.log --version-id 6ce3eb93-8850-4732-8949-cb6e67b722b0 Are you sure you want to delete this resource? [y/N]: y