Atrybut „extents” systemu Linux ext4

9

Zauważyłem ten eatrybut w kilku plikach / katalogach na komputerach z systemem Linux zainstalowanych na systemach plików ext4.

[[email protected] ~]$ lsattr -d /bin
-------------e- /bin

Według chattr(1):

Atrybut „e” wskazuje, że plik używa zakresu do mapowania bloków na dysku. Nie można go usunąć za pomocą chattr (1).

W jaki sposób jest to różne, a co ważniejsze, w jaki sposób ten szczegół jest znaczący - a konkretnie dlaczego ten szczegół jest wystarczająco ważny, aby można go było zgłosić jako atrybut pliku? W jakich okolicznościach powinienem kiedykolwiek zmienić swoje zachowanie w oparciu o wiedzę, że ten plik „używa zakresu do mapowania bloków na dysku”? Prawdopodobnie jest to coś, co muszę wiedzieć, inaczej nie byłoby to tak oczywiste, prawda?

tylerl
źródło

Odpowiedzi:

14

Myślę, że flaga zasięgu jest widoczna jako atrybut głównie po to, aby można ją było ustawićchattr , co spowoduje, że sterownik ext4 ponownie przydzieli plik przy użyciu zakresu zamiast list bloków. Jeśli przekonwertowałeś istniejący system plików ext3 na ext4 (za pomocą, tune2fsaby włączyć nowe flagi funkcji), prawdopodobnie będziesz chciał przekonwertować istniejące pliki, aby używać rozszerzeń, i tak to zrobić.

Nowo utworzone pliki w systemie plików ext4 zawsze używają zakresów (o ile mi wiadomo), więc jeśli twój system plików został utworzony jako ext4 (w przeciwieństwie do konwersji z ext3), wszystko powinno już mieć atrybut zasięgu, więc nie musisz martw się o to.

Zobacz ten artykuł, aby uzyskać więcej informacji.

Wyzard
źródło
KVPM v0.9.9 -> napisz system plików -> dodatkowe opcje ext4 -> użyj rozszerzeń. Wygląda na to, że stworzyłoby to zakresy fs bez, według tego, co powiedziałeś, powinno być już zaznaczone / zaznaczone lub wyłączone (niezmienne), dość mylące, może to być błąd interfejsu kvpm? ale teraz uważam, że oznacza to, że istnieją domyślne opcje, a próba ustawienia takich flag pozwala nam tylko zmienić te domyślne, to po prostu nie pokazuje nam, jakie są domyślne! prawdopodobnie ...
Aquarius Power
1
@AquariusPower, to pytanie dotyczy flagi zakresu na pojedynczym pliku, ale opcja widoczna w KVPM dotyczy tego, czy nowy system plików powinien w ogóle obsługiwać zakresy. Jeśli to wyłączysz, wszystkie pliki zostaną przypisane do list bloków i nie będą miały atrybutu „e”. Jeśli później uruchomisz tune2fs -O extentsystem plików, aby włączyć zakresy, nowe pliki będą miały atrybut „e”, ale pliki istniejące wcześniej nie będą dostępne, dopóki nie utworzysz chattr +epliku.
Wyzard