Bạn có thể có nhiều thư mục bị mất và tìm thấy?


10

Tôi đã không biết mklost+foundlệnh cho đến khi tôi đọc câu hỏi này .

Các mklost+foundlệnh sẽ làm cho một mất mới + tìm thấy thư mục trong pwd.

  1. Tại sao bạn cần chạy lệnh này? Thư mục bị mất + tìm thấy đã tồn tại trong / trên mọi bản phân phối mà tôi đã kiểm tra.

  2. Điều gì sẽ xảy ra nếu bạn có nhiều thư mục bị mất và tìm thấy? Các đoạn dữ liệu được phục hồi sẽ chuyển đến thư mục bị mất + tìm thấy trong / hoặc nó sẽ chuyển đến thư mục bị mất + tìm thấy gần đây nhất?

Tôi không chắc làm thế nào tôi có thể cố tình tạo ra một đoạn dữ liệu để kiểm tra điều này.


3
rm -rf /lost+found. Rất tiếc ...
cjm

Câu trả lời:


11

Tại sao bạn cần chạy lệnh này?

Trong trường hợp lost+foundthư mục không tồn tại. Vì nó chỉ là một thư mục bình thường, rootngười dùng có thể loại bỏ nó bằng cách sử dụng rm -r. Một số phiên bản fsck, khi chúng cần sử dụng một lost+foundthư mục, sẽ tạo nó nếu nó không tồn tại và một số phiên bản sẽ không. Nếu không có lost+foundthư mục, fsckkhông thể khôi phục các tệp mồ côi, nghĩa là các tệp không có bất kỳ mục nhập thư mục nào đề cập đến chúng.

Phiên bản Linux mklost+foundcó tính năng sau (từ trang mklost + find man ):

mklost+foundphân bổ trước các khối đĩa vào thư mục bị mất + tìm thấy để khi e2fsck (8) đang được chạy để khôi phục hệ thống tệp, không cần phân bổ các khối trong hệ thống tệp để lưu trữ một số lượng lớn tệp không được liên kết. Điều này đảm bảo rằng e2fsck sẽ không phải phân bổ các khối dữ liệu trong hệ thống tệp trong quá trình khôi phục.

Điều này có nghĩa là, nếu bạn phải khôi phục các tệp từ hệ thống tệp bị hỏng bằng cách sử dụng fsck, sẽ mất ít tệp hơn trong quá trình khôi phục vì fscksẽ không cần phân bổ các khối từ hệ thống tệp; các khối như vậy có thể chứa dữ liệu tệp hợp lệ.

Điều gì sẽ xảy ra nếu bạn có nhiều thư mục bị mất và tìm thấy?

Đối với một hệ thống tệp nhất định, fscksẽ chỉ sử dụng một lost+foundthư mục: thư mục nằm trong thư mục gốc của hệ thống tệp. Bất kỳ lost+foundthư mục khác sẽ không được đối xử đặc biệt.


3

Q1. Tại sao bạn cần chạy lệnh này? Thư mục bị mất + tìm thấy đã tồn tại trong / trên mọi bản phân phối mà tôi đã kiểm tra.

Một cái gì đó cần phải tạo lost+found, lệnh này sẽ xuất hiện để làm điều đó. Mỗi phương tiện bạn gắn kết cần phải duy trì riêng của mình lost+found.

đoạn trích từ trang người đàn ông

mklost + Found được sử dụng để tạo thư mục bị mất + tìm thấy trong thư mục làm việc hiện tại trên hệ thống tệp mở rộng thứ hai của Linux. Thông thường có một thư mục bị mất + tìm thấy trong thư mục gốc của mỗi hệ thống tập tin.

Điều gì là vấn đề lớn với việc tạo một lost+foundthư mục?

mklost + đã tìm thấy phân bổ trước các khối đĩa vào thư mục bị mất + tìm thấy để khi e2fsck (8) đang được chạy để khôi phục hệ thống tệp, không cần phân bổ các khối trong hệ thống tệp để lưu trữ một số lượng lớn các tệp không được liên kết. Điều này đảm bảo rằng e2fsck sẽ không phải phân bổ các khối dữ liệu trong hệ thống tệp trong quá trình khôi phục.

Quý 2 Điều gì sẽ xảy ra nếu bạn có nhiều thư mục bị mất và tìm thấy? Các đoạn dữ liệu được phục hồi sẽ chuyển đến thư mục bị mất + tìm thấy trong / hoặc nó sẽ chuyển đến thư mục bị mất + tìm thấy gần đây nhất?

Tôi hy vọng rằng cái cuối cùng sẽ là cái được sử dụng e2fscknếu nó cần di chuyển các khối dữ liệu sang lost+found.


"Một cái gì đó cần phải tạo ra lost+found": Có, nhưng trong hầu hết các trường hợp lệnh đó là mke2fs.
Nate Eldredge

2

"Thư mục bị mất + tìm thấy đã tồn tại /trên mọi bản phân phối mà tôi đã kiểm tra."

Nhưng đó không phải là vấn đề. Mọi hệ thống tập tin "thực" (ánh xạ tới một bộ lưu trữ khối nào đó, trái ngược với các hệ thống tập tin giả như / Proc và trao đổi) cần một trại trẻ mồ côi bị mất + tìm thấy. Ví dụ: nếu bạn có một hệ thống tập tin riêng cho / home, thì nên có /home/lost+found. Điều này là do fscksẽ không di chuyển một tập tin /lost+foundvào hệ thống tập tin gốc; nó để lại các tập tin mà nó tìm thấy ở nơi nó tìm thấy chúng, nhưng tạo ra một mục nhập thư mục trong trại trẻ mồ côi để con người có thể can thiệp để sắp xếp việc nhận con nuôi thích hợp. Biết rằng một cái gì đó trong /home/lost+foundso với /var/lost+foundcó thể làm cho sự can thiệp thủ công dễ dàng hơn nhiều.


0

Theo Quản trị hệ thống thiết yếu

Lỗi đĩa hoặc tắt hệ thống không chính xác có thể khiến các tệp bị mất: các tệp bị mất tham chiếu đến các vị trí đĩa được đánh dấu là được sử dụng trong các cấu trúc dữ liệu trên đĩa, nhưng không được liệt kê trong bất kỳ thư mục nào (ví dụ: không trống trong ode mà không được liệt kê trong bất kỳ thư mục). Khi hệ thống khởi động, nó chạy một chương trình gọi là fsck, trong số những thứ khác, tìm thấy các tệp này. Có một thư mục bị mất + tìm thấy trên mỗi phân vùng đĩa; / mất + tìm thấy là cái trên đĩa gốc.

Hầu hết các tiện ích có khả năng như fsck look đặt các đoạn tệp trong thư mục bị mất + tìm thấy bên trong thư mục gốc của phân vùng tương ứng. Các thư mục bị mất + tìm thấy khác nên được bỏ qua.

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.