Câu trả lời:
Bạn có thể tạo ra một liên kết gắn kết chỉ đọc .
mount --bind /path/to/source/ /path/to/dest/
mount -o bind,remount,ro /path/to/dest
Có, điều này phải được thực hiện theo hai bước trong hạt nhân sau hạt nhân Linux 2.6.25 (xem liên kết ở trên để biết lý do).
Hoặc, thay vào đó, như một /etc/fstab
ví dụ dòng ref :
/path/to/source/ /path/to/dest/ none bind,ro
Trong cả hai cách tiếp cận, một liên kết gắn kết sống trong lớp Hệ thống tệp ảo (VFS), do đó, nó không đặc trưng cho bất kỳ hệ thống tệp nào, bạn cũng không thực sự 'gắn kết' bất cứ điều gì. Vì vậy, về cơ bản, điều này đang tạo ra một loại liên kết tượng trưng cho bạn, nhưng điều này không hiển thị như vậy.
Và để trả lời bình luận bên dưới về việc mất dữ liệu ... không, các hướng dẫn này không xóa bất kỳ tệp nào. Trong trường hợp bạn có tệp hiện trên đường dẫn đích, giá trị này sẽ nằm trên phần này. Chỉ cần ngắt kết nối để có thể liệt kê các tệp của bạn trong đường dẫn trên hệ thống tệp bên dưới. Thậm chí còn tốt hơn; nói chung, tránh gắn lên trên một đường dẫn đích không trống.
mount -o bind,remount,ro /path/to/dest
Xem lwn.net/Articles/637501 từ cùng một chủ đề.
mount -o remount,ro /path/to/dest
cho tôi lỗi sau: mount: mount point is busy.
@gertvdijk
để gắn kết liên kết chỉ đọc với một lệnh:
mount --bind -r /path/to/source/ /path/to/dest/
để ngắt kết nối
umount /path/to/dest/