Copia di un oggetto in un altro bucket nello storage degli oggetti
Copia di un oggetto in un altro bucket nello storage degli oggetti.
La copia dell'oggetto non funziona se non si autorizza il servizio di storage degli oggetti a copiare gli oggetti per conto dell'utente. Per ulteriori informazioni, vedere Autorizzazioni servizio.
Copia regole di sovrascrittura oggetto
Utilizzare le regole di sovrascrittura per controllare la copia degli oggetti in base ai relativi valori di tag entità (ETag).
-
Sovrascrivi oggetto di destinazione: utilizzare questa opzione quando non si desidera limitare un'operazione di copia in base a un valore ETag. Questa è l'opzione predefinita. Questa opzione può essere utilizzata per qualsiasi operazione di copia, indipendentemente dal fatto che implichi la sovrascrittura di un oggetto esistente.
-
Non sovrascrivere alcun oggetto di destinazione: utilizzare questa opzione per impedire la sovrascrittura di una copia esistente di un oggetto nella posizione di destinazione, indipendentemente dal valore ETag dell'oggetto di destinazione.
-
Sovrascrivi oggetto di destinazione solo se corrisponde al valore ETag specificato: utilizzare questa opzione per impedire la sovrascrittura accidentale di un oggetto nella posizione di destinazione che non dispone del valore ETag specificato. Quando si utilizza questa opzione, l'operazione di copia riesce solo se il valore ETag fornito all'avvio della richiesta di copia corrisponde al valore ETag dell'oggetto di destinazione.
-
Copia oggetto solo se l'origine corrisponde all'ETag specificata: utilizzare questa opzione se si desidera che l'operazione di copia abbia esito positivo solo se l'ETag fornita all'avvio della richiesta di copia corrisponde all'ETag dell'oggetto di origine. Per gli oggetti che vengono intenzionalmente aggiornati e sovrascritti nell'ambito dell'attività di gestione dei dati, questa opzione garantisce che sia consentita la copia solo della versione specificata dell'oggetto (come indicato dal ETag). Se il valore ETag dell'oggetto cambia dopo la creazione della richiesta di lavoro di copia, ma prima dell'esecuzione dell'operazione di copia, l'operazione di copia non viene completata.
Se si sovrascrive un oggetto, l'operazione non può essere annullata.
Ambito e vincoli
-
Impossibile copiare gli oggetti direttamente da Storage di archivio. Per copiare gli oggetti presenti nello storage di archivio, devi prima ripristinare l'oggetto nel livello di storage degli oggetti standard. Gli oggetti possono essere copiati direttamente nei bucket dei livelli di archiviazione dai livelli di accesso standard o non frequente. Quando copi gli oggetti in un bucket di storage di archivio, la copia dell'oggetto viene immediatamente archiviata.
-
Specificare un bucket di destinazione esistente per la richiesta di copia. L'operazione di copia non crea automaticamente i bucket.
-
Quando un oggetto viene copiato, l'oggetto di destinazione riceve un nuovo valore ETag.
-
Se si rinomina, sovrascrive o elimina un oggetto di origine durante un'operazione di copia, l'operazione di copia non riesce e l'oggetto di destinazione non viene creato o sovrascritto.
-
La copia di massa non è supportata. Identificare un singolo oggetto nella richiesta di copia.
Autorizzazioni servizio
Poiché lo storage degli oggetti è un servizio regionale, devi autorizzare il servizio di storage degli oggetti per ogni area che esegue operazioni di copia per tuo conto. Ad esempio, potresti autorizzare il servizio di storage degli oggetti nell'area orientale degli Stati Uniti (Ashburn) a gestire gli oggetti per tuo conto. Dopo aver autorizzato il servizio di storage degli oggetti, puoi copiare un oggetto memorizzato in un bucket dell'area orientale degli Stati Uniti (Ashburn) in un bucket in un'altra area.
Per determinare il valore dell'identificativo dell'area di un'area di Oracle Cloud Infrastructure, vedere Aree e domini di disponibilità.
Per gli amministratori:
Per abilitare la copia degli oggetti, è necessario autorizzare il servizio a gestire gli oggetti per conto dell'utente:
-
Puoi creare un criterio che autorizza il servizio nell'area specificata a gestire gli spazi di nomi dello storage degli oggetti, i bucket e i relativi oggetti associati in tutti i compartimenti della tenancy:
Allow service objectstorage-<region_identifier> to manage object-family in tenancy
-
Anziché utilizzare il verbo criterio
manage
, è possibile creare un criterio che riduca l'ambito di accesso utilizzando una delle seguenti istruzioni: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'}
Copia di un oggetto
Viene visualizzata la finestra di dialogo Dettagli richiesta di lavoro che conferma che la richiesta di copia è stata sottomessa correttamente e tiene traccia dello stato della richiesta.
Utilizzare il comando oci os object copy e i parametri richiesti per copiare un oggetto in un altro bucket:
oci os object copy --bucket-name source_bucket_name --source-object-name source_object_name --destination-bucket destination_bucket_name [OPTIONS]
Ad esempio:
oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-namespace ansh8lvru1zp --destination-bucket UK_photos
Copia di un oggetto in un'area diversa
Includere il parametro
destination-region
e l'identificativo dell'area per specificare un bucket di destinazione nell'area corrispondente a quello in cui risiede l'oggetto di destinazione.Ad esempio:
La tenancy deve essere sottoscritta a un'area per poter copiare un oggetto in un bucket in quell'area.oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-region uk-london-1
Copia in un altro livello di storage di destinazione
Includere il parametro
destination-object-storage-tier
e un valore di livello di storage supportato per copiare l'oggetto in un livello di storage diverso nel bucket di destinazione rispetto al livello in cui risiede nell'origine.Ad esempio:
oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-object-storage-tier Archive
I valori supportati sono:
-
Standard
(impostazione predefinita) -
InfrequentAccess
-
Archive
-
Se non si specifica un livello di storage di destinazione, l'oggetto viene memorizzato nello stesso livello di storage del bucket. Per ulteriori informazioni, consulta la sezione relativa ai livelli di storage degli oggetti.
Specifica dello spazio di nomi dell'oggetto copiato
Includere il parametro
destination-namespace
e il relativo valore per specificare lo spazio di nomi di destinazione in cui viene copiato l'oggetto.Ad esempio:
Per ulteriori informazioni, vedere Informazioni sugli spazi di nomi.oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-namespace MyNamespace
Specifica di un nome alternativo per l'oggetto copiato
Includere il parametro
e il relativo valore per applicare un nome alternativo all'oggetto copiato.destination-object-name
Ad esempio:
oci os object copy --bucket-name photos --source-object-name hummingbird.jpg --destination-bucket UK_photos --destination-object-name hummingbird_brochure.jpg
Per impostazione predefinita, il nome è lo stesso dell'oggetto che si sta copiando.
Per un elenco completo dei parametri e dei valori per i comandi della CLI, vedere il manuale CLI Command Reference.
-
Eseguire l'operazione CopyObject per copiare un oggetto in un altro bucket.