Một số phản ứng khác đã trả lời như thế nào để thiết lập lên một gắn kết bằng cách sử dụng các thiết bị loopback, nhưng bạn đặc biệt hỏi về gắn kết bind
, mà ar e một chút khác biệt. Nếu bạn muốn sử dụng giá trị gắn kết, bạn chỉ cần chỉ định --bind
trong lệnh gắn kết. Ví dụ:
mount --bind /original/path /new/path
này sẽ làm cho các vị trí hệ thống tập tin truy cập tại /original/path
cũng truy cập thông qua /new/path
. Lưu ý rằng điều này sẽ không phải các điểm lắp sau đây! Ví dụ, giả sử tôi có điểm lắp sau:
/something
/something/underneath/that
Bây giờ giả sử tôi thực hiện một bind
gắn cho /something
:
mount --bind /something /new_something
tôi sẽ có thể truy cập các tập tin như /something/myfile
qua đường /new_something/myfile
. Nhưng tôi sẽ không phải có thể truy cập các tệp như /something/underneath/that/otherfile
qua đường dẫn /new_something/underneath/that/otherfile
. Bạn phải thiết lập một gắn kết riêng biệt bind
cho mỗi hệ thống tệp; hoặc nếu bạn có một hạt nhân tương đối mới, bạn có thể sử dụng rbind
gắn kết, mà làm mountpoints sau:
mount --rbind /something /new_something
Một caveat về rbind
gắn kết: họ không xử lý các trường hợp một hệ thống tập tin được gắn sau rbind
là thiết lập. Nghĩa là, giả sử tôi có một gắn kết như thế này:
/something
Sau đó, tôi lập rbind
của tôi như trên, và sau đó tôi gắn /something/underneath/that
: các rbind
sẽ không kỳ diệu làm cho mới gắn kết có thể nhìn thấy thông qua vị trí rbind
. Cũng lưu ý rằng dường như do lỗi trong hạt nhân, bạn không thể ngắt kết nối gắn kết rbind
.
Ngoài ra, chỉ trong trường hợp bạn có nghĩa là "Làm thế nào để tôi thiết lập gắn kết ràng buộc sử dụng mount (2) gọi hệ thống?": Bạn phải xác định MS_BIND
cờ (quy định tại mount.h
) khi bạn gọi mount(2)
cho một bind
núi thường xuyên . Đối với gắn kết rbind
, bạn phải chỉ định MS_BIND
và cờ không có giấy tờ MS_REC
(được xác định trong linux/fs.h
).
Hy vọng rằng sẽ giúp,
Eric Melski
diễn giải của tôi về câu hỏi này khác với câu trả lời của mọi người dường như ... Tôi nghĩ OP muốn cấu trúc thư mục đệ quy vô cùng. Điều này có thể tạo bằng cách sử dụng các liên kết cứng và có thể là các liên kết tượng trưng, nhưng idk làm thế nào để làm điều đó với gắn kết, vì vậy tôi sẽ không trả lời. – rmeador
Bạn không thể liên kết cứng các thư mục trong hệ thống tập tin UNIX "truyền thống". – ephemient
chỉnh sửa câu hỏi – suresh