Có cách nào để tạo một bản sao sao chép của một thư mục không?


14

Tôi đang nghĩ về một tình huống mà tôi sẽ có một cái gì đó tạo ra một bản sao của một thư mục, điều chỉnh một vài tệp và sau đó thực hiện một số xử lý về kết quả. Điều này được thực hiện khá thường xuyên, có thể vài chục lần một ngày. (Trường hợp sử dụng chính xác là kiểm tra đệ trình bản vá; sao chép mã, vá mã, xây dựng / kiểm tra / báo cáo / v.v.)

Những gì tôi đang tìm kiếm có thể được thực hiện bằng cách tạo cấu trúc thư mục mới và điền vào đó bằng các liên kết cứng từ origonal. Tuy nhiên, điều này chỉ hoạt động nếu tất cả các công cụ bạn sử dụng xóa và tạo lại các tệp thay vì chỉnh sửa chúng tại chỗ.

Có cách nào để hệ thống tập tin sao chép trên một tập tin không?


Lưu ý: Tôi biết rằng nhiều FS sử dụng COW ở cấp độ khối (tất cả các cập nhật được thực hiện thông qua ghi vào các khối mới) nhưng đây không phải là điều tôi muốn.


Nó không xuất hiện duy trì, nhưng có lẽ boklm.eu/copyfs
Zoredache

Vì vậy, bạn muốn thực hiện sao chép trên ghi thông qua hệ thống tệp, nhưng bạn không muốn một hệ thống tệp sử dụng sao chép trên ghi? Tôi bối rối.
Kamil Kisiel

1
@Kamil Kisiel: Tôi muốn COW cấp tệp không phải COW cấp khối. COW cấp tệp dẫn đến cplnthực hiện gần như chính xác điều tương tự. COW cấp khối là một mẹo để giảm thiểu khoảng thời gian mà dữ liệu meta của FS không chính xác: en.wikipedia.org/wiki/ZFS#Copy-on-write_transactional_model
BCS

Loại hệ thống này dự kiến ​​sẽ được sử dụng trên?
John Gardeniers

Nó đủ để suy đoán trừ khi bạn biết cách để thực hiện nó cho một số thiết lập (trong trường hợp đó chỉ cần đăng nó) Tôi sẽ không muốn mọi người đốt thời gian để tìm ra cách thực hiện (trừ khi họ đang làm điều đó cho vui :)
BCS

Câu trả lời:


7

Nếu bạn có lựa chọn nền tảng cho máy chủ tệp của mình, tôi sẽ sử dụng bản dựng OpenSolaris gần đây và sử dụng tính năng chống trùng lặp của ZFS. Bằng cách này, các bản sao của tệp sẽ không chiếm thêm dung lượng và thậm chí các phân đoạn chung giữa các tệp sẽ không được sao chép.

Bạn có thể đọc tất cả về sự trùng lặp của ZFS tại bài đăng này trên Blog của Jeff Bonwick .


1
ZFS là tuyệt vời; nó sẽ thay đổi cách bạn nghĩ về việc lưu trữ
tegbains

Gọn gàng, trừ khi có một nhược điểm để có nó trên toàn bộ ổ đĩa.
BCS

Tôi đã thêm một liên kết đến một bài đăng blog có nhiều chi tiết kỹ thuật. Bạn có thể thấy nếu đó là những gì bạn cần ở đó.
Kamil Kisiel

Url mới cho bài của Jeff Bonwick: blogs.oracle.com/bonwick/zfs-deduplication-v2
Mathieu

0

Phần lớn các giải pháp ảo hóa linux cung cấp COW cấp tệp trong số các hệ điều hành ảo hóa (được sao chép từ WP):

  • ĐÚNG:
    • Docker, Linux-VServer, lmctfy, LXC, Singularity, Virtuozzo, Sandboxie, systemd-nspawn, Solaris Container (ZFS), FreeBSD jail (ZFS), OpenVZ
  • KHÔNG:
    • chroot, sysjail, WPAR, Tài khoản ảo iCore, Turbo

Mặc dù liên kết này có thể trả lời câu hỏi, tốt hơn là bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo. Câu trả lời chỉ liên kết có thể trở nên không hợp lệ nếu trang được liên kết thay đổi
Romeo Ninov

-2

Có thể là SVN hoặc công cụ tạo phiên bản khác (git, cvs)?


Điều đó thậm chí còn tệ hơn bởi vì nó tạo ra hai bản sao của mỗi tệp và hút chúng xuống trên một ổ cắm.
BCS
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.