Có thể truy cập các tập tin vào hệ thống bóng tối của bạn bằng cách gắn kết không?


18

Trong Linux, có cách nào để truy cập các tệp trên một hệ thống tệp được gắn đã bị "che khuất" khi một hệ thống tệp khác được gắn trên thư mục con?

Ví dụ

cd /
mkdir /foo
touch /foo/bar
mount /dev/sda1 /foo
# now, can I still get to /foo/bar on the / filesystem?

Giải pháp cho những giấc mơ của tôi sẽ không yêu cầu quyền nâng cao hoặc cụ thể đối với một hệ thống tệp nhất định, nhưng tôi sẽ lấy bất kỳ mẩu tin lưu niệm nào tôi có thể nhận được mà không gặp rủi ro hệ thống tệp bị hỏng.

Câu trả lời:


28

Bạn có thể sử dụng lệnh mount để truy cập hệ thống tập tin cơ bản.

$ mkdir /mnt/root
$ sudo mount --bind / /mnt/root
$ cat /mnt/root/foo/bar

Không có vấn đề với tham nhũng khi làm điều này, nhưng nó đòi hỏi phải có sự cho phép để gắn kết hệ thống tập tin.


+1, tôi nghĩ đó mount --bindlà câu trả lời. Nhưng tôi không chắc.
Dan D.

1
+0,95, tôi hoàn toàn quên mất các ràng buộc là không có giá trị theo mặc định. Tuy nhiên, lần trước khi tôi liên kết / ở nơi khác, tôi không thể xóa nó mà không khởi động lại; có thể đã có một số thành phần GUI lấy nó mặc dù. Bạn đã thử chưa?
dùng1686

Cảm ơn! Tôi đã nghĩ về các liên kết gắn kết trong một giây, nhưng nghĩ rằng chúng sẽ hoạt động dựa trên việc viết lại tên đường dẫn và do đó được đệ quy ...
themel

5

Nếu bạn có root, bạn có thể mount --movehệ thống tập tin được gắn ở trên cùng của một thư mục tạm thời, sau đó di chuyển nó trở lại sau đó.

mkdir /bar
mount --move /foo /bar

Có root cũng cho phép truy cập trực tiếp vào các thiết bị khối bên dưới. Đối với ext4, bạn có thể sử dụng debugfsđể xuất tệp.

Truy cập chỉ đọc không bao giờ có thể làm hỏng hệ thống tập tin.


Thư mục có thể có tay cầm, hoặc mô tả tập tin, thu được cho họ. "Thư mục hiện tại" là một tay cầm, không phải là một đường dẫn. Nếu bạn có một điều khiển đến một thư mục, bạn có thể truy cập các tệp bên trong ngay cả khi vị trí đó đã được gắn kết. Điều này không cần đặc quyền, chỉ cần chuẩn bị đặc biệt.

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.