Saya telah menulis sebuah skrip kecil yang berisi dan mengompres daftar direktori + file.
Skrip tersebut tampaknya berjalan dengan sukses, karena file .tar.gz yang dapat digunakan dibuat setelah skrip berjalan.
Namun, saya mendapatkan pesan yang menjengkelkan ini setelah skrip selesai:
tar: Keluar dengan status kegagalan karena kesalahan sebelumnya
Saya tidak melihat pesan kesalahan saat skrip berfungsi, dan seperti yang saya katakan, file yang dihasilkan dapat dikompres tanpa peringatan / kesalahan. Karena saya menggunakan ini sebagai bagian dari cadangan, saya ingin memastikan bahwa saya tidak mengabaikan sesuatu yang serius.
Apa alasan yang memungkinkan bahwa pesan kesalahan / peringatan ini diproduksi - dan dapatkah saya mengabaikannya dengan aman ?. Jika saya tidak dapat mengabaikannya, apa langkah-langkah untuk mendiagnosis dan menyelesaikan kesalahan?
Saya berjalan di Ubuntu 10.0.4
masalahnya adalah argumen,
f
argumen ambil berikutnya sebagai nama file, jadi itu harus menjadi argumen terakhiratau
sama dan tidak ada kesalahan take.
sumber
Terkadang mencadangkan file yang mungkin berubah selama pencadangan seperti file log, Anda mungkin menemukan opsi tar yang berguna '--ignore-gagal-baca' (Saya menggunakan Debian Linux, tidak yakin untuk non gnu tar).
Output dan kesalahan standar dapat dialihkan ke 2 file berbeda dengan sesuatu seperti:
Saya menemukan ini umumnya aman, tapi harap berhati-hati karena tar tidak akan berhenti ...
sumber
Saya mengalami masalah yang sama dan tidak ada jawaban di atas yang bekerja untuk saya. Namun, saya menemukan bahwa menjalankan perintah berikut berhasil:
tar -cpzf /backups/fullbackup.tar.gz --exclude=backups --exclude=proc --exclude=tmp --exclude=mnt --exclude=sys --exclude=dev --exclude=run /
Kesalahan yang dirujuk
tar: Exiting with failure status due to previous errors
dapat diidentifikasi dengan mematikan opsi -v. Setelah ditinjau, kesalahan berasal dari direktori seperti/run
dan/sys
.Dengan mengecualikan direktori ini, itu berfungsi dengan baik. Semoga ini bisa membantu siapa pun dengan masalah serupa.
sumber
Saya memiliki masalah yang sama. Yang saya lakukan adalah menghapus tanda hubung ("-") dari perintah.
Alih-alih mengetiknya sebagai
coba ketikkan sebagai
Saya tidak mengetahui mengapa tanda hubung menyebabkan masalah dalam kasus saya tetapi setidaknya itu berhasil.
sumber
-f
harusoutput.tar.gz
dan tidak boleh adaz
di antara keduanya. Tanpa kembali memesan satu pilihan dengan benar akan menjadi:tar -cvf output.tar.gz -z folder/
. Gaya lama mengharapkan semua opsi di satu tempat dan semua argumen mengikuti.Anda salah mengerti jawaban sebelumnya. Masalahnya bukan
-
, itu adalah di manaf
ada dalam daftar argumen Anda.Akan mencoba membuat arsip yang disebut "z", karena itu adalah teks setelahnya
f
. Pesan kesalahan adalah karena tar tidak dapat menemukan "target.gz" untuk ditambahkan ke arsip "z".Akan membuat target.tgz dengan benar dan menambahkan file ke sana. Ini karena target.tgz adalah teks pertama setelah
f
argumen.sumber
Biasanya Anda dapat mengabaikan pesan itu. Jika ada perubahan (seperti penghapusan file / kreasi / modifikasi) ke pohon direktori yang mendasari selama pembuatan tar, itu akan membuang pesan itu. Juga jika ada file khusus seperti node perangkat, fifos dan sebagainya, mereka akan menyebabkan peringatan itu.
Apakah Anda yakin tidak dapat melihat file pelakunya? Coba dengan
tar cvfz yourtarball.tgz /your/path
sumber
Saya memiliki masalah yang serupa dengan membuka file yang telah saya terima. Ternyata saya tidak punya izin untuk menulis file di arsip yang dimiliki oleh root. Menggunakan sudo memperbaikinya.
sumber
sumber