Topik ini menjelaskan masalah yang mungkin Anda temui saat menggunakan ossutil dan solusi untuk masalah-masalah tersebut.
Untuk ossutil V1.6.16 dan versi lebih baru, Anda dapat langsung menggunakan ossutil sebagai nama biner di baris perintah tanpa harus memperbarui nama biner berdasarkan sistem. Untuk ossutil sebelum V1.6.16, Anda harus menentukan nama biner yang sesuai dengan sistem. Untuk informasi lebih lanjut, lihat referensi perintah ossutil.
Apakah ossutil mendukung algoritma tanda tangan V4?
ossutil V1.7.12 dan versi lebih baru mendukung algoritma tanda tangan V4. Untuk informasi lebih lanjut tentang algoritma tanda tangan V4, lihat Sertakan tanda tangan V4 di header Authorization (direkomendasikan).
ossutil V1.7.12 dan versi lebih baru mendukung dua parameter tambahan: --sign-version dan --region. Sebagai contoh, Anda dapat menggunakan perintah berikut untuk membuat bucket di wilayah China (Hangzhou):
./ossutil64 --sign-version v4 --region cn-hangzhou mb oss://examplebucketApakah sinkronisasi objek didukung untuk objek Infrequent Access dan Standard?
Ya, sinkronisasi objek didukung untuk objek Infrequent Access (IA) dan Standard. Untuk informasi lebih lanjut tentang sinkronisasi, lihat Ikhtisar.
Bagaimana cara mencegah objek tertimpa oleh objek lain dengan nama yang sama?
Untuk mencegah objek tertimpa oleh objek lain dengan nama yang sama, tentukan parameter -u dalam perintah ossutil.
Apa yang harus saya lakukan jika pesan lewati muncul saat saya menggunakan parameter -u untuk mengunggah objek?
Analisis: Saat menggunakan parameter -u untuk mengunggah objek, ossutil membandingkan objek yang ingin Anda unggah dengan objek yang ada di bucket.
Jika nama objek yang ingin Anda unggah sama dengan nama objek yang ada dan waktu modifikasi terakhir objek yang ingin Anda unggah sama dengan atau lebih awal daripada waktu modifikasi terakhir objek yang ada, objek yang ingin Anda unggah dilewati. Jika waktu modifikasi terakhir objek yang ingin Anda unggah lebih baru daripada waktu modifikasi terakhir objek yang ada, objek tersebut diunggah. Oleh karena itu, pesan lewati adalah normal saat menggunakan parameter -u untuk mengunggah objek.
Solusi: Abaikan pesan lewati jika Anda yakin bahwa isi objek dengan nama yang sama di bucket sudah benar.
Apa yang harus saya lakukan jika kode status HTTP 403 dikembalikan saat saya memulihkan objek?
Analisis: Kode status HTTP 403 dikembalikan karena salah satu alasan berikut:
Jika Anda melakukan operasi sebagai pengguna RAM, pengguna RAM tidak memiliki izin yang diperlukan pada objek.
Objek diblokir oleh OSS karena isi objek dilarang.
Solusi
Izin pengguna RAM tidak cukup: Berikan izin yang diperlukan.
Pelanggaran konten: Hapus atau abaikan objek jika objek diblokir oleh OSS karena isi objek dilarang.
Apa yang harus saya lakukan jika pesan kesalahan dikembalikan saat saya menghapus bucket yang tidak berisi objek berdasarkan keluaran perintah ls?
Analisis: Saat menjalankan perintah ls tanpa menentukan opsi untuk mencantumkan objek di bucket, bagian dan versi sebelumnya (hanya untuk bucket yang memiliki versioning diaktifkan atau pernah diaktifkan) di bucket tidak dicantumkan. Bucket yang berisi bagian atau versi sebelumnya tidak dapat dihapus dengan menjalankan perintah rm.
Solusi:
Bucket dan objek yang dihapus tidak dapat dipulihkan. Berhati-hatilah saat Anda menjalankan perintah.
Jika versioning pernah atau sedang diaktifkan untuk bucket, hapus bagian dan versi sebelumnya dari bucket sebelum Anda menghapus bucket.
Hapus bagian dan versi sebelumnya dari bucket.
Jalankan perintah berikut untuk mencantumkan dan menghapus bagian dari bucket:
./ossutil64 ls oss://bucket1 -m ./ossutil64 rm -m oss://bucket1 -rJalankan perintah berikut untuk mencantumkan dan menghapus versi sebelumnya dari bucket:
./ossutil64 ls oss://bucket1 --all-versions ./ossutil64 rm oss://bucket1 --all-versions -r
Hapus bucket.
./ossutil64 rm oss://bucket1 -b
Paksa hapus bucket.
Jika bucket tidak memiliki versioning, jalankan perintah berikut untuk memaksa menghapus bucket:
./ossutil64 rm oss://bucketname -abrfJika bucket memiliki versioning, jalankan perintah berikut untuk memaksa menghapus bucket:
./ossutil64 rm oss://bucketname -abrf --all-versions
Apa yang harus saya lakukan jika kemajuan unggah atau unduhan melebihi 100%?
Analisis: Folder bernama .ossutil_checkpoint dibuat saat Anda menggunakan ossutil untuk mengunggah atau mengunduh objek. Secara default, jika objek yang ingin Anda unggah atau unduh lebih besar dari 100 MB, unggah atau unduhan yang dapat dilanjutkan digunakan. Informasi titik pemeriksaan yang dihasilkan selama unggah atau unduhan disimpan di folder .ossutil_checkpoint. Folder ini secara otomatis dihapus setelah unggah atau unduhan selesai. Dalam skenario di mana beberapa instance ossutil berjalan di klien pada saat yang sama dan unggah atau unduhan yang dapat dilanjutkan sedang dilakukan pada instance tersebut, ketika unggah atau unduhan pada suatu instance selesai, folder .ossutil_checkpoint secara otomatis dihapus. Akibatnya, unggah atau unduhan pada instance lain tidak dapat diselesaikan dan kemajuannya melebihi 100%.
Solusi:
Selesaikan tugas unggah atau unduhan saat ini, dan unggah atau unduh objek lagi.
Tambahkan parameter --checkpoint-dir ke perintah cp dan tentukan folder dengan nama berbeda dari nama folder titik pemeriksaan default untuk menyimpan informasi titik pemeriksaan. Contoh:
./ossutil64 cp oss://bucket1/myphoto.jpg /dir --checkpoint-dir checkpoint
Mengapa beberapa permintaan tercatat di log OSS saat saya mengirim permintaan untuk mengunduh objek tunggal menggunakan ossutil?
Analisis: Kesalahan ini terjadi karena salah satu alasan berikut:
ossutil mencoba ulang permintaan saat terjadi pengecualian atau permintaan gagal. Secara default, ossutil mencoba ulang permintaan hingga 10 kali.
Jika objek yang ingin Anda unduh lebih besar dari 100 MB, ossutil mengirim beberapa permintaan untuk mengunduh data berdasarkan rentang hingga seluruh objek diunduh. Akibatnya, beberapa catatan permintaan dihasilkan saat Anda mengunduh objek yang lebih besar dari 100 MB.
Bagaimana cara mempertahankan efisiensi transfer file meskipun terjadi gangguan unduhan?
Gangguan unduhan dapat terjadi karena berbagai alasan.
Unduhan file besar mungkin memerlukan waktu lama untuk selesai, menyebabkan gangguan unduhan.
Dalam kasus ini, gangguan disebabkan oleh batas lebar pita jaringan atau koneksi jaringan yang tidak stabil.
Unduhan file besar mengalami kesalahan akhir file (EOF), menyebabkan gangguan unduhan.
Dalam kasus ini, gangguan disebabkan oleh koneksi jaringan yang hilang atau kinerja baca/tulis disk yang lambat yang tidak sesuai dengan kecepatan unduhan.
Solusi: Gunakan unduhan yang dapat dilanjutkan.
Untuk informasi lebih lanjut tentang cara mengonfigurasi --checkpoint-dir, lihat Sintaks perintah.
Apa yang harus saya lakukan jika kesalahan Error: accessKeyID and ecsUrl are both empty terjadi saat saya menjalankan perintah di ossutil?
Analisis: Tidak ada file konfigurasi yang dibuat di direktori home.
Solusi:
Sebelum Anda menjalankan perintah di ossutil, pastikan bahwa file konfigurasi dibuat di direktori home Anda. Untuk informasi lebih lanjut, lihat Instal ossutil.
Saat Anda menjalankan perintah di ossutil, tentukan jalur file konfigurasi. Sebagai contoh, tentukan jalur file konfigurasi saat Anda mengunggah objek dengan menjalankan perintah cp:
./ossutil64 cp examplefile.txt oss://examplebucket/destfolder/ -c /home/admin/.ossutilconfig
Mengapa charset=utf-8 secara otomatis ditambahkan ke parameter content-type objek yang diunggah menggunakan ossutil?
Analisis: Saat Anda mengunggah objek, ossutil mencari jenis Multipurpose Internet Mail Extensions (MIME) terkait berdasarkan ekstensi objek untuk secara otomatis menentukan parameter Content-Type objek. ossutil mencari jenis MIME terkait dengan memanggil operasi MIME dari pustaka standar SDK OSS untuk Go. Operasi MIME secara otomatis menambahkan charset=utf-8 untuk objek bertipe teks. Sebagai contoh, text/html; charset=utf-8 dikembalikan untuk objek yang memiliki ekstensi .htm.
Solusi: Tingkatkan ossutil ke V1.7.14 atau lebih baru. Anda dapat meningkatkan ossutil dengan menginstal ulang. Untuk informasi lebih lanjut, lihat Instal ossutil.
Apakah saya dapat menggunakan ossutil untuk menanyakan ukuran direktori?
Ya, Anda dapat menjalankan perintah du di ossutil untuk menanyakan ukuran direktori. Perintah du memperoleh informasi tentang semua objek di direktori dengan memanggil operasi ListObjects dan kemudian menghitung ukuran direktori. Jika direktori berisi sejumlah besar objek, waktu yang lama diperlukan untuk menyelesaikan tugas kueri.
Untuk informasi lebih lanjut, lihat du.
Bagaimana cara menghasilkan URL yang ditandatangani yang berisi nama domain kustom bucket?
Konfigurasikan nama domain kustom untuk bucket.
Untuk informasi lebih lanjut, lihat Tentukan nama domain kustom.
Jalankan perintah sign untuk menghasilkan URL yang ditandatangani.
Untuk informasi lebih lanjut, lihat sign.
Apakah pengurutan hasil didukung untuk kueri objek menggunakan ossutil?
Tidak, pengurutan hasil tidak didukung untuk kueri objek berbasis ossutil.
Apa yang harus saya lakukan jika kesalahan "no such host" dilaporkan saat saya menggunakan ossutil untuk menjalankan perintah?
Analisis: Titik akhir tidak valid.
Solusi: Tentukan nilai valid untuk parameter -e, atau simpan informasi titik akhir di file konfigurasi. Parameter -e menentukan titik akhir wilayah tempat bucket berada, seperti -e oss-cn-shanghai.aliyuncs.com. Jangan tambahkan bidang lain ke titik akhir. Untuk informasi lebih lanjut tentang titik akhir setiap wilayah, lihat Wilayah dan titik akhir.
Bagaimana saya dikenakan biaya untuk menjalankan perintah du?
Jika --all-versions tidak ditentukan dalam perintah du, operasi ListObjects dipanggil. Jika --all-versions ditentukan dalam perintah du, operasi ListObjectVersions dipanggil. Selain itu, perintah du juga memulai panggilan ke operasi ListMultipartUploads, yang menghasilkan biaya permintaan. Untuk informasi lebih lanjut, lihat Biaya pemanggilan operasi API.
Jika bagian disimpan di bucket, permintaan ListUploadedParts tambahan dibuat.