Saya tidak punya pengalaman dengan btrfs, tetapi diiklankan untuk dapat menduplikasi file duplikat.
Dalam aplikasi saya, saya perlu menduplikasi seluruh pohon direktori.
Dari apa yang saya pelajari, btrf hanya menghapus duplikat dalam beberapa pemindaian pos, tidak segera. Bahkan hanya menggunakan cp
tampaknya tidak memicu de-duplikasi (setidaknya, df
menunjukkan peningkatan penggunaan disk dalam ukuran file yang disalin).
Bisakah saya menghindari memindahkan data sekaligus dan memberi tahu btrfs
langsung untuk menduplikasi file di lokasi lain, pada dasarnya hanya mengkloning metadata-nya?
Intinya, mirip dengan hardlink, tetapi dengan metadata independen (izin, waktu mod, ...).
cp
file-copy
btrfs
deduplication
Udo G
sumber
sumber
cp --reflink=always
.cp --reflink=always
, hasil dari perspektif pengguna akan menjadi dua file yang sepenuhnya independen dalam segala hal. Fakta bahwa sistem file yang mendasarinya mengabstraksi bahwa melalui copy-on-write hanyalah detail implementasi. Anda tidak mendapatkan "hardlink, tetapi dengan metadata independen.". Setahu saya, btrfs belum melakukan deduplikasi otomatis. Saya pikir itu rencana masa depan tetapi saya tidak positif tentang itu.Jawaban:
Ada dua opsi:
cp --reflink=always
cp --reflink=auto
Yang kedua hampir selalu lebih baik daripada yang pertama. Menggunakan
auto
berarti itu akan mundur untuk melakukan salinan yang benar jika sistem file tidak mendukung reflinking (misalnya, ext4 atau menyalin ke share NFS). Dengan opsi pertama, saya cukup yakin itu akan gagal total dan berhenti menyalin.Jika Anda menggunakan ini sebagai bagian dari skrip yang harus kuat dalam menghadapi kondisi yang tidak ideal,
auto
akan lebih baik bagi Anda.sumber
eestrada
yang pernah ada yang bertanya kepada saya.