Menggunakan tautan keras NTFS untuk menggabungkan cadangan lengkap / diferensial

17

Pendek: Apakah mungkin (robo) menyalin pohon direktori menggunakan tautan keras alih-alih salinan fisik?

Saya ingin membuat cadangan harian file data saya, setiap hari di direktori itu sendiri. Sekarang sebagian besar file tidak berubah setiap hari, jadi ide saya untuk mempercepat pencadangan dan menggunakan lebih sedikit ruang disk adalah menyalin cadangan (hari-1) menjadi (hari) menggunakan tautan keras, kemudian menggunakan robocopy untuk mengganti file yang memiliki berubah sejak kemarin. Dengan cara ini saya hanya perlu menyalin cadangan penuh satu kali ke drive USB, setelah itu saya bisa menyalin perubahan dan masih memiliki direktori yang berisi semua file, berbagi file dengan cadangan lain menggunakan tautan keras. Dengan cara ini saya mendapat dua cadangan penuh tetapi hanya menggunakan ruang file untuk satu + diferensial, dan file cadangan dapat diakses tanpa perlu perangkat lunak khusus, yang merupakan nilai tambah besar bagi saya.

Apakah ini mungkin?
Apakah ada program untuk membuat salinan dari semua file dalam pohon direktori?
Apakah saya melewatkan beberapa perangkap yang tidak saya sadari?

Sam
sumber
Ini dapat dilakukan seperti yang ditemukan di sini: blog.mutable.net/post/2007/01/17/…
Bryan

Jawaban:

9

Ada cara untuk membuat cadangan seperti yang Anda katakan, tapi saya tidak percaya dengan Robocopy saja.

Ada beberapa program yang akan menghubungkan atau mengurangi cadangan, dan efisien ruang.

Berikut adalah beberapa program yang saya gunakan atau jalankan:

  • Dupemerge - gratis - Meskipun bukan "program cadangan", ini adalah penghubung keras massal.
  • cadangan hardlink - gratis untuk penggunaan pribadi - menggunakan hard link
  • Duplikat - gratis - (dedupes saya percaya seperti rsync tidak)
  • rdiff-backup - gratis - dedupes seperti rsync

Saya percaya apa yang cocok untuk pertanyaan Anda adalah Dupemerge. Anda dapat meminta file batch menjalankan Robocopy untuk menyalin konten ke direktori (mis. D: \ backups \ YYYY-MM-DD). Ketika perintah itu selesai, file batch dapat memanggil Dupemerge pada cadangan d: \. Itu akan sulit menautkan file di dalam dan di semua subdirektori dari cadangan d: \.

Kelemahan dari ini adalah Anda akan memerlukan ruang yang cukup di eksternal untuk menyimpan cadangan terkait yang tidak dibuat-buat. Setelah Dupemerge dijalankan, cadangan yang baru dibuat akan ditautkan dan ruang akan dibebaskan.

Ini akan membuat pemulihan mudah karena setiap direktori tanggal akan tampak memiliki cadangan penuh.

Sebagai catatan, jika Anda akan menggunakan tautan keras, saya suka Link Shell Extension . Ini membantu memberi tahu Anda apa yang tidak terkait dengan sulit, apa yang terhubung dengan apa.

Saya telah menjalankan tautan keras atau program deduping lainnya, tetapi saya paling suka ini.

Scott McClenning
sumber
5
+1 Untuk memiliki pengumpulan yang layak dan menyebutkan LSE. Namun, Anda lupa alat tunggal yang memberikan OP hampir persis apa yang diinginkannya: ln.exeSalinan Delorean ln.exe ditulis oleh orang yang sama yang menulis Dupemerge dan LSE. Yang hilang hanyalah dukungan VSS dan ... oh, lihat! Kita mulai! ;-)
afrazier
@afrazier, panggilan bagus dengan Delorean Copy. Sepertinya Delorean Copy memiliki beberapa fitur bagus, juga situs web itu bagus untuk informasi tautan NTFS, saya harus membacanya lebih lanjut. Saya terkejut tentang batas tautan 1023 pada Delorean Copy, namun, mungkin bukan masalah bagi kebanyakan orang. Dupemerge akan menautkan ke file lain di 1022 tautan. Saya kira cara kerja Delorian Copy, menautkan ke file non-sumber tidak diinginkan? Saya harus membaca lebih banyak tentang itu. Saran bagus.
Scott McClenning
2
Batas tautan 1023 adalah batasan NTFS - Atribut penghitung tautan entri direktori hanya 10 bit.
Afrazier
Ringkasan opsi yang bagus. Sayangnya rekomendasi Anda tidak memenuhi permintaan poster asli hanya menyalin file yang diubah pada setiap cadangan berikutnya. Kedengarannya seperti ln.exetaruhan yang lebih baik.
Simon East
Ada juga Link Shell Extension oleh pembuat yang sama ln.exeyang menyediakan cara sederhana untuk membuat cadangan seperti ini menggunakan mouse di Windows Explorer. Ini juga membuat direktori timestamped untuk Anda selama proses pencadangan.
Simon East
1

BackupAssist akan memberi Anda apa yang Anda butuhkan. Penggunaan hardlink bernama "Toko Instansi Tunggal", tetapi sebenarnya itu adalah tautan keras di bawah tenda. Ini dapat digunakan, antara lain, untuk membuat cadangan ke drive USB seperti yang Anda minta, atau ke lokasi terpencil menggunakan rsync.

Zlika
sumber
1

Kami telah menulis alat kami sendiri untuk jenis pekerjaan itu. Ini disebut ntfs-hardlink-backup: https://github.com/International-Nepal-Fellowship/Windows-Tools/tree/master/ntfs-hardlink-backup

Untuk membuat hardlink, gunakan alat ln dari Hermann Schinagl: http://schinagl.priv.at/nt/ln/ln.html

Jadi Anda juga bisa menggunakan ln secara langsung. Cukup kuat

INDIVIDU-IT
sumber
Silakan kutip bagian-bagian penting dari jawaban dari tautan referensi, karena jawabannya dapat menjadi tidak valid jika halaman yang tertaut berubah.
DavidPostill
-3

Ada kesalahan dalam logika Anda di tempat pertama.

Jika Anda membuat tautan keras, bagaimana itu bisa disebut cadangan? setelah file Anda dihapus / rusak, cadangan Anda yang disebut berjalan juga. Semua persyaratan yang Anda tentukan biasanya dicakup oleh perangkat lunak cadangan hari ini.

PS: NTFS tidak mendukung tautan keras AFAK.

anilmwr
sumber
3
Maaf, deskripsi saya tidak cukup jelas: Saya membuat salinan lengkap menggunakan robocopy pada drive USB eksternal. Untuk hari berikutnya, saya membuat salinan tautan, kemudian mengganti semua file yang telah berubah sejak kemarin. Sekarang saya memiliki dua salinan lengkap pada drive USB saya, tetapi dengan biaya ruang satu + satu diferensial penuh.
Sam
4
Oh, dan tentu saja NTFS mendukung tautan keras.
Sam
1
Teknik yang Anda gambarkan adalah persis apa yang rsnapshot(tampaknya down ATM) mengimplementasikan di Unixoid OS. Itu pasti mungkin dan bekerja dengan sangat baik. Sayangnya untuk Anda rsnapshottidak berjalan di Windows (itu sebabnya saya menulis ini sebagai komentar saja). Tetapi FAQ menyebutkan sesuatu tentang sinkronisasi jarak jauh klien Windows. Jika Anda memiliki mesin Unixoid di sekitar mungkin ini akan bekerja untuk Anda. Saya tidak tahu ada yang setara dengan Windows rsnapshot.
Daniel Böhmer
Saya tidak melihat adanya keuntungan dengan membuat tautan keras ke file yang tidak diubah. Perangkat lunak cadangan mengambil cadangan berdasarkan on / off bit Arsip. Anda hanya perlu menyalin file-file yang dimodifikasi sejak cadangan terakhir. Juga, saya mendapat kesan bahwa HANYA Sistem File Unix mendukung tautan keras. Terima kasih untuk menyampaikannya kepada saya!
anilmwr
@ Halo pikir itu harus sudah digunakan di banyak tempat. Sayang sekali saya tidak punya komputer Unix, jadi saya harus menunggu seseorang yang tahu tentang ini untuk windows. Terimakasih atas peringatannya!
Sam