ใช้ฮาร์ดไดรฟ์ NTFS เพื่อรวมการสำรองข้อมูลเต็ม / ส่วนต่าง


17

สั้น: เป็นไปได้ไหมที่จะทำการคัดลอกทรีไดเรกทอรีโดยใช้ฮาร์ดลิงก์แทนการคัดลอกแบบตัวจริง?

ฉันต้องการสำรองไฟล์ข้อมูลทุกวันทุกวันในไดเรกทอรีของตัวเอง ตอนนี้ไฟล์ส่วนใหญ่ไม่เปลี่ยนแปลงทุกวันดังนั้นความคิดของฉันที่จะเร่งความเร็วการสำรองข้อมูลและใช้พื้นที่ดิสก์น้อยลงคือการคัดลอกการสำรองข้อมูลของ (วันที่ 1) ถึง (วัน) โดยใช้ฮาร์ดลิงก์จากนั้นใช้ robocopy เพื่อแทนที่ไฟล์ที่มี เปลี่ยนแปลงตั้งแต่เมื่อวาน ด้วยวิธีนี้ฉันจะต้องคัดลอกการสำรองข้อมูลเต็มรูปแบบหนึ่งครั้งไปยังไดรฟ์ USB หลังจากนั้นฉันสามารถคัดลอกการเปลี่ยนแปลงและยังมีไดเรกทอรีที่มีไฟล์ทั้งหมดแชร์ไฟล์กับการสำรองข้อมูลอื่น ๆ โดยใช้ฮาร์ดลิงก์ วิธีนี้ฉันได้รับการสำรองข้อมูลเต็มรูปแบบสองชุด แต่ใช้พื้นที่ไฟล์เฉพาะสำหรับหนึ่งส่วน + และสำรองไฟล์นั้นสามารถเข้าถึงได้โดยไม่จำเป็นต้องใช้ซอฟต์แวร์พิเศษซึ่งเป็นข้อดีอย่างมากสำหรับฉัน

เป็นไปได้ไหม
มีโปรแกรมในการสร้างสำเนาลิงค์ของไฟล์ทั้งหมดในแผนผังไดเรกทอรีหรือไม่?
ฉันพลาดอะไรบางอย่างที่ฉันไม่รู้


สิ่งนี้สามารถทำได้ที่นี่: blog.mutable.net/post/2007/01/17/…
Bryan

คำตอบ:


9

มีวิธีการสำรองข้อมูลอย่างที่คุณพูด แต่ฉันไม่เชื่อกับ Robocopy เพียงอย่างเดียว

มีหลายโปรแกรมที่จะฮาร์ดลิงก์หรือสำรองข้อมูลซ้ำซ้อนและมีพื้นที่ว่างอย่างมีประสิทธิภาพ

ต่อไปนี้เป็นโปรแกรมบางส่วนที่ฉันเคยใช้หรือพบเจอ:

  • Dupemerge - ฟรี - ในขณะที่ไม่ใช่ "โปรแกรมสำรองข้อมูล" มันเป็นตัวเชื่อมโยงข้อมูลจำนวนมาก
  • สำรองฮาร์ดลิงก์ - ฟรีสำหรับใช้ส่วนตัว - ใช้ฮาร์ดลิงก์
  • Duplicati - free - (dedupes ฉันเชื่อว่าเหมือน rsync)
  • rdiff-backup - ฟรี - การลบข้อมูลอย่าง rsync

ฉันเชื่อว่าสิ่งที่เหมาะสมสำหรับคำถามของคุณคือ Dupemerge คุณสามารถให้แบตช์ไฟล์ดำเนินการ Robocopy เพื่อคัดลอกเนื้อหาไปยังไดเรกทอรี (เช่น d: \ backups \ YYYY-MM-DD) เมื่อคำสั่งนั้นเสร็จสมบูรณ์แบตช์ไฟล์สามารถเรียก Dupemerge บน d: \ backups นั่นเป็นการเชื่อมโยงไฟล์ภายในและข้ามไดเรกทอรีย่อยทั้งหมดของ d: \ backups

ข้อเสียของสิ่งนี้คือคุณจะต้องมีพื้นที่เพียงพอในภายนอกเพื่อเก็บสำรองข้อมูลที่ไม่เชื่อมโยงไว้ที่สร้างขึ้นใหม่ หลังจากเรียกใช้ Dupemerge การสำรองข้อมูลที่สร้างขึ้นใหม่จะเชื่อมโยงอย่างหนักและพื้นที่จะว่าง

วิธีนี้จะทำให้การกู้คืนง่ายขึ้นเนื่องจากไดเรกทอรีที่ลงวันที่แต่ละรายการจะมีข้อมูลสำรองเต็ม

ขณะที่ทราบด้านถ้าคุณจะใช้เชื่อมโยงอย่างหนักผมเช่นการเชื่อมโยงส่วนขยายเชลล์ ช่วยให้คุณทราบว่าลิงก์ใดไม่เชื่อมโยงกันคืออะไรและเชื่อมโยงกับอะไร

ฉันได้ใช้งานโปรแกรมฮาร์ลิงค์หรือการลบข้อมูลซ้ำ ๆ แต่ฉันชอบสิ่งที่ดีที่สุด


5
+1 สำหรับการมีบทสรุปที่ดีและกล่าวถึง LSE อย่างไรก็ตามคุณลืมเครื่องมือเดียวที่ให้ OP เกือบจะตรงตามที่เขาต้องการ: ln.exe's Delorean Copy ln.exeถูกเขียนขึ้นโดยบุคคลเดียวกันที่เขียนทั้ง Dupemerge และ LSE สิ่งที่ขาดหายไปคือการรองรับ VSS และ ... ดูสิ! ไปเลย! ;-)
afrazier

@afrazier โทรดีด้วย Delorean Copy ดูเหมือนว่า Delorean Copy จะมีคุณสมบัติที่ดีรวมถึงเว็บไซต์ที่ดีสำหรับข้อมูลลิงค์ NTFS ฉันควรอ่านเพิ่มเติม ฉันประหลาดใจเกี่ยวกับการ จำกัด การเชื่อมโยง 1,023 บนสำเนา Delorean อย่างไรก็ตามอาจไม่เป็นปัญหาสำหรับส่วนใหญ่ Dupemerge จะเชื่อมโยงไปยังไฟล์อื่นที่ลิงก์ 1,022 ฉันเดาว่าวิธีการทำงานของ Delorian Copy การเชื่อมโยงไปยังไฟล์ที่ไม่ใช่ซอร์สจะไม่เป็นที่ต้องการใช่ไหม ฉันจะต้องอ่านเพิ่มเติมเกี่ยวกับเรื่องนี้ ข้อเสนอแนะที่ดี
Scott McClenning

2
ขีด จำกัด ลิงก์ 1023 เป็นข้อ จำกัด ของ NTFS - แอตทริบิวต์ตัวนับลิงก์ของรายการไดเรกทอรีมีเพียง 10 บิต
afrazier

สรุปตัวเลือกที่ยอดเยี่ยม น่าเสียดายที่คำแนะนำของคุณไม่ตอบสนองต่อคำขอต้นฉบับของผู้คัดลอกไฟล์ที่มีการเปลี่ยนแปลงเท่านั้นในการสำรองข้อมูลแต่ละครั้ง เสียงเหมือนln.exeเป็นทางออกที่ดีกว่า
Simon East

นอกจากนี้ยังมีส่วนขยายของLink Shellโดยผู้ผลิตรายเดียวกันln.exeซึ่งให้วิธีการง่ายๆในการสำรองข้อมูลประเภทนี้โดยใช้เมาส์ใน Windows Explorer นอกจากนี้ยังสร้างไดเรกทอรีที่บันทึกเวลาให้คุณในระหว่างกระบวนการสำรองข้อมูล
Simon East

1

BackupAssistจะให้สิ่งที่คุณต้องการ การใช้ hardlinks นั้นมีชื่อว่า "Single Instance Store" แต่จริงๆแล้วเป็นการเชื่อมโยงที่ยากมากภายใต้ประทุน สามารถใช้เพื่อสำรองข้อมูลไปยังไดรฟ์ USB ตามที่คุณขอหรือไปยังสถานที่ห่างไกลโดยใช้ rsync


1

เราได้เขียนเครื่องมือของเราเองสำหรับงานประเภทนั้น มันเรียกว่า ntfs-hardlink-backup: https://github.com/International-Nepal-Fellowship/Windows-Tools/tree/master/ntfs-hardlink-backup

สำหรับการสร้างฮาร์ดลิงก์ใช้เครื่องมือ ln ของ Hermann Schinagl: http://schinagl.priv.at/nt/ln/ln.html

ดังนั้นคุณสามารถใช้ ln ได้โดยตรง มันทรงพลังมาก


โปรดอ้างอิงส่วนสำคัญของคำตอบจากลิงค์อ้างอิงเนื่องจากคำตอบอาจไม่ถูกต้องหากหน้าเชื่อมโยงมีการเปลี่ยนแปลง
DavidPostill


-3

ตรรกะของคุณมีข้อบกพร่องในตอนแรก

หากคุณสร้างฮาร์ดลิงก์จะเรียกว่าข้อมูลสำรองได้อย่างไร เมื่อไฟล์ของคุณถูกลบ / เสียหายการสำรองข้อมูลที่เรียกว่าของคุณก็จะเป็นเช่นนั้น ข้อกำหนดทั้งหมดที่คุณระบุจะครอบคลุมโดยซอฟต์แวร์สำรองข้อมูลในปัจจุบัน

PS: NTFS ไม่รองรับฮาร์ดลิงค์ AFAK


3
ขออภัยคำอธิบายของฉันไม่ชัดเจนพอ: ฉันสร้างสำเนาเต็มโดยใช้ robocopy บนไดรฟ์ USB ภายนอก ในวันถัดไปฉันสร้างสำเนาฮาร์ดลิงก์จากนั้นแทนที่ไฟล์ทั้งหมดที่เปลี่ยนแปลงตั้งแต่เมื่อวาน ตอนนี้ฉันมีสำเนาสองชุดเต็มในไดรฟ์ USB ของฉัน แต่ด้วยค่าใช้จ่ายในพื้นที่สำหรับหนึ่งส่วน + หนึ่งส่วนต่าง
แซม

4
โอ้และแน่นอนว่า NTFS รองรับการเชื่อมโยงอย่างหนัก
Sam

1
เทคนิคที่คุณอธิบายเป็นสิ่งที่rsnapshot(ดูเหมือนว่าจะลง ATM) ใช้ใน Unixoid OS เป็นไปได้อย่างแน่นอนและทำงานได้ดีมาก น่าเสียดายที่คุณrsnapshotไม่ได้ทำงานบน Windows (นั่นเป็นเหตุผลที่ฉันเขียนสิ่งนี้เป็นความคิดเห็นเท่านั้น) แต่คำถามที่พบบ่อยกล่าวถึงบางสิ่งบางอย่างเกี่ยวกับการซิงค์ไคลเอ็นต์ Windows ระยะไกล หากคุณมีเครื่อง Unixoid อยู่รอบ ๆ อาจจะเหมาะกับคุณ rsnapshotผมไม่ทราบว่าใดเทียบเท่าของ Windows
Daniel Böhmer

ฉันไม่เห็นประโยชน์ใด ๆ จากการสร้างฮาร์ดลิงก์ไปยังไฟล์ที่ไม่เปลี่ยนแปลง ซอฟต์แวร์สำรองข้อมูลจะทำการสำรองข้อมูลตามการเปิด / ปิดไฟล์เก็บถาวร คุณควรคัดลอกไฟล์เหล่านั้นซึ่งมีการแก้ไขตั้งแต่การสำรองข้อมูลครั้งล่าสุด นอกจากนี้ฉันยังรู้สึกว่าเพียง Unix File Systems รองรับการเชื่อมโยงอย่างหนัก ขอขอบคุณที่แจ้งให้ทราบ!
anilmwr

@ Halo คิดว่ามันควรจะใช้แล้วในหลาย ๆ ที่ น่าเสียดายที่ฉันไม่มี Unix- คอมพิวเตอร์อยู่รอบ ๆ ดังนั้นฉันต้องรอใครซักคนที่รู้เรื่องนี้เกี่ยวกับหน้าต่าง ขอบคุณสำหรับหัวขึ้น!
Sam
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.