Bản sao: Làm thế nào để liệt kê các phiên bản của một tập tin?


12

Sử dụng Sao chép Tôi có thể tạo bản sao lưu gia tăng, hiệu quả cho bộ lưu trữ từ xa không tin cậy. Điều này hoạt động tốt và tôi có thể khôi phục các tập tin tại một thời điểm cụ thể (hoặc sao lưu tiếp theo sau đó).

Bây giờ tôi muốn biết khi nào trong lịch sử của tất cả các bản sao lưu đã thay đổi tập tin cụ thể . Dấu thời gian thay đổi tệp và kích thước cùng với dấu thời gian sao lưu sẽ là đủ.

Bất kỳ cách nào để làm điều đó với sự trùng lặp?

EDIT: Tôi nên làm rõ rằng tôi muốn xem mọi thay đổi / phiên bản cho tệp đó và không chỉ là lần cuối cùng, ví dụ như khi nó được giới thiệu lần đầu tiên, khi nó được thay đổi. Đó có thể là tại nhiều bản sao lưu gia tăng sao lưu.


Tôi đã nộp danh sách mong muốn để bệ phóng cho một tính năng như vậy, FWIW: bugs.launchpad.net/duplicity/+bug/1044715

Câu trả lời:



5

Có một câu trả lời trong danh sách gửi thư của Edgar Soldin:

không, hiện tại bạn có thể liệt kê tất cả các phiên bản được sao lưu. trùng lặp sẽ không cho bạn biết khi chúng được thay đổi. tuy nhiên điều này có thể được thực hiện khi sự trùng lặp trong nội bộ theo dõi điều đó.

ede / duply.net

Vì vậy, về bản chất: Hiện tại không thể có sự trùng lặp vanilla, nhưng dữ liệu nằm trong siêu dữ liệu trùng lặp.


1
Một điểm dữ liệu khác: Deja dup tích hợp với gnome và nautilus và nếu bạn nhấp chuột phải vào tệp "Khôi phục phiên bản trước", nó sẽ hiển thị tất cả các phiên bản của tệp mà nó biết. Có lẽ bạn có thể kiểm tra mã này và thậm chí sử dụng nó.
AndreasM

Vâng dejadup được viết bằng Vala và kịch bản dòng lệnh trùng lặp. Tôi nghĩ rằng mã của dejadup không lọc các thay đổi của một tệp cụ thể mà chỉ cung cấp tất cả các bản sao lưu mà nó có, không quan trọng là tệp có thay đổi hay không.
AndreasM

4

, có thể thực hiện việc này bằng cách lấy danh sách tất cả các tệp trong mỗi ảnh chụp nhanh mà sao chép (tức là bản sao lưu đầy đủ đầu tiên và mỗi lần tăng) và sau đó so sánh danh sách tệp và tìm tệp cụ thể mà bạn quan tâm với.

Mặc dù nó sẽ không hiển thị mọi thay đổi đối với tệp trừ khi tệp thay đổi ít thường xuyên hơn bạn tạo các bản sao trùng lặp, nó sẽ hiển thị từng trạng thái của tệp tại mỗi điểm sao lưu.

Tôi đã viết một kịch bản shell để làm điều này.


3
Geoff, nghe có vẻ thú vị! Bạn đã xuất bản kịch bản? Đó dường như là một ứng cử viên rõ ràng để đưa vào phân phối tiêu chuẩn.
Paul

3

Bạn có thể thử bỏ danh sách đầy đủ các tệp, sau đó tìm kiếm danh sách đó cho tệp đang được đề cập:

duplicity list-current-files url > /path/to/file-list.txt
grep filename /path/to/file-list.txt

Lệnh này được ghi lại kém, nhưng mỗi dòng trong tệp có một ngày dường như là lần sửa đổi cuối cùng.


Không phải những gì tôi yêu cầu nhưng cảm ơn cho những nỗ lực!
Paul

Điều này xuất hiện để hiển thị dấu thời gian trong inode. Không phải lần cuối trùng lặp sao lưu nó. Vì vậy, nếu ai đó thay đổi một tệp và khôi phục dấu thời gian sửa đổi cũ, thay đổi đó sẽ vô hình đối với phương thức này.
Peter V. Mørch

0
duplicity list-current-files --time now "${DEST}" > /tmp/today
duplicity list-current-files --time 1D "${DEST}" > /tmp/yesterday
grep -Fxvf /tmp/{today,yesterday}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.