全部產品
Search
文件中心

Object Storage Service:put-bucket-replication

更新時間:Apr 02, 2025

put-bucket-replication用於為儲存空間(Bucket)指定資料複製規則。OSS支援跨地區複製(Cross-Region Replication)和同地區複製(Same-Region Replication)。

注意事項

關於資料複製的更多資訊,請分別參見跨地區複製同地區複製

許可權說明

阿里雲帳號預設擁有全部許可權。阿里雲帳號下的RAM使用者或RAM角色預設沒有任何許可權,需要阿里雲帳號或帳號管理員通過RAM PolicyBucket Policy授予操作許可權。

API

Action

說明

PutBucketReplication

oss:PutBucketReplication

為Bucket配置資料複製規則。

oss:ReplicateGet

如果是跨帳號複製,或者指定了RAM角色方式的複製,則源Bucket和目標Bucket都需要此操作的許可權。

命令格式

ossutil api put-bucket-replication --bucket value --replication-configuration value [flags]

參數

類型

說明

--bucket

string

Bucket名稱。

--replication-configuration

string

資料複製配置資訊。

說明

put-bucket-replication命令對應API介面PutBucketReplication。關於API中的具體參數含義,請參見PutBucketReplication

--replication-configuration

--replication-configuration 配置選項既支援XML文法也支援JSON文法。

  • XML文法:

    <ReplicationConfiguration>
        <Rule>
            <PrefixSet>
                <Prefix>string</Prefix>
                <Prefix>string</Prefix>
            </PrefixSet>
            <Action>string</Action>
            <Destination>
                <Bucket>string</Bucket>
                <Location>string</Location>
                <TransferType>string</TransferType>
            </Destination>
            <HistoricalObjectReplication>string</HistoricalObjectReplication>
        </Rule>
    </ReplicationConfiguration>
  • JSON文法:

    {
        "Rule": {
            "PrefixSet": {
                "Prefix": [
                    "string",
                    "string"
                ]
            },
            "Action": "string",
            "Destination": {
                "Bucket": "string",
                "Location": "string",
                "TransferType": "string"
            },
            "HistoricalObjectReplication": "enabled"
        }
    }
說明

關於支援的全域命令列選項,請參見支援的全域命令列選項

使用樣本

為儲存空間examplebucket設定資料複製規則。

  • 使用XML設定檔,cors-configuration.xml內容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <ReplicationConfiguration>
        <Rule>     
            <PrefixSet>
                <Prefix>prefix_1</Prefix>
                <Prefix>prefix_2</Prefix>
            </PrefixSet>
            <Action>PUT</Action>
            <Destination>
                <Bucket>destBucket</Bucket>
                <Location>oss-cn-hangzhou</Location>
                <TransferType>oss_acc</TransferType>
            </Destination>
            <HistoricalObjectReplication>enabled</HistoricalObjectReplication>
        </Rule>
    </ReplicationConfiguration>
    ossutil api put-bucket-replication --bucket examplebucket --replication-configuration file://replication-configuration.xml
  • 使用JSON設定檔,replication-configuration.json 內容如下:

    {
        "Rule": {
            "PrefixSet": {
                "Prefix": [
                    "prefix_1",
                    "prefix_2"
                ]
            },
            "Action": "PUT",
            "Destination": {
                "Bucket": "destBucket",
                "Location": "oss-cn-hangzhou",
                "TransferType": "oss_acc"
            },
            "HistoricalObjectReplication": "enabled"
        }
    }
    
    ossutil api put-bucket-replication --bucket examplebucket --replication-configuration file://replication-configuration.json
  • 使用JSON配置參數,命令樣本如下:

    ossutil api put-bucket-replication --bucket examplebucket --replication-configuration "{\"Rule\":{\"PrefixSet\":{\"Prefix\":[\"prefix_1\",\"prefix_2\"]},\"Action\":\"PUT\",\"Destination\":{\"Bucket\":\"destBucket\",\"Location\":\"oss-cn-hangzhou\",\"TransferType\":\"oss_acc\"},\"HistoricalObjectReplication\":\"enabled\"}}"