GNU/Linux >> Belajar Linux >  >> Linux

Apakah Menggunakan Tar Saat Direktori Sumber Diperbarui Aman?

Saya harus mengajukan pertanyaan serupa.

Dalam skenario di mana Anda mencadangkan direktori dengan tar dan

  1. file/dir baru sedang ditambahkan

  2. file/dir saat ini sedang diedit dan dihapus

dapatkah Anda mengharapkan hasil yang aman?

Dengan hasil yang aman Maksud saya seperti:

  1. tar tidak akan mengacaukan sesuatu pada dir/subdir sumber
  2. tar akan menambah arsip seperti yang ditemukan pada saat membangun arsip
  3. sinyal sukses akan dipancarkan meskipun terjadi perubahan yang dijelaskan

Jawaban yang Diterima:

1. tar tidak akan mengacaukan sesuatu pada direktori/subdir sumber

Benar, kecuali jika Anda menganggap memperbarui waktu akses sebagai kesalahan. Selain itu, tar tidak mengubah apa pun di pohon sumber.

2. tar akan menambah arsip seperti yang ditemukan pada saat membangun arsip

Benar, untuk beberapa nilai "pada saat ini". Jika pohon sumber berubah saat tar membacanya, apa yang disertakan dalam arsip agak tidak dapat diprediksi. Khususnya, jika sebuah file berubah saat tar sedang membacanya, tidak ada jaminan bahwa tar akan menulis salinan file tersebut seperti sebelumnya. Misalnya, dimungkinkan untuk memiliki:

  • tar membaca byte 0–4095 dari foo .
  • Beberapa program menulis ke foo , mengubah byte 4095–4096 dalam satu operasi tulis.
  • tar membaca byte 4096–8191 dari foo .

Kemudian isi foo dalam arsip bukanlah konten lama atau konten baru, ini adalah campuran keduanya. Contoh lain adalah jika sebuah file diganti namanya saat tar sedang membaca pohon sumber, tar mungkin melewatkannya sama sekali.

3 . sinyal sukses akan dipancarkan bahkan jika perubahan yang dijelaskan terjadi

Tidak, belum tentu. Jika tar mendeteksi bahwa sumber telah berubah saat sedang membacanya, tar mungkin akan mengeluh dan mengembalikan status kegagalan. Secara khusus, tar perlu menulis ukuran file ke arsip sebelum menulis konten, sehingga tar membaca ukuran setiap file sumber terlebih dahulu. Jika mencapai akhir file sebelum mencapai ukuran yang direkam, tidak ada cara yang jelas untuk memulihkannya, jadi implementasi tar apa pun harus mengeluh setidaknya dalam kasus itu.

Untuk membuat cadangan dengan aman, gunakan sistem file atau alat tingkat volume untuk membuat snapshot, dan mencadangkan snapshot.

Terkait:Linux – tamu virtualbox KALI di host Ubuntu tidak menyesuaikan resolusi secara otomatis?
Linux
  1. [Linux] :Cara mengecualikan direktori saat menggunakan perintah shell "tar"

  2. Menggabungkan Folder Dengan Mv?

  3. Apakah Menggunakan Rsync Saat Sumber Diperbarui Aman?

  1. Hp-ux 9:Backup Filesystem Menggunakan Tar?

  2. Menggunakan –exclude Dengan Perintah Du?

  3. Cara gzip Direktori di Linux

  1. cp:menghilangkan direktori – kesalahan saat menyalin direktori di Linux

  2. Memotong file saat sedang digunakan (Linux)

  3. Menggunakan dan di Bash while loop