Làm cách nào để có được NTFS như hành vi chụp nhanh trong BTRFS?


0

Tôi muốn sử dụng BTRFS để lưu trữ VM trong VirtualBox để có thể sử dụng Snapshots mà không cần LVM hoặc như vậy. Về lý thuyết tôi không cần CoWhành vi mọi lúc vì lý do hiệu suất và sử dụng nodatacownó dường như tôi không cần. Thay vào đó, điều tôi muốn có là một cách tiếp cận từ sự hiểu biết của tôi Windows và NTFS dường như đang sử dụng: Dữ liệu được thay đổi mọi lúc mà không cần CoW, nhưng nếu người ta tạo một hệ thống tệp chụp nhanh, dữ liệu hiện tại sẽ được lưu trong ảnh chụp nhanh đó bằng cách sao chép dữ liệu nếu nó được thay đổi theo bất kỳ cách nào. Điều quan trọng dường như là điều này chỉ xảy ra chính xác một lần cho mỗi ảnh chụp và thực sự chỉ xảy ra đối với các khối được sửa đổi. Vì vậy, sau khi một khối được sửa đổi đã được sao chép ngay từ đầu, tất cả các sửa đổi tiếp theo cho cùng một khối chỉ được áp dụng, một lần nữa mà không có CoWhành vi.

Bên cạnh việc sao chép khối dữ liệu ban đầu đã thay đổi vào một nơi an toàn, từ góc độ hiệu suất, điều này rất có ý nghĩa với tôi và tôi muốn có chính xác hành vi đó để lưu trữ máy ảo của mình. Những người viết một số dữ liệu mọi lúc và tôi chỉ đơn giản là không thấy tôi cần CoWhành vi như thế nào cho tất cả những thay đổi đó.

Tôi chỉ muốn CoWsau khi tôi tạo một ảnh chụp nhanh hệ thống tệp theo mục đích, ví dụ cho mục đích sao lưu. Sau đó, tôi cần CoWtất nhiên để có thể giữ cho ảnh chụp nhanh của mình nhất quán miễn là tôi cần. Nhưng một lần nữa, ngay cả sau khi tạo các ảnh chụp nhanh, tôi sẽ không cần CoWmãi mãi cho tất cả dữ liệu, mà chỉ một lần cho các khối thay đổi sau đó. Tất cả các thay đổi sau lần đầu tiên có thể được áp dụng mà không có bất kỳ thay đổi nào CoW.

Theo hiểu biết của tôi về các tài liệu BTRFS, nếu CoWxảy ra một lần với một số tệp, nó sẽ tiếp tục xảy ra mãi mãi. Nhưng dĩ nhiên tôi có thể sai ...

Vì vậy, là những gì tôi muốn có thể có với BTRFS?


Bạn đã thực sự gặp vấn đề về hiệu suất với CoW hay bạn lo ngại về các vấn đề lý thuyết?
Daniel B

@DanielB Tôi chỉ quan tâm và suy nghĩ về mọi thứ, bởi vì người ta có thể đọc các tuyên bố rất khác nhau về CoW và các trường hợp sử dụng với VM hoặc cơ sở dữ liệu.
Thorsten Schöning

Bạn đang nói về ảnh chụp nhanh của FS hoặc VM?
Seth

@Seth snapshot cấp hệ thống tập tin.
Thorsten Schöning

1
Chỉ cần FYI, đây không thực sự là một chức năng của NTFS. Bản sao bóng khối được xếp lớp trên trình điều khiển âm lượng và bên dưới trình điều khiển hệ thống tệp. Như vậy đó là hệ thống bất khả tri. Nó không quan tâm đến siêu dữ liệu hệ thống tệp, nội dung tệp hoặc bất kỳ thứ gì trong số đó. Tất cả đều được thực hiện dưới dạng các khối logic (các khối trong một khối).
Jamie Hanrahan

Câu trả lời:


1

Nếu CoWxảy ra một lần với một số tập tin, nó sẽ xảy ra mãi mãi. Nhưng tôi có thể sai tất nhiên.

Tôi nghĩ rằng bạn là sai. Tôi đã tìm thấy câu hỏi này về việc chụp ảnh nhanh khối lượng BTRFS được gắn kếtnodatacow . Có một trích dẫn ở đó (từ danh sách gửi thư BTRFS ) có vẻ rất quan trọng đối với trường hợp của bạn:

Trên tệp NOCOW, lần ghi đầu tiên vào fileblock (4096 byte) sau khi chụp nhanh vẫn phải là COW, vì ảnh chụp nhanh khóa phiên bản cũ tại chỗ, và bây giờ fileblock đã thay đổi, do đó, nó phải được ghi ở nơi khác mặc dù NOCOW đã được đặt hàng để giữ ảnh chụp nhanh như cũ. Tuy nhiên, tệp giữ lại thuộc tính NOCOW và ghi bổ sung vào cùng một fileblock sẽ được đặt đúng chỗ ... cho đến khi tất nhiên ảnh chụp nhanh tiếp theo.

Có vẻ như nodatacowtùy chọn gắn kết cung cấp cho bạn chính xác những gì bạn muốn. Chỉ cần nhớ có những hạn chế:

nodatacow
Không sao chép dữ liệu khi ghi đối với các tệp mới tạo, các tệp hiện có không bị ảnh hưởng. Điều này cũng tắt kiểm tra! [V]] có khả năng nhận được các tệp cập nhật một phần về lỗi hệ thống. [V]] tắt nén!

Nguồn: Tùy chọn gắn BTRFS .


Nguồn tuyệt vời, cảm ơn! Các hạn chế có thể không có vấn đề gì cả, bằng cách sử dụng ext4 hoặc NTFS, tôi đã có cùng một khả năng và có thể sống với những điều đó. Cuối cùng, thật đơn giản để có thể lựa chọn. :-)
Thorsten Schöning
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.