วิธีการคืนค่าโฟลเดอร์ไปยังปลายทางดั้งเดิมโดยใช้ความซ้ำซ้อน


11

หลังจากทำการสำรองข้อมูลไดเรกทอรีบางอย่างเช่น:

# duplicity\
 --exclude /home/user/Documents/test1/file\
 --include /home/user/Documents/test1\
 --include /tmp/test2\
 --exclude '**'\
 / file:///home/user/Backup

ฉันต้องการทดสอบว่าการคืนค่าทำงานอย่างไรโดยการลบไดเรกทอรีที่สำรองข้อมูล:

# rm -rf /home/user/Documents/test1 /tmp/test2

จากนั้นทำการกู้คืนข้อมูลสำรอง

# duplicity file:///home/user/Backup /

แต่ฉันได้รับข้อผิดพลาด

Restore destination directory / already exists.
Will not overwrite.

ดังนั้นปรากฏว่าฉันไม่สามารถกู้คืนไปยังปลายทางเดิมได้โดยไม่ต้องล้างโฟลเดอร์รูทแม้ว่าปลายทางของโฟลเดอร์ที่รวมอยู่เหล่านี้จะถูกล้างออกไปแล้ว

มีวิธีที่ดีกว่าการกู้คืนไปยังตำแหน่งอื่นแล้วย้ายแต่ละโฟลเดอร์ทีละรายการ?

# duplicity --file-to-restore home/user/Documents/test1 file:///home/user/Backup /home/user/Restore1
# mv /home/user/Restore1/home/user/Documents/test1 /home/user/Documents/test1
# duplicity --file-to-restore tmp/test2 file:///home/user/Backup /home/user/Restore2
# mv /home/user/Restore2/tmp/test2 /tmp/test2

คำตอบ:


13

มันง่ายมาก - ใช้ธง --force

duplicity --force file:///home/user/Backup /

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


อันที่จริงการตั้งค่า--forceสถานะการทำงาน ฉันสงสัยว่าทำไม man page จึงไม่บันทึกการทำงานนี้สำหรับrestoreตัวเลือก มันช่วยฉันในขั้นตอนเพิ่มเติมของการต้องไปrsyncจากตำแหน่งอื่น ขอบคุณ!
คำถามมากเกินไป

โปรดทราบว่าแม้จะมีการ--forceตั้งค่าสถานะ Duplicity จะไม่ลบไฟล์ใน/ที่ไม่มีอยู่ในการสำรองข้อมูล ผ่านการทดสอบใน Ubuntu 18.04LTS + ความซ้ำซ้อน 0.7.17
bernie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.