Gắn kết trên Linux


11

Một liên kết gắn kết trình bày một cái nhìn kết hợp của nhiều thư mục (các nhánh) trong một hệ thống phân cấp duy nhất. Ok, nhưng làm thế nào để tôi sử dụng một trong thực tế, và cái nào?

Nhiều công nghệ gắn kết công đoàn có sẵn trên một hệ thống Linux hiện đại: OverlayFS , aufs , UnionFS , các hệ thống tệp dựa trên FUSE khác nhau,

Đưa ra một trường hợp sử dụng, làm thế nào để tôi quyết định cái nào là phù hợp? Đặc biệt:

  • Những cái nào yêu cầu quyền truy cập root trên một hệ thống điển hình? (Nói cách khác, người dùng không có đặc quyền có thể tạo liên kết không?)
  • Những cái nào có thể được gắn trên /(tất nhiên với quyền truy cập root)?
  • Những cái nào hỗ trợ viết cho các nhánh bên dưới? (Tức là nếu /foo/barđược gắn kết với /union, tôi có thể viết thư cho /foo/barkhông?)
  • Những cái nào hỗ trợ các chính sách cấu hình để viết? (Ví dụ: tôi có thể gửi các tệp mới được tạo cho nhánh B mặc dù tôi đang nhận nội dung từ nhánh A khi một tệp tồn tại trên cả hai nhánh?)
  • Những cái nào hỗ trợ một thứ tự ưu tiên giữa các nhánh phụ thuộc vào các tệp? (Ví dụ: tôi có thể luôn nhận được tệp mới nhất trong số tất cả các chi nhánh có nó không?)

Ví dụ sử dụng sẽ được đánh giá cao.

Hãy tránh câu trả lời tập trung vào một điểm cụ thể. Tôi đang tìm kiếm câu trả lời toàn diện để xem xét phần mềm có sẵn (một cái gì đó tương tự như Gắn kết liên kết là gì? ). Câu trả lời tốt sẽ được trả lại.

Câu trả lời:


12

Trên mỗi điểm cụ thể:

  • Quyền truy cập root: Nếu nó sử dụng FUSE, nó không cần root, nếu nó không sử dụng FUSE, nó cần root trừ khi bạn thiết lập đặc biệt với các khả năng (có khả năng gây nguy hiểm) hoặc không gian tên.

  • Gắn kết /: Tôi giả sử bạn có nghĩa là hệ thống tập tin gốc khi khởi động, trong trường hợp bất kỳ ai trong số họ chạy trong chế độ kernel nên trong lý thuyết hoạt động, mặc dù một số đáng tin cậy hơn những người khác. Hầu hết các LiveCD làm điều này, vì vậy đó là nơi tôi sẽ đề nghị tìm kiếm thông tin về điểm đặc biệt này.

  • Viết cho các nhánh bên dưới: Điều này phụ thuộc vào ý của bạn. Nếu bạn có nghĩa là tuyên truyền ghi vào chế độ xem được gắn xuống các nhánh thấp hơn, tôi không có ý tưởng. Nếu bạn có nghĩa là viết cho các nhánh thấp hơn ngoài băng từ chính hệ thống tệp chính, thì về mặt kỹ thuật, cả ba nhóm lớn đều làm, nhưng tất cả đều yêu cầu phải trả lại để đảm bảo rằng thay đổi được truyền đến chế độ xem được gắn.

  • Các chính sách ghi có thể định cấu hình: Tôi không biết cụ thể về điều này, nhưng tôi nghĩ rằng 3 chính sách lớn (UnionFS, AUFS và OverlayFS) không hỗ trợ nó.

  • Thứ tự ưu tiên phụ thuộc vào tệp: Tôi nghĩ rằng loại này cũng thuộc câu hỏi phụ thứ ba, và giống như ở đó, tôi không biết bất kỳ câu hỏi nào hỗ trợ cụ thể.

Như một số chi tiết cụ thể hơn về mỗi người trong số họ:

  • UnionFS: Theo như tôi có thể nói, đây là triển khai hệ thống tập tin liên kết có thể xếp chồng ban đầu cho Linux. Nó đã có từ rất lâu đời và được sử dụng bởi rất nhiều LiveCD của Linux. Nó chạy trong chế độ kernel và yêu cầu các bản vá cho kernel ngược dòng được sử dụng.

  • AUFS: Có nguồn gốc là một nhánh của UnionFS, và sau đó trở thành thứ của riêng nó. Điều này đã cố gắng để có được đường chính hợp nhất và đã bị từ chối với lý do chất lượng mã. Nó đã thay thế UnionFS trong một số bản phân phối LiveCD, chủ yếu là các dẫn xuất Debian và Gentoo. Giống như UnionFS, nó chạy trong chế độ kernel và yêu cầu các bản vá cho kernel ngược dòng.

  • OverlayFS: Tôi không biết nhiều về sự phát triển ban đầu của cái này, ngoài việc nó được hỗ trợ trên một vài công cụ phái sinh BSD. Đáng chú ý là việc triển khai hệ thống tập tin lớp phủ / liên kết ngược dòng trong nhân Linux. Nó cũng chạy trong chế độ kernel.

  • UnionFS-FUSE: Dự án có tên hơi khó hiểu này thực sự không liên quan gì đến UnionFS ngoài việc cung cấp về cơ bản cùng chức năng. Đó là triển khai FUSE được sử dụng rộng rãi nhất của hệ thống tập tin công đoàn, nhưng đó là tất cả những gì tôi biết về nó.

  • mhddfs: Đây là một ngoại lệ kỳ lạ gần giống với triển khai RAID-0 chi tiết hơn so với hệ thống tệp kết hợp thông thường. Nó hỗ trợ cân bằng các tập tin trên nhiều thư mục sao lưu dựa trên việc sử dụng không gian. Nó cũng dựa trên FUSE.

Một vài điều cụ thể cần lưu ý không cụ thể đối với việc triển khai cụ thể:

  • Tất cả các tùy chọn trong kernel có những hạn chế về hệ thống tệp sao lưu có thể là gì, đáng chú ý nhất là không hoạt động với các hệ thống tệp hoặc BTRFS được nối mạng.

  • Tất cả các cài đặt FUSE có vấn đề khi được sử dụng như một hệ thống tập tin gốc. Điều này không cụ thể đối với việc triển khai hệ thống tập tin công đoàn, nhưng nói chung là một vấn đề với FUSE.

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.