Copiando um Objeto para Outro Bucket no Object Storage
Copie um objeto para outro bucket no Object Storage.
A cópia de objetos não funcionará se você não autorizar o serviço Object Storage a copiar objetos em seu nome. Consulte Permissões do Serviço para obter mais informações.
Regras de Substituição de Cópia de Objeto
Use as seguintes regras de substituição para controlar a cópia de objetos com base em seus valores da tag da entidade (ETag):
- Substituir objeto de destino: Use esta opção quando não quiser limitar uma operação de cópia por um valor ETag. Essa é a opção padrão. Esta opção pode ser usada para qualquer operação de cópia, independentemente de ela envolver a substituição de um objeto existente.
- Não substituir qualquer objeto de destino: Use essa opção para impedir a substituição de uma cópia existente de um objeto no local de destino, independentemente do valor da ETag do objeto de destino.
- Sobrepor objeto de destino apenas se ele corresponder ao ETag especificado: Use essa opção para impedir a substituição acidental de um objeto no local de destino que não tenha o ETag especificado. Quando você usar essa opção, a operação de cópia só será bem-sucedida se o ETag que você fornecer ao iniciar a solicitação de cópia corresponder ao ETag do objeto de destino.
- Só copie o objeto se a origem corresponder ao ETag especificado: Use essa opção se quiser que a operação de cópia seja bem-sucedida somente se o ETag que você fornecer ao iniciar a solicitação de cópia corresponder ao ETag do objeto de origem. Para objetos que são intencionalmente atualizados e substituídos como parte da atividade de gerenciamento de dados, essa opção garante que apenas a versão especificada do objeto (conforme indicado pela ETag) seja copiada. Se o valor ETag do objeto for alterado após a criação da solicitação de serviço de cópia, mas antes de a operação de cópia ser executada, a operação de cópia não será concluída.
Se você substituir um objeto, não será possível desfazer a operação.
Escopo e Restrições
- Não é possível copiar objetos diretamente do serviço Archive Storage. Para copiar objetos que estão no serviço Archive Storage, primeiro restaure o objeto para a camada de Armazenamento de Objetos Padrão. Os objetos podem ser copiados diretamente para os buckets da camada Arquivo Compactado das camadas Padrão ou de Acesso Não Frequente. Quando você copia objetos para um bucket do Archive Storage, a cópia do objeto é imediatamente arquivada.
- Especifique um bucket de destino existente para a solicitação de cópia. A operação de cópia não cria buckets automaticamente.
- Quando um objeto é copiado, o objeto de destino recebe um novo valor da ETag.
- Se você renomear, sobregravar ou excluir um objeto de origem durante a operação de cópia, a operação de cópia falhará e o objeto de destino não é criado nem substituído.
- A cópia em massa não é suportada. Identifique um único objeto na solicitação de cópia.
Permissões do Serviço
Como o Object Storage é um serviço regional, você deve autorizar o serviço Object Storage de cada região que execute operações de cópia em seu nome. Por exemplo, você pode autorizar o serviço Object Storage na região US East (Ashburn) a gerenciar objetos em seu nome. Depois de autorizar o serviço Object Storage, você pode copiar um objeto armazenado em um bucket da região Leste dos EUA (Ashburn) para um bucket de outra região.
Para localizar o valor do identificador da região de uma região do Oracle Cloud Infrastructure, consulte Regiões e Domínios de Disponibilidade.
Para administradores:
Para permitir a cópia do objeto, você deve autorizar o serviço a gerenciar objetos em seu nome:
- Você pode criar uma política que autorize o serviço na região especificada para gerenciar namespaces do serviço Object Storage, buckets e seus objetos associados em todos os compartimentos da tenancy:
Allow service objectstorage-<region_identifier> to manage object-family in tenancy - Em vez de usar o verbo de política
manage, você pode criar uma política que reduza o escopo do acesso usando uma das seguintes instruções:Allow service objectstorage-<region_identifier> to manage object-family in tenancy where any {request.permission='OBJECT_READ', request.permission='OBJECT_INSPECT', request.permission='OBJECT_CREATE', request.permission='OBJECT_OVERWRITE', request.permission='OBJECT_DELETE'}Allow service objectstorage-<region_identifier> to manage object-family in compartment <compartment_name> where any {request.permission='OBJECT_READ', request.permission='OBJECT_INSPECT', request.permission='OBJECT_CREATE', request.permission='OBJECT_OVERWRITE', request.permission='OBJECT_DELETE'}
Copiando um Objeto
Regra de substituição
Selecione a regra de sobregravação apropriada para solicitação da cópia: - Substituir objeto de destino
- Não substituir qualquer objeto de destino
- Substituir objeto de destino apenas se ele corresponder ao ETag especificado
- Só copie o objeto se a origem corresponder ao ETag especificado
Consulte Regras de Substituição de Cópia de Objeto para obter descrições de cada uma dessas regras.
Selecione Copiar objeto.
A caixa de diálogo Detalhes da solicitação de serviço é exibida e confirma que a solicitação de cópia foi enviada com sucesso e rastreia o status da solicitação.
Use o comando oci os object copy e os parâmetros necessários para copiar um objeto para outro bucket:
oci os object copy --bucket-name source_bucket_name --source-object-name source_object_name --destination-bucket destination_bucket_name [OPTIONS]Por exemplo:
oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-namespace ansh8lvru1zp --destination-bucket UK_photosPara ver uma lista completa de parâmetros e valores para comandos CLI, consulte a Referência de Comando CLI.
Copiando um Objeto para Outra Região
Inclua o parâmetro destination-regione o identificador de região para especificar um bucket de destino na região em que o objeto de destino reside.Por exemplo:
Sua tenancy deverá estar inscrita em uma região para que você copie um objeto para um bucket nessa região.oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-region uk-london-1Copiando para Outra Camada de Armazenamento de Destino
Inclua o parâmetro destination-object-storage-tiere um valor de camada de armazenamento suportado para copiar o objeto para outra camada de armazenamento no bucket de destino que a camada em que ele reside na origem.Por exemplo:
oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-object-storage-tier ArchiveOs valores suportados são:
StandardInfrequentAccessArchive-
Se você não especificar uma camada de armazenamento de destino, o objeto será armazenado na mesma camada de armazenamento do bucket. Consulte Camadas do Serviço Object Storage para obter mais informações.
Especificando o Namespace do Objeto Copiado
Inclua o parâmetro destination-namespacee seu valor para especificar o namespace de destino para o qual o objeto é copiado.Por exemplo:
Consulte Noções Básicas de Namespaces para obter mais informações.oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-namespace MyNamespaceEspecificando um Nome Alternativo para o Objeto Copiado
Inclua o parâmetro e seu valor para aplicar um nome alternativo ao objeto copiado.destination-object-namePor exemplo:
oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-object-name hummingbird_brochure.jpgPor padrão, o nome é o mesmo nome do objeto que você está copiando.
Execute a operação CopyObject para copiar um objeto para outro bucket.