全部产品
Search
文档中心

Object Storage Service:kembalikan

更新时间:Jul 02, 2025

Anda dapat menjalankan perintah revert untuk memulihkan versi objek yang dihapus dalam bucket dengan versi aktif ke versi sebelumnya yang paling baru.

Catatan penggunaan

  • Untuk memulihkan versi objek yang dihapus, Anda harus memiliki izin oss:GetObject, oss:PutObject, oss:ListObjectVersions, dan oss:DeleteObject. Untuk informasi lebih lanjut, lihat Lampirkan Kebijakan Kustom ke Pengguna RAM.

  • Untuk informasi lebih lanjut tentang versi, lihat Versi.

  • Untuk informasi lebih lanjut tentang penanda hapus, lihat Penanda Hapus.

Sintaks perintah

ossutil revert oss://bucket[/prefix] direktif-versi [flags]

Parameter

Tipe

Deskripsi

direktif-versi

string

Versi objek yang dihapus yang ingin Anda pulihkan. Nilai valid:

  • ID versi. Contoh: CAEQIBiBgICAr6yv9hgiIDZiNmUzNjM5Njg0ZDRhOWQ4Yj.

  • Indeks versi. Format: HEAD~n. Versi objek dipulihkan ke versi n-1 yang valid, tidak termasuk penanda hapus.

    • Jika indeks versi disetel ke HEAD~0, versi objek dipulihkan ke versi sebelumnya yang paling baru. Jika versi terbaru adalah penanda hapus, versi objek dipulihkan ke versi sebelumnya yang paling baru dengan menghapus penanda hapus.

    • Jika indeks versi disetel ke HEAD~n (n > 0), versi objek dipulihkan ke versi sebelumnya yang paling baru dengan menyalin versi objek.

  • Indeks waktu. Format: NOW~Waktu Relatif atau NOW~Waktu Absolut. Versi objek dipulihkan ke versi sebelumnya yang paling baru yang waktu modifikasi terakhirnya tidak lebih dari waktu yang ditentukan, tidak termasuk penanda hapus.

    • Jika indeks waktu disetel ke NOW~Waktu Relatif, versi objek dipulihkan ke versi sebelumnya yang paling baru sebelum periode waktu tertentu. Format: NOW~ dengan akhiran satuan waktu. Nilai valid untuk akhiran satuan waktu: ms, s, m, h, d, w, m, dan y.

      • Contoh: NOW~1d menunjukkan bahwa versi objek dipulihkan ke versi sebelumnya yang paling baru pada hari sebelumnya.

    • Jika indeks waktu disetel ke NOW~Waktu Absolut, versi objek dipulihkan ke versi sebelumnya yang paling baru yang waktu modifikasi terakhirnya tidak lebih dari tanggal atau titik waktu tertentu. Format: NOW~ dengan string waktu (YYYY-MM-DDTHH:mm:ss) yang mengikuti standar ISO 8601.

      • Contoh: NOW~2024-04-12T14:00:00 menunjukkan bahwa versi objek dipulihkan ke versi sebelumnya yang paling baru yang waktu modifikasi terakhirnya tidak lebih dari 14:00:00, 12 April 2024.

-d, --dirs

/

Menentukan bahwa objek dan subdirektori dalam direktori saat ini dikembalikan.

--encoding-type

string

Metode pengkodean yang digunakan untuk mengkodekan nama objek. Nilai valid: url.

--end-with

string

Menentukan bahwa objek yang namanya secara alfabetis sebelum atau sama dengan nilai parameter --end-with dikembalikan.

--exclude

stringArray

Aturan pengecualian untuk jalur atau nama objek.

--exclude-from

stringArray

Menentukan bahwa aturan pengecualian dibaca dari file aturan.

--files-from

stringArray

Menentukan bahwa nama objek sumber dibaca dari file aturan, dan baris kosong atau baris komentar diabaikan.

--files-from-raw

stringArray

Menentukan bahwa nama objek sumber dibaca dari file aturan.

--filter

stringArray

Aturan filter untuk jalur atau nama objek.

--filter-from

stringArray

Menentukan bahwa aturan filter untuk jalur atau nama objek dibaca dari file aturan.

-f, --force

/

Menentukan bahwa perintah dijalankan secara paksa tanpa prompt konfirmasi.

--ignore-version-not-exist

/

Menentukan bahwa kesalahan yang menunjukkan versi tidak ada diabaikan dalam operasi batch.

--include

stringArray

Aturan inklusi untuk jalur atau nama objek.

--include-from

stringArray

Menentukan bahwa aturan inklusi dibaca dari file aturan.

--max-age

Durasi

Menentukan bahwa objek yang waktu modifikasi terakhirnya lebih awal dari nilai parameter --max-age tidak dipulihkan. Satuan default adalah detik. Satuan bisa milidetik, detik, menit, jam, hari, minggu, bulan, atau tahun. Secara default, parameter ini dibiarkan kosong.

--min-mtime

Waktu

Menentukan bahwa objek yang waktu modifikasi terakhirnya lebih awal dari nilai parameter --min-mtime tidak dipulihkan. Nilainya dalam UTC. Secara default, parameter ini dibiarkan kosong.

--page-size

int

Jumlah maksimum objek yang dapat dikembalikan. Nilai default: 1000. Nilai valid: 1 hingga 1000.

-r, --recursive

/

Menentukan bahwa perintah dijalankan secara rekursif pada objek. Jika parameter ini ditentukan, perintah revert berlaku untuk semua objek yang memenuhi kondisi dalam bucket. Jika tidak, perintah revert hanya berlaku untuk objek di jalur yang ditentukan.

--request-payer

string

Pembayar permintaan. Jika pay-by-requester diaktifkan untuk bucket, setel parameter ini ke requester. Nilai valid: requester.

--start-after

string

Menentukan bahwa objek yang namanya secara alfabetis setelah nilai parameter --start-after dikembalikan.

Catatan

Untuk informasi lebih lanjut, lihat Opsi Baris Perintah.

Catatan: Anda tidak dapat menjalankan perintah revert untuk menghapus versi objek guna memulihkan objek ke versi tertentu. Untuk memulihkan objek ke versi tertentu dengan menghapus versi, jalankan perintah rm. Sebagai contoh, Anda dapat menjalankan perintah berikut untuk menghapus tiga versi sebelumnya yang paling baru dari objek bernama key123.

ossutil rm oss://bucket/key123 --end-with key123 --limited-num 3 -rf --all-versions 

Contoh

Memulihkan versi yang dihapus dari satu objek

  • Pulihkan objek example.txt yang dihapus di bucket examplebucket ke versi dengan ID versi 123:

    ossutil revert oss://examplebucket/example.txt 123
  • Pulihkan objek example.txt yang dihapus di bucket examplebucket ke versi sebelumnya yang paling baru:

    ossutil revert oss://examplebucket/example.txt HEAD~0
  • Pulihkan objek example.txt yang dihapus di bucket examplebucket ke versi keempat sebelumnya yang paling baru:

    ossutil revert oss://examplebucket/example.txt HEAD~4
  • Pulihkan objek example.txt yang dihapus di bucket examplebucket ke versi sebelumnya yang paling baru pada hari sebelumnya:

    ossutil revert oss://examplebucket/example.txt NOW~1d
  • Pulihkan objek example.txt yang dihapus di bucket examplebucket ke versi sebelumnya yang paling baru yang waktu modifikasi terakhirnya tidak lebih dari 2024-04-12T14:00:00:

    ossutil revert oss://examplebucket/example.txt NOW~2024-04-12T14:00:00

Memulihkan versi yang dihapus dari beberapa objek

  • Pulihkan semua objek di direktori dir dalam bucket examplebucket ke versi keempat sebelumnya yang paling baru:

    ossutil revert oss://examplebucket/dir -r HEAD~4
  • Pulihkan semua objek di direktori dir dalam bucket examplebucket ke versi keempat sebelumnya yang paling baru dan abaikan kesalahan yang menunjukkan bahwa versi tidak ada:

    ossutil revert oss://examplebucket/dir -r HEAD~4 --ignore-version-not-exist
  • Pulihkan semua objek kecuali objek dalam format JPG di bucket examplebucket ke versi sebelumnya yang paling baru:

    ossutil revert oss://examplebucket -r --exclude "*.jpg" HEAD~0
  • Pulihkan semua objek dengan akhiran .txt di direktori dir1 dan dir2 dalam bucket examplebucket ke versi sebelumnya yang paling baru:

    ossutil revert oss://examplebucket -r --include "/dir1/*.txt" --include "/dir2/*.txt" HEAD~0
  • Baca aturan inklusi dari file include_rules.txt dan pulihkan objek yang memenuhi aturan di direktori dir dalam bucket examplebucket ke versi keempat sebelumnya yang paling baru:

    File include_rules.txt berisi konten berikut:

    *.log
    *.csv

    Contoh perintah:

    ossutil revert oss://examplebucket/dir -r HEAD~4 --include-from include_rules.txt