Menyalin objek berarti menyalinnya dari bucket sumber ke bucket tujuan di wilayah yang sama atau ke direktori lain dalam bucket yang sama. Konten objek tetap tidak berubah. Gunakan perintah ossutil cp untuk menyalin objek.
Catatan
Untuk menyalin objek, Anda harus memiliki izin
oss:GetObject,oss:ListObjects, danoss:PutObject. Untuk informasi selengkapnya, lihat Grant custom access policies to RAM users.Anda hanya dapat menyalin objek, bukan bagian yang belum digabung (unmerged parts).
Secara default, tag dan atribut objek disalin. Gunakan opsi --copy-props untuk mengonfigurasi aturan penyalinan atribut dan tag.
Operasi salin lintas akun (cross-account) dan lintas wilayah (cross-region) tidak didukung. Untuk menyalin atau memigrasikan objek antar akun atau wilayah, gunakan ossimport atau Data Online Migration.
Saat Anda menggunakan opsi -u atau
--update, sistem mengirim setidaknya satu permintaan HEAD untuk setiap objek yang diperiksa, terlepas dari apakah objek tujuan sudah ada atau tidak. Dalam skenario dengan perubahan data yang jarang, hal ini menghasilkan banyak permintaan yang tidak efisien, yang dapat memengaruhi performa dan menimbulkan biaya permintaan tambahan. Evaluasi kebutuhan bisnis Anda dan gunakan opsi ini dengan hati-hati untuk menghindari konsumsi resource yang tidak perlu.
Format perintah
ossutil cp oss://src_bucket[/src_prefix] oss://dest_bucket[/dest_prefix] [flags]Parameter | Jenis | Deskripsi |
src_bucket | string | Nama bucket sumber. |
src_prefix | string | Direktori atau awalan tertentu untuk objek di bucket sumber. |
dest_bucket | string | Nama bucket tujuan. |
dest_prefix | string | Direktori atau awalan tertentu untuk objek di bucket tujuan. |
--acl | string | Izin akses objek. Nilai yang valid:
|
--bandwidth-limit | SizeSuffix | Anda dapat menggunakan ini untuk membatasi bandwidth jaringan dan mengontrol laju transmisi data. Nilai minimum adalah 1024 B/s. Satuan default adalah B/s. Anda dapat menentukan satuan untuk nilai bandwidth, seperti B (byte), K (kilobyte), M (megabyte), atau G (gigabyte). Misalnya, 50 M menentukan batas bandwidth sebesar 50 MB/s. |
--bigfile-threshold | SizeSuffix | Ambang batas untuk mengaktifkan unggah multi-bagian, unduh, atau salin untuk file besar. Nilai default adalah 104857600. |
--cache-control | string | Perilaku cache halaman web saat objek diunduh. |
--checkers | int | Jumlah checker yang berjalan secara paralel. Nilai default adalah 16. |
--checkpoint-dir | string | Direktori yang menyimpan informasi checkpoint untuk operasi yang dapat dilanjutkan. Nilai default adalah |
--checksum | / | Hanya menyalin objek sumber yang ukuran atau checksum-nya (jika ada) berbeda dari objek tujuan. Opsi ini hanya berlaku untuk salin objek-ke-objek. |
--content-disposition | string | Cara objek ditampilkan. |
--content-encoding | string | Format encoding objek. |
--content-type | string | Tipe konten objek. |
--copy-props | string | Aturan untuk menyalin atribut dan tag selama operasi salin objek-ke-objek. Pengaturan berikut didukung:
|
-d, --dirs | string | Memproses objek dan subdirektori di direktori saat ini, tetapi tidak memproses semua objek di semua subdirektori secara rekursif. |
--encoding-type | string | Tipe encoding nama objek input atau nama file. Nilai yang valid: url. |
--end-with | string | Mengembalikan objek yang secara alfabetis berada sebelum atau sama dengan nilai yang ditentukan. |
--exclude | stringArray | Aturan untuk mengecualikan path atau nama file. |
--exclude-from | stringArray | Membaca aturan pengecualian dari file aturan. |
--expires | string | Waktu kedaluwarsa absolut untuk konten yang di-cache. |
--files-from | stringArray | Membaca daftar nama file sumber dari file. Baris kosong atau baris komentar diabaikan. |
--files-from-raw | stringArray | Membaca daftar nama file sumber dari file. |
--filter | stringArray | Aturan untuk memfilter path atau nama file. |
--filter-from | stringArray | Membaca aturan pemfilteran dari file aturan. |
-f, --force | / | Memaksa operasi tanpa prompt konfirmasi. |
--ignore-existing | / | Melewati objek tujuan yang sudah ada. |
--include | stringArray | Aturan untuk menyertakan path atau nama file. |
--include-from | stringArray | Membaca aturan penyertaan dari file aturan. |
-j, --job | int | Jumlah tugas konkuren. Nilai default adalah 3. Catatan Parameter ini hanya berlaku jika Anda menentukan parameter |
--list-objects | / | Menggunakan operasi ListObjects untuk mendaftar objek. |
--max-size | SizeSuffix | Ukuran maksimum objek yang akan ditransfer. Satuan default adalah byte. Anda juga dapat menggunakan akhiran satuan, seperti B, K, M, G, T, atau P. 1 K (KiB) = 1024 B. |
--metadata | strings | Metadata pengguna objek. Gunakan format key=value. |
--metadata-directive | string | Menentukan cara mengatur metadata objek tujuan. Nilai yang valid:
|
--metadata-exclude | stringArray | Aturan untuk mengecualikan metadata objek. |
--metadata-filter | stringArray | Aturan untuk memfilter metadata objek. |
--metadata-filter-from | stringArray | Membaca aturan pemfilteran metadata objek dari file aturan. |
--metadata-include | stringArray | Aturan untuk menyertakan metadata objek. |
--min-age | Duration | Hanya menyalin objek yang dimodifikasi sebelum interval waktu yang ditentukan. Satuan default adalah detik. Anda dapat menggunakan akhiran satuan. Misalnya, 1h berarti 1 jam. Catatan
|
--max-age | Duration | Hanya menyalin objek yang dimodifikasi dalam interval waktu yang ditentukan. Satuan default adalah detik. Anda dapat menggunakan akhiran satuan. Misalnya, 1h berarti 1 jam. Catatan
|
--min-mtime | Time | Hanya menyalin objek yang dimodifikasi setelah waktu yang ditentukan. Waktu harus dalam format UTC. Misalnya, 2006-01-02T15:04:05. Catatan
|
--max-mtime | Time | Hanya menyalin objek yang dimodifikasi sebelum waktu yang ditentukan. Waktu harus dalam format UTC. Misalnya, 2006-01-02T15:04:05. |
--min-size | SizeSuffix | Ukuran minimum objek yang akan ditransfer. Satuan default adalah byte. Anda juga dapat menggunakan akhiran satuan, seperti B, K, M, G, T, atau P. 1 K (KiB) = 1024 B. |
--no-progress | / | Tidak menampilkan bilah progres. |
--no-error-report | / | Tidak menghasilkan file laporan error untuk pemrosesan batch. |
--output-dir | string | Direktori tempat file laporan error yang dihasilkan selama pemrosesan batch disimpan. Nilai default adalah |
--page-size | int | Jumlah maksimum objek yang didaftar per halaman untuk operasi salin batch. Nilai default adalah 1000. Nilai berkisar antara 1 hingga 1000. |
--parallel | int | Jumlah tugas konkuren untuk operasi internal dalam satu file. |
--part-size | SizeSuffix | Ukuran bagian. Secara default, ossutil menghitung ukuran bagian yang sesuai berdasarkan ukuran objek. Nilai berkisar antara 100 KiB hingga 5 GiB. |
-r, --recursive | / | Menjalankan operasi secara rekursif. Jika Anda menentukan opsi ini, perintah dijalankan pada semua objek yang cocok di bucket. Jika tidak, perintah hanya dijalankan pada objek yang ditentukan oleh path. |
--request-payer | string | Metode pembayaran untuk permintaan. Jika Anda menggunakan mode pay-by-requester, atur parameter ini ke `requester`. |
--size-only | / | Hanya menyalin objek sumber yang ukurannya berbeda dari objek tujuan. |
--start-after | string | Mengembalikan objek yang secara alfabetis berada setelah nilai yang ditentukan. |
--storage-class | string | Kelas penyimpanan objek. Nilai yang valid:
|
--tagging | string | Tag objek. Gunakan format key=value. |
--tagging-directive | string | Menentukan cara mengatur tag objek tujuan. Nilai yang valid:
|
-u, --update | / | Melewati objek tujuan yang sudah ada dan dimodifikasi lebih baru daripada objek sumber. Catatan Jika objek tujuan memiliki waktu modifikasi yang sama dengan objek sumber, objek tujuan akan diperbarui. |
--version-id | string | ID versi objek. |
Untuk informasi selengkapnya, lihat Command-line options.
Konvensi penamaan untuk objek tujuan adalah sebagai berikut:
Saat menyalin satu objek dan dest_prefix kosong, nama objek tujuan adalah path relatif objek sumber.
Saat menyalin satu objek dan dest_prefix diakhiri dengan garis miring (/), nama objek tujuan adalah dest_prefix ditambah path relatif objek sumber.
Saat menyalin satu objek dan dest_prefix tidak diakhiri dengan garis miring (/), nama objek tujuan identik dengan dest_prefix.
Saat melakukan salin batch dan dest_prefix diakhiri dengan garis miring (/), nama objek tujuan adalah dest_prefix ditambah path relatif objek sumber.
Saat melakukan salin batch dan dest_prefix tidak diakhiri dengan garis miring (/), nama objek tujuan adalah dest_prefix + "/" + path relatif objek sumber.
Contoh
Salin satu objek
ossutil cp oss://examplebucket1/examplefile.txt oss://examplebucket1/desfolder/Salin objek secara inkremental
Saat melakukan salin batch dengan opsi --update, perintah melewati objek tujuan yang sudah ada dan dimodifikasi lebih baru daripada objek sumber yang sesuai. Perintahnya adalah sebagai berikut:
ossutil cp oss://examplebucket1/srcfolder1/ oss://examplebucket1/desfolder/ -r --updateSalin objek antar bucket setelah replikasi same-region
Gunakan parameter
--checksumuntuk melakukan salin inkremental berdasarkan checksum: Pendekatan ini cocok untuk skenario yang memerlukan verifikasi konsistensi konten yang ketat, seperti mengirim ulang objek setelah salin batch gagal sambil melewati objek yang berhasil disalin. Sistem melakukan langkah-langkah berikut:Bandingkan ukuran file terlebih dahulu.
Jika ukurannya cocok, hitung dan bandingkan checksum CRC64-nya.
Salin objek hanya jika checksum-nya berbeda.
ossutil cp oss://examplebucket1/srcfolder1/ oss://examplebucket1/desfolder/ -r --checksumGunakan parameter
--ignore-existinguntuk melewati objek yang sudah ada: Pendekatan ini cocok saat Anda ingin melewati objek tujuan yang sudah ada alih-alih menimpanya:ossutil cp oss://examplebucket1/srcfolder1/ oss://examplebucket1/desfolder/ -r --ignore-existing
Ganti nama file
ossutil cp oss://examplebucket1/examplefile.txt oss://examplebucket1/example.txtSaat menggunakan perintah cp untuk mengganti nama objek, objek sumber tetap utuh. Anda dapat menghapus objek sumber setelah mengganti namanya.
Ubah tag objek
ossutil cp oss://examplebucket1/examplefile.txt oss://examplebucket1/ --tagging "abc=1&bcd=2&……"