Czy możesz mieć wiele zagubionych i znalezionych katalogów?

10

Nie znałem mklost+foundpolecenia, dopóki nie przeczytałem tego pytania .

mklost+foundKomenda utworzy nową lost + found w katalogu pwd.

  1. Dlaczego miałbyś kiedykolwiek chcieć uruchomić to polecenie? Katalog lost + found już istnieje w / na każdej sprawdzonej dystrybucji.

  2. Co by się stało, gdybyś miał wiele zagubionych i znalezionych katalogów? Czy odzyskane fragmenty danych trafiłyby do zagubionego + znalezionego katalogu w /, czy też do najnowszego utworzonego zagubionego + znalezionego katalogu?

Nie jestem pewien, jak mógłbym celowo utworzyć fragment danych, aby to przetestować.

spuder
źródło
3
rm -rf /lost+found. Ups ...
cjm

Odpowiedzi:

11

Dlaczego miałbyś kiedykolwiek chcieć uruchomić to polecenie?

W przypadku, gdy lost+foundkatalog nie istnieje. Ponieważ jest to zwykły katalog, rootużytkownik może go usunąć za pomocą rm -r. Niektóre wersje fsck, gdy muszą skorzystać z lost+foundkatalogu, utworzą go, jeśli nie istnieje, a niektóre nie. Jeśli nie ma lost+foundkatalogu, fscknie można odzyskać osieroconych plików, to znaczy plików, które nie zawierają żadnych pozycji katalogu, które się do nich odnoszą.

Wersja systemu Linux mklost+foundma następującą funkcję (ze strony podręcznika mklost + znaleziono ):

mklost+foundwstępnie alokuje bloki dysku do katalogu lost + found, aby podczas uruchamiania e2fsck (8) w celu odzyskania systemu plików nie trzeba było alokować bloków w systemie plików, aby przechowywać dużą liczbę niepowiązanych plików. Dzięki temu e2fsck nie będzie musiał przydzielać bloków danych w systemie plików podczas odzyskiwania.

Oznacza to, że jeśli będziesz musiał odzyskać pliki z uszkodzonego systemu plików przy użyciu fsck, mniej plików zostanie utraconych w ramach procesu odzyskiwania, ponieważ fscknie będziesz musiał przydzielać bloków z systemu plików; takie bloki, które mogą zawierać prawidłowe dane pliku.

Co by się stało, jeśli masz wiele zagubionych i znalezionych katalogów?

Dla danego systemu plików fsckużyje tylko jednego lost+foundkatalogu: tego, który znajduje się w katalogu głównym systemu plików. Żaden inny lost+foundkatalog nie będzie traktowany specjalnie.

Mark Plotnick
źródło
3

Pytanie 1 Dlaczego miałbyś kiedykolwiek chcieć uruchomić to polecenie? Katalog lost + found już istnieje w / na każdej sprawdzonej dystrybucji.

Coś musi zostać utworzone lost+found, wydaje się, że to polecenie to robi. Każde zamontowane medium musi zachować własne lost+found.

fragment strony man

mklost + found służy do utworzenia utraconego katalogu + found w bieżącym katalogu roboczym w drugim rozszerzonym systemie plików Linux. Zwykle w katalogu głównym każdego systemu plików znajduje się zgubiony + znaleziony katalog.

O co chodzi z tworzeniem lost+foundkatalogu?

mklost + found wstępnie przydziela bloki dyskowe do katalogu lost + found, dzięki czemu podczas uruchamiania e2fsck (8) w celu odzyskania systemu plików, nie trzeba przydzielać bloków w systemie plików, aby przechowywać dużą liczbę niepowiązanych plików. Dzięki temu e2fsck nie będzie musiał przydzielać bloków danych w systemie plików podczas odzyskiwania.

Q2 Co by się stało, jeśli masz wiele zagubionych i znalezionych katalogów? Czy odzyskane fragmenty danych trafiłyby do zagubionego + znalezionego katalogu w /, czy też do najnowszego utworzonego zagubionego + znalezionego katalogu?

Spodziewałbym się, że ten ostatni będzie przyzwyczajony, e2fsckjeśli będzie musiał przenieść bloki danych lost+found.

slm
źródło
„Coś musi stworzyć lost+found”: Tak, ale w większości przypadków tak jest mke2fs.
Nate Eldredge
2

„Katalog utraconych + znalezionych już istnieje w /każdej dystrybucji, którą sprawdziłem”.

Ale nie o to chodzi. Każdy „prawdziwy” system plików (który mapuje do pewnego rodzaju pamięci blokowej, w przeciwieństwie do pseudo systemów plików takich jak / proc i swap) potrzebuje utraconego + znalezionego sierocińca. Na przykład, jeśli masz osobny system plików dla / home, powinien być /home/lost+found. Jest tak, ponieważ fscknie przenosi pliku do /lost+foundgłównego systemu plików; pozostawia znalezione pliki tam, gdzie je znalazł, ale tworzy pozycję katalogu w sierocińcu, aby człowiek mógł interweniować w celu zapewnienia odpowiedniej adopcji. Wiedza o tym, że coś jest w /home/lost+foundśrodku, /var/lost+foundmoże znacznie ułatwić tę ręczną interwencję.

Monty Harder
źródło
0

Według Essential System Administration

Błędy dysku lub nieprawidłowe zamknięcie systemu mogą spowodować utratę plików: utracone pliki odnoszą się do lokalizacji dysków oznaczonych jako używane w strukturach danych na dysku, ale nie wymienionych w żadnym katalogu (np. Niepuste w ode którego nie ma na liście w żadnym katalogu). Podczas uruchamiania systemu uruchamia program o nazwie fsck, który między innymi znajduje te pliki. Na każdej partycji dysku znajduje się katalog lost + found; / lost + found to ten na dysku głównym.

Najprawdopodobniej narzędzia takie jak wygląd fsck umieszczają fragmenty plików w katalogu lost + found wewnątrz katalogu głównego odpowiedniej partycji. Inne utracone + znalezione katalogi należy zignorować.

spuder
źródło