.\" -*- coding: UTF-8 -*-
'\" t
.\" -*- nroff -*-
.\" Copyright 1993, 1994, 1995 by Theodore Ts'o.  All Rights Reserved.
.\" This file may be copied under the terms of the GNU Public License.
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH EXT4 5 "styczeń 2025" "E2fsprogs wersja 1.47.2" 
.SH NAZWA
ext2 \- drugi rozszerzony (ang. extended) system plików
.br
ext3 \- trzeci rozszerzony system plików
.br
ext4 \- czwarty rozszerzony system plików
.SH OPIS
Drugi, trzeci i czwarty rozszerzone systemy plików, znane powszechnie jako
ext2, ext3 i ext4, są linuksowymi systemami plików, które były historycznie
domyślnymi systemami plików w wielu dystrybucjach Linuksa. Są to systemy
plików ogólnego zastosowania, zaprojektowane w celu uzyskania
rozszerzalności i kompatybilności wstecznej. W szczególności, systemy plików
mające być uprzednio używane jako ext2 i ext3, można zamontować za pomocą
sterownika systemu plików ext4. W wielu współczesnych dystrybucjach, do
obsługi żądań zamontowania systemów plików ext2 i ext3, skonfigurowano
właśnie sterownik systemu plików ext4.
.SH "CECHY SYSTEMU PLIKÓW"
System plików sformatowany jako ext2, ext3 lub ext4 może mieć włączony
pewien zestaw z poniższych cech funkcji systemu plików. Część cech nie jest
obsługiwane we wszystkich implementacjach sterowników systemu plików ext2,
ext3 i ext4, zależy to od używanej wersji jądra Linux. W innych systemach
operacyjnych, takich jak GNU/HURD czy FreeBSD, w ich implementacjach ext2
może być obsługiwany jedynie wąski podzbiór cech systemu plików.
.TP 
\fB64bit\fP
.br
Umożliwia osiągnięcie przez system plików rozmiaru większego niż 2^32
bloków. Cecha ta jest w razie potrzeby włączana automatycznie, ale można ją
również podać jawnie, jeśli system może wymagać zmiany rozmiaru na ponad
2^32 bloków, a był mniejszy niż ten próg, gdy go pierwotnie tworzono. Proszę
zauważyć, że niektóre starsze jądra oraz starsze wersje e2fsprogs nie będą
obsługiwały systemu plików z włączoną niniejszą cechą ext4.
.TP 
\fBbigalloc\fP
.br
Cecha ext4 umożliwiająca przydzielanie klastra bloków tak, że jednostką
alokacji jest liczba bloków do kwadratu. Oznacza to, że każdy bit
tradycyjnie będący mapą bitową alokacji bloków, teraz staje się wskaźnikiem,
mówiącym czy klaster jest używany, czy też nie, przy czym klaster składa się
domyślnie z 16 bloków. Cecha może zmniejszyć czas, jaki zajmuje
przydzielanie bloków oraz zmniejszyć fragmentację, szczególnie w przypadku
dużych plików. Rozmiar można określić opcją \fBmke2fs \-C\fP.
.IP
\fBUwaga:\fP Cecha bigalloc jest wciąż rozwijana i może nie być w pełni
obsługiwana przez używane jądro oraz posiadać błędy. Szczegóły opisano na
stronie internetowej http://ext4.wiki.kernel.org/index.php/Bigalloc. Opcja
może interferować z opóźnioną alokacją (zob. opcję montowania
\fBnodelalloc\fP).
.IP
Cecha wymaga włączenia funkcji \fBextent\fP.
.TP 
\fBcasefold\fP
.br
Cecha ext4 zapewnia obsługę kodowania dla katalogów z włączoną flagą
casefold (+F), na poziomie systemu plików. Cecha ta zachowuje nazwy na
dysku, lecz pozwala aplikacjom odszukanie pliku w systemie plików za pomocą
wersji równoważnej kodowania nazwy pliku.
.TP 
\fBdir_index\fP
.br
Używa b\-drzew z kluczem do przyspieszenia wyszukiwania w dużych
katalogach. Jest to cecha obsługiwana w systemach plików ext3 i ext4, a
ignorowana przez system plików ext2.
.TP 
\fBdir_nlink\fP
.br
I\-węzeł nie może mieć zwykle w ext4 więcej niż 65\ 000 dowiązań zwykłych
(twardych). Dotyczy to zarówno zwykłych plików jak i katalogów, zatem
oznacza to również, że katalog nie może posiadać więcej niż 64\ 998
podkatalogów (ponieważ każdy z wpisów \[Bq].\[rq] i \[Bq]..\[rq], jak
również wpis katalogu w jego katalogu nadrzędnym, liczą się jako dowiązania
zwykłe). Niniejsza cecha umożliwia podniesienie tego limitu, przez co ext4
użyje wartości dowiązań zwykłych równej 1 jako wskaźnika, że liczba dowiązań
zwykłych do katalogu nie jest znana, gdy liczba dowiązań mogła przekroczyć
maksymalny limit.
.TP 
\fBea_inode\fP
.br
Atrybuty rozszerzone pliku wraz z powiązanymi metadanymi, muszą zwykle
zmieścić się w i\-węźle lub w bloku atrybutów rozszerzonych związanym z
i\-węzłem. Cecha ta pozwala, jeśli zajdzie taka potrzeba, na umieszczenie
wartości każdego atrybutu rozszerzonego w blokach danych oddzielnego
i\-węzła, zwiększając limity rozmiaru i liczby atrybutów rozszerzonych na
plik.
.TP 
\fBencrypt\fP
.br
Włącza obsługę szyfrowania bloków z danymi oraz nazw plików na poziomie
systemu plików. Metadane i\-węzłów (znaczniki czasu, rozmiar pliku, własność
użytkownika/grupy itp.) \fInie\fP są szyfrowane.
.IP
Cecha ta jest najbardziej przydatna w systemach plików z wieloma
użytkownikami lub gdy nie wszystkie pliki mają być zaszyfrowane. W wielu
przypadkach, szczególnie w systemach używanych przez jednego użytkownika,
szyfrowanie na poziomie urządzenia blokowego, za pomocą dm\-crypt, może
zapewnić zdecydowanie większe bezpieczeństwo.
.TP 
\fBext_attr\fP
.br
Cecha włącza korzystanie z atrybutów rozszerzonych. Jest obsługiwana w ext2,
ext3 i ext4.
.TP 
\fBextent\fP
.br
Ta cecha ext4 pozwala na przechowywanie przypisań numerów bloków logicznych
określonego i\-węzła do bloków fizycznych na urządzeniu dyskowym w postaci
drzewa ekstentów, które jest efektywniejszą strukturą danych od tradycyjnych
bloków niebezpośrednich, używanych w systemach plików ext2 i ext3. Używanie
drzewa ekstentów zmniejsza narzut bloków metadanych, poprawia wydajność
systemu plików i zmniejsza czas potrzebny do wykonania \fBe2fsck\fP(8) na
systemie plików (uwaga: ze względów historycznych/kompatybilności wstecznej,
jako prawidłowa nazwa akceptowana jest oprócz \fBextent\fP także \fBextents\fP).
.TP 
\fBextra_isize\fP
.br
Ta cecha ext4 rezerwuje określoną ilość miejsca w każdym i\-węźle na
metadane, takie jak znaczniki nanosekundowe i czas utworzenia pliku, nawet
jeśli aktualne jądro nie wymaga rezerwacji tak dużej przestrzeni. Bez tej
cechy, jądro zarezerwuje przestrzeń na funkcje, których aktualnie
potrzebuje, a reszta może być zajęta przez atrybuty rozszerzone.

W przypadku tej cechy, użyteczny rozmiar i\-węzła musi wynosić co najmniej
256 bajtów.
.TP 
\fBfiletype\fP
.br
Cecha włącza przechowywanie informacji o typie pliku we wpisach
katalogu. Cecha ta jest obsługiwana w ext2, ext3 i ext4.
.TP 
\fBflex_bg\fP
.br
Ta cecha ext4 pozwala na umieszczanie metadanych grup poszczególnych bloków
(mapy bitowych alokacji oraz tablic i\-węzłów) w dowolnym miejscu
nośnika. Dodatkowo, \fBmke2fs\fP(8) umieści metadane grup poszczególnych bloków
razem, począwszy od pierwszej grupy bloków każdej \[Bq]grupy
flex_bg\[rq]. Rozmiar grupy flex_bg można określić za pomocą opcji \fB\-G\fP.
.TP 
\fBhas_journal\fP
.br
Tworzy dziennik, aby zapewnić spójność systemu plików nawet po wystąpieniu
nieprawidłowego zamknięcia. Ustawienie tej cechy systemu plików jest
równoważne podaniu opcji \fB\-j\fP programowi \fBmke2fs\fP(8) lub
\fBtune2fs\fP(8). Cecha ta jest obsługiwana przez ext3 i ext4 oraz ignorowana
przez sterownik systemu plików ext2.
.TP 
\fBhuge_file\fP
.br
Ta cecha ext4 pozwala na osiąganie przez pliki rozmiaru większego niż 2
terabajty.
.TP 
\fBinline_data\fP
Pozwala na przechowywanie danych w przestrzeni i\-węzła i atrybutów
rozszerzonych.
.TP 
\fBjournal_dev\fP
.br
Ta cecha jest włączana na superbloku, znajdującym się w zewnętrznym
urządzeniu dziennika. Rozmiar bloku zewnętrznego dziennika musi być taki
sam, jak w przypadku używającego go systemu plików.
.IP
Zewnętrzne urządzenie dziennika może być użyte przez system plików, za
pomocą opcji \fB\-J\fP \fBdevice=\fP<urządzenie\-zewnętrzne> programu
\fBmke2fs\fP(8) lub \fBtune2fs\fP(8).
.TP 
\fBlarge_dir\fP
.br
Cecha ta zwiększa limit liczby plików na katalog, przez zwiększenie
maksymalnego rozmiaru katalogów i, w przypadku katalogów korzystających z
b\-drzewami z kluczem (zob. \fBdir_index\fP), maksymalną wysokość b\-drzewa z
kluczem, używanego do przechowywania wpisów katalogów.
.TP 
\fBlarge_file\fP
.br
Ten znacznik cechy jest ustawiany automatycznie przez współczesne jądra, gdy
utworzy się plik o rozmiarze większym niż 2 gigabajty. Bardzo stare jądra
nie potrafią obsłużyć dużych plików, zatem cecha ta służyła do zapobiegania
montowania systemów plików, których stare jądra nie mogły zrozumieć.
.TP 
\fBmetadata_csum\fP
.br
Ta cecha ext4 włącza sumy kontrolne metadanych. Sumy kontrolne dotyczą
wszystkich metadanych systemu plików (superbloku, bloków deskryptora grupy,
map bitowych i\-węzła i bloku, katalogów i bloków drzewa ekstentów). Algorytm
sum kontrolnych używany do bloków metadanych różni się od wykorzystywanego
do deskryptorów grup, przy włączonej funkcji \fBuninit_bg\fP. Te dwie cechy są
niekompatybilne i preferowana jest cecha \fBmetadata_csum\fP, zamiast
\fBuninit_bg\fP.
.TP 
\fBmetadata_csum_seed\fP
.br
Cecha pozwala na przechowywanie przez system plików ziarna sum kontrolnych
metadanych w superbloku, co pozwala na zmianę, przez administratora, UUID\-u
systemu plików używającego \fBmetadata_csum\fP, gdy jest on zamontowany.
.TP 
\fBmeta_bg\fP
.br
Ta cecha ext4 pozwala na zmianę systemów plików online, bez potrzeby jawnego
rezerwowania przestrzeni na wzrost rozmiaru deskryptorów grupy
bloków. Schemat ten służy również do zmiany systemów plików, które mają
więcej niż 2^32 bloków. Nie zaleca się ustawiania tej cechy przy tworzeniu
systemu plików, ponieważ ta alternatywna metoda przechowywania bloku
deskryptorów grup spowolni montowania systemu plików, a nowsze jądra mogą ją
automatycznie włączyć, gdy będzie to konieczne przy dokonywaniu zmiany
rozmiaru systemu plików online, gdy zabraknie przestrzeni dostępnej w
zmienianym rozmiarze i\-węzła.
.TP 
\fBmmp\fP
.br
Ta cecha ext4 udostępnia ochronę przed wielokrotnym montowaniem
(ang. multiple mount protection \[em] MMP). MMP pomaga chronić system plików
przed wielokrotnym zamontowaniem i jest przydatna w środowiskach
korzystających z wspólnych nośników danych.
.TP 
\fBorphan_file\fP
.br
Ta funkcja ext4 eliminuje potencjalne wąskie gardło w zastosowaniach, w
których następuje wiele równoległych przycięć lub rozszerzeń plików. Jest
obsługiwana w jądrach Linux od wersji 5.15 oraz przez e2fsprogs od wersji
1.47.0.
.TP 
\fBproject\fP
.br
Ta cecha ext4 udostępnia obsługę przydziałów dyskowych na projekt. Dzięki
tej cesze, w zamontowanym systemie plików pilnowany będzie identyfikator
projektu i\-węzła.
.TP 
\fBquota\fP
.br
Tworzy i\-węzły przydziałów dyskowych (i\-węzeł #3 do przydziałów użytkownika
(userquota) i i\-węzeł #4 do przydziałów grupy (group quota)) i ustawia je w
superbloku. Dzięki tej cesze, w zamontowanym systemie plików przydziały będą
automatycznie włączone.
.IP
Powoduje, że pliki przydziałów dyskowych (tj. user.quota i group.quota,
które istniały w zaprojektowanych dawniej przydziałach dyskowych) będą
ukrytymi i\-węzłami.
.TP 
\fBresize_inode\fP
.br
Cecha systemu plików wskazuje, że zarezerwowano przestrzeń, dzięki której
tablica deskryptora grupy bloków może być rozszerzona przy zmianie rozmiaru
zamontowanego systemu plików. Operacja zmiany rozmiaru zamontowanego systemu
plików jest dokonywana przez jądro, po jej wyzwoleniu za pomocą
\fBresize2fs\fP(8). Domyślnie, \fBmke2fs\fP(8) postara się zarezerwować
wystarczająco dużo miejsca, aby system plików mógł być zwiększony do
rozmiaru 1024 razy większego niż rozmiar początkowy. Można to zmienić za
pomocą rozszerzonej opcji \fBresize\fP.
.IP
Cecha ta wymaga włączenia cechy \fBsparse_super\fP lub \fBsparse_super2\fP.
.TP 
\fBsparse_super\fP
.br
Cecha ustawiana na wszystkich współczesnych systemach plików ext2, ext3 i
ext4. Wskazuje, że kopie deskryptorów grupy bloków i superbloku są dostępne
tylko w kilku grupach bloków, nie we wszystkich.
.TP 
\fBsparse_super2\fP
.br
Cecha ta wskazuje, że będą występowały co najwyżej dwie kopie deskryptorów
grupy bloków i superbloku. Grupy bloków przechowujące kopię/kopie
deskryptorów grupy bloków i superbloku są przechowywane w superbloku, ale
zwykle jedna będzie przechowywana na początku grupy bloków #1, a jeden w
ostatniej grupie bloków w systemie plików. Cechy te są generalnie bardziej
ekstremalną wersją sparse_super i są zaprojektowane w celu udostępnienia
znacznie większej ciągłej przestrzeni dysku plikom z danymi.
.TP 
\fBstable_inodes\fP
.br
Oznacza numery i\-węzłów i UUID systemu plików jako stabilne. \fBresize2fs\fP(8)
nie pozwoli na zmniejszanie systemu plików z tą cechą, a \fBtune2fs\fP(8) nie
pozwoli na zmienianie jego UUID. Cecha ta pozwala na korzystanie z
wyspecjalizowanych ustawień szyfrowania, używających numerów i\-węzłów oraz
UUID\-u. Proszę zauważyć, że wciąż trzeba oddzielnie włączyć cechę
\fBencrypt\fP. \fBstable_inodes\fP jest cechą typu \[Bq]compat\[rq], tak więc
starsze jądra dozwalają ją.
.TP 
\fBuninit_bg\fP
.br
Ta cecha systemu plików ext4 wskazuje, że deskryptory grupy bloków będą
zabezpieczone sumami kontrolnymi, dzięki czemu \fBmke2fs\fP(8) może bezpiecznie
utworzyć system plików bez inicjowania wszystkich grup bloków. Jądro będzie
utrzymywało wartość nieużywanych i\-węzłów oraz zainicjuje bloki i tablicę
i\-węzłów w sposób leniwy. Cecha ta przyspiesza również sprawdzanie systemu
plików za pomocą \fBe2fsck\fP(8) oraz przyspiesza utworzenie systemu plików
przy użyciu \fBmke2fs\fP(8).
.TP 
\fBverity\fP
.br
Włącza obsługę zabezpieczeń plików verity. Pliki verity są tylko do odczytu,
a ich dane są w sposób przezroczysty weryfikowane wobec drzewa Merkle,
ukrytego za końcem pliku. Za pomocą skrótu korzenia drzewa Merkle, plik
verity może być w sposób efektywny uwierzytelniony, niezależnie od jego
rozmiaru.
.IP
Cecha jest najbardziej przydatna do uwierzytelniania ważnych plików tylko do
odczytu w systemach plików do odczytu i zapisu. Jeśli sam system plików jest
tylko do odczytu, to używanie dm\-verity do uwierzytelnienia całego
urządzenia blokowego może zapewnić znacznie wyższe bezpieczeństwo.
.SH "OPCJE MONTOWANIA"
Niniejszy rozdział opisuje opcje montowania, które są typowe dla ext2, ext3
i ext4. Oprócz tego można używać ogólnych opcji montowania; więcej
szczegółów w podręczniku \fBmount\fP(8).
.SH "Opcje montowania ext2"
System plików \[Bq]ext2\[rq] jest standardowym linuksowym systemem
plików. Od Linuksa 2.5.46, w przypadku większości opcji, ustawienie domyślne
zależy od superbloku systemu plików. Ustawia się je za pomocą \fBtune2fs\fP(8).
.TP 
\fBacl\fP|\fBnoacl\fP
Obsługa list kontroli dostępu (ang. Access Control Lists) POSIX (lub
nie). Więcej szczegółów w podręczniku \fBacl\fP.
.TP 
\fBbsddf\fP|\fBminixdf\fP
Ustawia zachowanie wywołania systemowego \fIstatfs\fP. Zachowanie \fBminixdf\fP
zwraca w polu \fIf_blocks\fP całkowitą liczbę bloków w systemie plików,
natomiast zachowanie \fBbsddf\fP (domyślne) odejmuje bloki narzutu,
wykorzystywane przez system plików ext2, które nie są dostępne do
przechowywania danych. Oto efekt:
.sp 1
% \fBmount /k \-o minixdf; df /k; umount /k\fP
.TS
tab(#);
l2 l2 r2 l2 l2 l
l c r c c l.
System plików#1K\-bl#użyte#dostępne#%uż#zamont. na
/dev/sda6#2630655#86954#2412169#3%#/k
.TE
.sp 1
% \fBmount /k \-o bsddf; df /k; umount /k\fP
.TS
tab(#);
l2 l2 r2 l2 l2 l
l c r c c l.
System plików#1K\-bl#użyte#dostępne#%uż#zamont. na
/dev/sda6#2543714#13#2412169#0%#/k
.TE
.sp 1
Proszę zauważyć, że ten przykład ukazuje dodanie opcji wiersza poleceń do
opcji przekazanych w \fI/etc/fstab\fP.
.TP 
\fBcheck=none\fP lub \fBnocheck\fP
Przy zamontowaniu nie jest dokonywane sprawdzanie. Jest to zachowanie
domyślne. Jest szybkie. Rozsądnym jest wykonywać co jakiś czas \fBe2fsck\fP(8)
np. w czasie rozruchu systemu. Zachowania inne niż domyślne nie są już
obsługiwane (opcje \fBcheck=normal\fP i \fBcheck=strict\fP zostały
usunięte). Proszę zauważyć, że te opcje montowania nie muszą być
obsługiwane, jeśli do systemów pliku ext2 i ext3 użyto sterownika jądra
ext4.
.TP 
\fBdebug\fP
Wypisuje informacje debugowania przy każdym montowaniu (oraz ponownym
montowaniu).
.TP 
\fBerrors=\fP{\fBcontinue\fP|\fBremount\-ro\fP|\fBpanic\fP}
Określa zachowanie przy wystąpieniu błędu (odpowiednio: ignoruje błędy,
oznacza system jako zawierający błędy i kontynuuje; montuje system ponownie
jako tylko do odczytu; prowadzi do paniki jądra i zatrzymania
systemu). Zachowanie domyślne jest ustawiane w superbloku systemu plików i
można je zmienić za pomocą \fBtune2fs\fP(8).
.TP 
\fBgrpid\fP|\fBbsdgroups\fP i \fBnogrpid\fP|\fBsysvgroups\fP
Opcje te określają jaki identyfikator grupy otrzymuje nowo utworzony
plik. Gdy ustawione jest \fBgrpid\fP jest to identyfikator grupy katalogu, w
którym go utworzono. W przeciwnym razie (tak jest domyślnie) otrzymuje
identyfikator grupy systemu plików (fsgid) bieżącego procesu, chyba że
katalog ma ustawiony bit uprawnień sgid \[em] wówczas plik otrzymuje
identyfikator grupy katalogu, w którym go utworzono, a jeśli nowy plik jest
katalogiem, to dziedziczy również bit sgid.
.TP 
\fBgrpquota\fP|\fBnoquota\fP|\fBquota\fP|\fBusrquota\fP
Opcja montowania usrquota (równoważna: quota) włącza obsługę przydziałów
dyskowych użytkownika w systemie plików. Opcja grpquota włącza obsługę
przydziałów grup. Konieczne jest skorzystanie z narzędzi do przydziałów
dyskowych, aby faktycznie włączyć i zarządzać przydziałami dyskowymi.
.TP 
\fBnouid32\fP
Wyłącza 32\-bitowe UID\-y i GID\-y. Umożliwia to współdziałanie ze starszymi
jądrami, które zachowują wartości 16\-bitowe i ich oczekują.
.TP 
\fBoldalloc\fP lub \fBorlov\fP
Używa starego alokatora lub alokatora Orlov do nowych i\-węzłów. Domyślny
jest Orlov.
.TP 
\fBresgid=\fP\,\fIn\fP i \fBresuid=\fP\,\fIn\fP
System plików ext2 rezerwuje określony procent dostępnej przestrzeni
(domyślnie 5%, zob. \fBmke2fs\fP(8) i \fBtune2fs\fP(8)). Opcje te określają tego,
kto może korzystać z zarezerwowanych bloków (w przybliżeniu: kto ma
określony identyfikator użytkownika (resuid) lub należy do podanej grupy
(resgid)).
.TP 
\fBsb=\fP\fIn\fP
Zamiast używania zwykłego superbloku, używa alternatywnego superbloku
podanego w \fIn\fP. Opcja ta może się przydać, gdy podstawowy superblok został
uszkodzony. Położenie superbloku zapasowego zależy od rozmiaru bloku systemu
plików, liczby bloków na grupę oraz cech takich jak \fBsparse_super\fP.
.IP
Położenie dodatkowej kopii zapasowej superbloku może być określone poprzez
użycie programu \fBmke2fs\fP(8) z opcją \fB\-n\fP wypisującą położenia superbloków,
przy założeniu, że programowi \fBmke2fs\fP(8) podano argumenty spójne z
charakterystyką danego systemu plików (np. rozmiarem bloku, liczbą bloków na
grupę, \fBsparse_super\fP itd.)
.IP
Numer bloku używa 1000 jednostek. Zatem aby użyć logicznego bloku 32768 w
systemie plików z 4000 bloków, należy podać \[Bq]sb=131072\[rq].
.TP 
\fBuser_xattr\fP|\fBnouser_xattr\fP
Obsługuje (lub nie) atrybuty rozszerzone \[Bq]user.\[rq]


.SH "Opcje montowania ext3"
System plików ext3 jest wersją systemu plików ext2 poszerzoną o
dziennikowanie. Obsługuje te same opcje co ext2, a dodatkowo następujące:
.TP 
\fBjournal_dev=\fP\fInumer\-urządzenia\fP/\fBjournal_path=\fP\fIścieżka\fP
Gdy zmianie ulegną numery główne/poboczne urządzenia zewnętrznego dziennika,
opcje te pozwalają wskazać nowe położenie dziennika. Urządzenie dziennika
jest identyfikowane albo nowymi numerami: głównym i pobocznym zakodowanymi w
\fInumerze\-urządzenia\fP, albo \fIścieżką\fP do urządzenia.
.TP 
\fBnorecovery\fP/\fBnoload\fP
Nie ładuje dziennika przy montowaniu. Proszę zauważyć, że jeśli system
plików został niepoprawnie odmontowany, to pominięcie odtworzenie dziennika
spowoduje istnienie niespójności w systemie plików, co może doprowadzić do
wielu problemów.
.TP 
\fBdata=\fP{\fBjournal\fP|\fBordered\fP|\fBwriteback\fP}
Określa tryb dziennikowania plików z danymi. Metadane są zawsze
dziennikowane. Aby użyć trybu innego niż \fBordered\fP w głównym systemie
plików, należy przekazać tryb do jądra, jako parametr rozruchowy
np. \fIrootflags=data=journal\fP.
.RS
.TP 
\fBjournal\fP
Wszystkie dane są zatwierdzane do dziennika, przed zapisem do głównego
systemu plików.
.TP 
\fBordered\fP
Tryb domyślny. Wymuszane jest zapisywanie wszystkich danych bezpośrednio do
głównego systemu plików, zanim ich metadane są zatwierdzane w dzienniku.
.TP 
\fBwriteback\fP
Kolejność danych nie jest zachowywana \[en] dane mogą być zapisywane do
głównego systemu plików po zatwierdzeniu ich metadanych do dziennika. Ma to
być opcja zapewniająca największą przepustowość. Gwarantuje wewnętrzną
spójność systemu plików, ale może spowodować pojawienie się starych plików
po załamaniu i odtworzeniu dziennika.
.RE
.TP 
\fBdata_err=ignore\fP
Gdy wystąpi błąd w buforze plików danych w trybie ordered, ogranicza się
jedynie do wypisania komunikatu o błędzie.
.TP 
\fBdata_err=abort\fP
Gdy wystąpi błąd w buforze plików danych w trybie ordered, przerywa
dziennik.
.TP 
\fBbarrier=0\fP / \fBbarrier=1\fP
Wyłącza / włącza używanie barier zapisu w kodzie jbd (urządzenia blokowego
dziennika). barrier=0 wyłącza je, a barrier=1 włącza (tak jest
domyślnie). Wymagany jest również stos wejścia/wyjścia potrafiący obsługiwać
bariery, a jeśli jbd otrzyma błąd przy zapisie barier, ponownie wyłączy
bariery wypisując ostrzeżenie. Bariery zapisu wymuszają poprawną kolejność
na dysku w przypadku zatwierdzeń dziennika, co czyni dyskowe ulotne bufory
zapisu bezpiecznymi do użycia, przy pewnym uszczerbku wydajności. Jeśli
dyski komputera są w jakiś sposób zabezpieczone bateryjnie, wyłączenie
barier może bezpiecznie zwiększyć wydajność.
.TP 
\fBcommit=\fP\fIliczba\-sekund\fP
Uruchamia zatwierdzenie dziennika co \fIliczbę\-sekund\fP. Domyślna wartość to 5
sekund. Zero oznacza wartość domyślną.
.TP 
\fBuser_xattr\fP
Włącza rozszerzone atrybuty użytkownika. Więcej informacji w podręczniku
\fBxattr\fP(7).
.TP 
\fBjqfmt=\fP{\fBvfsold\fP|\fBvfsv0\fP|\fBvfsv1\fP}
Oprócz starego systemu przydziałów dyskowych (jak w ext2, jqfmt=vfsold,
inaczej quota w wersji 1) ext3 obsługuje również przydziały dziennikowane
(quota w wersji 2). jqfmt=vfsv0 lub jqfmt=vfsv1 włącza przydziały
dziennikowane. Mają one tę przewagę, że nawet po załamaniu systemu nie ma
konieczności sprawdzania przydziałów. Gdy włączona jest cecha systemu plików
\fBquota\fP, to przydziały dziennikowane są używane automatycznie, a ta opcja
montowania jest ignorowana.
.TP 
\fBusrjquota=aquota.user\fP|\fBgrpjquota=aquota.group\fP
Przy przydziałach dziennikowanych (jqfmt=vfsv0 lub jqfmt=vfsv1), wymagane są
opcje montowania usrjquota=aquota.user i grpjquota=aquota.group, wskazujące
systemowi przydziałów pliki bazy danych przydziałów, które mają być
używane. Gdy włączona jest cecha systemu plików \fBquota\fP, to przydziały
dziennikowane są używane automatycznie, a ta opcja montowania jest
ignorowana.

.SH "Opcje montowania ext4"
System plików ext4 stanowi wyższy poziom zaawansowania systemu plików ext3 i
zawiera usprawnienia skalowalności i niezawodności w celu obsługi dużych
systemów plików.

Opcje \fBjournal_dev, journal_path, norecovery, noload, data, commit, orlov,\fP
\fBoldalloc\fP, [\fBno\fP]\fBuser_xattr\fP, [\fBno\fP]\fBacl, bsddf, minixdf, debug, errors,\fP \fBdata_err, grpid, bsdgroups, nogrpid, sysvgroups, resgid, resuid, sb,\fP \fBquota, noquota, nouid32, grpquota, usrquota, usrjquota, grpjquota\fP i
\fBjqfmt\fP są wstecznie kompatybilne z ext3 i ext2.
.TP 
\fBjournal_checksum | nojournal_checksum\fP
Opcja journal_checksum włącza sumy kontrolne transakcji dziennika. Pozwoli
to na wykrywanie błędów w jądrze przez kod odzyskiwania w e2fsck i
jądrze. Jest to zmiana kompatybilna, która jest ignorowana przez starsze
jądra.
.TP 
\fBjournal_async_commit\fP
Bloki zatwierdzeń mogą być zapisywane na dysk bez czekania na bloki
deskryptora. Po włączeniu, starsze jądra nie będą mogły zamontować
urządzenia. Powoduje wewnętrzne włączenie opcji journal_checksum.
.TP 
\fBbarrier=0\fP / \fBbarrier=1\fP / \fBbarrier\fP / \fBnobarrier\fP
Te opcje montowania mają taki sam skutek jak w ext3. W celu zapewnienia
spójności z innymi opcjami montowania ext4 dodano opcje montowania
\[Bq]barrier\[rq] i \[Bq]nobarrier\[rq].

System plików ext4 domyślnie włącza bariery zapisu.
.TP 
\fBinode_readahead_blks=\fP\fIn\fP
Ten parametr dostosowania kontroluje maksymalną liczbę bloków tablicy
i\-węzłów, którą zbuforuje algorytm odczytania z wyprzedzeniem tablicy
i\-węzłów ext4. Wartość musi być potęgą dwójki. Domyślną wartością są 32
bloki.
.TP 
\fBstripe=\fP\fIn\fP
Liczba bloków systemu plików, których mballoc spróbuje użyć do przydzielenia
danych i wyrównania. W przypadku systemów RAID5/6, powinna być to liczba
dysków z danych * rozmiar cząstki (ang. chunk) RAID w blokach systemu
plików.
.TP 
\fBdelalloc\fP
Opóźnia przydzielenie bloków do czasu zapisu.
.TP 
\fBnodelalloc\fP
Wyłącza opóźnioną alokację. Bloki są przydzielane, gdy dane są kopiowane z
bufora użytkownika do bufora strony.
.TP 
\fBmax_batch_time=\fP\fImikrosekundy\fP
Maksymalny czas, jaki ext4 powinien czekać na dodatkowe operacje systemu
plików, w celu dokonania wspólnej, synchronicznej operacji zapisu. Ze
względu na to, że synchroniczne operacje zapisu wymuszają zatwierdzenie, a
później odczekują na zakończenie wejścia/wyjścia, nie jest to kosztowne, a
może dać duży zysk przepustowości, oczekuje się niewielki czas, aby
sprawdzić ewentualne inne transakcje mogące być podczepione do zapisu
synchronicznego. Algorytm został zaprojektowany do automatycznego
dostosowania się do szybkości dysku, mierząc czas, jaki zajmuje
(przeciętnie) zakończenie zatwierdzenia transakcji. Można to nazwać
\[Bq]czasem zatwierdzenia\[rq]. Jeśli czas, jaki trwała transakcja był
mniejszy od czasu zatwierdzenia, ext4 będzie próbował odczekać przez czas
zatwierdzenia, aby sprawdzić czy inne operacje dołączą do transakcji. Czas
zatwierdzenia jest ograniczony przez max_batch_time, które domyślnie wynosi
15000\ \[mc]s (15\ ms). Tę optymalizację można całkowicie wyłączyć
ustawiając max_batch_time na 0.
.TP 
\fBmin_batch_time=\fP\fImikrosekundy\fP
Ten parametr ustawia czas zatwierdzenia (zgodnie z powyższym opisem) na
minimum min_batch_time. Domyślnie wynosi to zero mikrosekund. Zwiększenie
tego parametru może zwiększyć przepustowość, przy obciążeniach
wielowątkowych, synchronicznych na bardzo szybkich dyskach, kosztem
zwiększonych opóźnień.
.TP 
\fBjournal_ioprio=\fP\fIpriorytet\fP
Priorytet wejścia/wyjścia (od 0 do 7, gdzie 0 jest najwyższym priorytetem),
który powinien być użyty do operacji wejścia/wyjścia przedkładanych przez
kjournald2 podczas zatwierdzenia. Domyślnie ustawi wartość 3, czyli nieco
więcej niż domyślny priorytet wejścia/wyjścia.
.TP 
\fBabort\fP
Symuluje efekt wywołania ext4_abort() do celów debugowania. Opcja używana
zwykle przy ponownym montowaniu już zamontowanego systemu plików.
.TP 
\fBauto_da_alloc\fP|\fBnoauto_da_alloc\fP
Wiele niechlujnych aplikacji nie używa fsync() przy zastępowaniu
istniejących plików wzorcami takimi jak

fd = open("foo.new")/write(fd,...)/close(fd)/ rename("foo.new", "foo")

albo nawet gorzej

fd = open("foo", O_TRUNC)/write(fd,...)/close(fd).

Jeśli włączona jest opcja auto_da_alloc, to ext4 wykryje wzorce \[Bq]zastąp
przez zmianę nazwy\[rq] oraz \[Bq]zastąp przez docięcie\[rq] i wymusi
sytuację, w której odroczone przydzielenia bloków są przydzielane w ten
sposób, że przy następnym zatwierdzeniu dziennika, w domyślnym trybie
data=ordered, przed zatwierdzeniem operacji rename() wymuszany jest zapis
bloków danych nowego pliku na dysk. To daje zbliżony poziom gwarancji jak
ext3, i zapobiega problemowi \[Bq]zerowej długości\[rq], jaki może
przydarzyć się przy załamaniu systemu, przed wymuszeniem bloków odroczonej
alokacji na dysk.
.TP 
\fBnoinit_itable\fP
Nie inicjuje niezainicjowanych bloków tablicy i\-węzłów w tle. Funkcja
przydatna na płytach instalacyjnych, dzięki czemu proces instalacji może
zakończyć się tak szybko jak to możliwe; proces inicjalizacji tablicy
i\-węzłów będzie wtedy odroczony do następnego zamontowania systemu plików.
.TP 
\fBinit_itable=\fP\fIn\fP
Leniwy kod inicjacji i\-węzłów odczeka \fIn\fP razy liczbę milisekund, jaką
zajęło wyzerowanie poprzedniej grupy bloków w tabeli
i\-węzłów. Minimalizowany jest w ten sposób wpływ na wydajność systemu, jaki
wywiera inicjowanie tabeli i\-węzłów systemu plików.
.TP 
\fBdiscard\fP/\fBnodiscard\fP
Kontroluje, czy ext4 powinien wydawać polecenia discard/TRIM do podległego
urządzenia blokowego w momencie zwolnienia bloków. Przydatne do urządzeń SSD
oraz rozszerzalnych LUN\-ów używających plików z dziurami, lecz domyślnie
jest wyłączona, do momentu aż zostanie wystarczająco dokładnie
przetestowana.
.TP 
\fBblock_validity\fP/\fBnoblock_validity\fP
Ta opcja włącza/wyłącza mechanizm jądra służący do śledzenia bloków
metadanych systemu plików w wewnętrznych strukturach danych. Pozwala m.in
wieloblokowemu alokatorowi na szybką lokalizację ekstentów, które mogą się
nakładać na bloki metadanych systemu plików. Opcja jest przeznaczona do
celów debugowania i jest domyślnie wyłączona, ponieważ negatywnie wpływa na
wydajność.
.TP 
\fBdioread_lock\fP/\fBdioread_nolock\fP
Kontroluje, czy ext4 powinien używać (czy nie) blokowania odczytu DIO
(bezpośredniego wejścia/wyjścia). Jeśli podano opcję dioread_nolock, to ext4
przydzieli niezainicjowany ekstent przed zapisem bufora i przekształci
ekstent w celu jego zainicjowania już po ukończeniu wejścia/wyjścia. Takie
podejście pozwala na uniknięcie używania przez kod ext4 zatrzasków i\-węzłów,
co zwiększa skalowalność na nośnikach o dużej szybkości. Nie współdziała
jednak z dziennikowaniem danych, opcja dioread_nolock zostanie wówczas
zignorowana, a jądro wypisze ostrzeżenie. Proszę zauważyć, że kod
dioread_nolock jest używany wyłącznie do plików korzystających z
ekstentów. Ze względu na wszystkie opisane ograniczenia, opcja jest
domyślnie wyłączona (obowiązuje dioread_lock).
.TP 
\fBmax_dir_size_kb=\fP\fIn\fP
Opcja ogranicza rozmiar katalogów, a każda próba wykroczenia poza podany
limit \fIn\fP (w kilobajtach) poskutkuje błędem ENOSPC. Jest to przydatne w
środowiskach o ograniczonej pamięci operacyjnej, gdzie bardzo duże katalogi
mogą spowodować poważne problemy z wydajnością, a nawet wywołać mechanizm
OOM\-killera (przykładowo, gdy dostępne jest tylko 512\ MiB pamięci, katalog
o wielkości 176\ MiB może poważnie ograniczyć wydajność systemu).
.TP 
\fBi_version\fP
Włącza obsługę 64\-bitowej wersji i\-węzłów. Opcja domyślnie wyłączona.
.TP 
\fBnombcache\fP
Opcja wyłącza korzystanie z mbcache w celu deduplikacji atrybutów
rozszerzonych. W systemach, gdzie atrybuty rozszerzone są rzadko (lub nigdy)
dzielone między plikami, użycie bufora mbcache do deduplikacji niepotrzebnie
zwiększa narzut obliczeniowy.
.TP 
\fBprjquota\fP
Opcja montowania prjquota włącza w systemie plików obsługę przydziałów
dyskowych na poziomie projektu. Konieczne jest skorzystanie z narzędzi do
przydziałów dyskowych, aby faktycznie włączyć i zarządzać przydziałami
dyskowymi. Niniejsza opcja montowania wymaga cechy \fBproject\fP systemu
plików.

.SH "ATRYBUTY PLIKU"
Systemy plików ext2, ext3 i ext4 obsługują ustawianie następujących
atrybutów plików w systemach Linux, za pomocą narzędzia \fBchattr\fP(1):
.sp
\fBa\fP \- tylko dopisywanie (ang. append)
.sp
\fBA\fP \- bez aktualizacji czasu dostępu (atime)
.sp
\fBd\fP \- bez zrzucania (ang. dump)
.sp
\fBD\fP \- synchroniczna aktualizacja katalogu (ang. directory)
.sp
\fBi\fP \- niezmienialny (ang. immutable)
.sp
\fBS\fP \- aktualizacje synchroniczne
.sp
\fBu\fP \- odwracalne kasowanie (ang. undeletable)
.sp
Oprócz tego, systemy plików ext3 i ext4 obsługują także:
.sp
\fBj\fP \- dziennikowanie danych (ang. journaling)
.sp
Ponadto, system plików ext4 obsługuje również:
.sp
\fBe\fP \- format ekstentów
.sp
Opis każdego z atrybutów znajduje się w podręczniku systemowym \fBchattr\fP(1).
.SH "OBSŁUGA W JĄDRZE"
Niniejszy rozdział opisuje sterownik systemu plików (np. ext2, ext3, ext4)
oraz wersję jądra, w której dodano obsługę danej cechy systemu
plików. Proszę zauważyć, że niekiedy cecha była obecna we wcześniejszych
wersjach jądra, ale znane były poważne błędy. W niektórych przypadkach cecha
może być wciąż uważana za eksperymentalną. Proszę również zwrócić uwagę, że
w niektórych dystrybucjach przeniesiono obsługę cech do starszych jąder; w
szczególności wersje jądra w niektórych \[Bq]dystrybucjach biznesowych\[rq]
mogą być niezwykle mylące.
.IP \fBfiletype\fP 2i
ext2, 2.2.0
.IP \fBsparse_super\fP 2i
ext2, 2.2.0
.IP \fBlarge_file\fP 2i
ext2, 2.2.0
.IP \fBhas_journal\fP 2i
ext3, 2.4.15
.IP \fBext_attr\fP 2i
ext2/ext3, 2.6.0
.IP \fBdir_index\fP 2i
ext3, 2.6.0
.IP \fBresize_inode\fP 2i
ext3, 2.6.10 (zmiana rozmiaru online)
.IP \fB64bit\fP 2i
ext4, 2.6.28
.IP \fBdir_nlink\fP 2i
ext4, 2.6.28
.IP \fBextent\fP 2i
ext4, 2.6.28
.IP \fBextra_isize\fP 2i
ext4, 2.6.28
.IP \fBflex_bg\fP 2i
ext4, 2.6.28
.IP \fBhuge_file\fP 2i
ext4, 2.6.28
.IP \fBmeta_bg\fP 2i
ext4, 2.6.28
.IP \fBuninit_bg\fP 2i
ext4, 2.6.28
.IP \fBmmp\fP 2i
ext4, 3.0
.IP \fBbigalloc\fP 2i
ext4, 3.2
.IP \fBquota\fP 2i
ext4, 3.6
.IP \fBinline_data\fP 2i
ext4, 3.8
.IP \fBsparse_super2\fP 2i
ext4, 3.16
.IP \fBmetadata_csum\fP 2i
ext4, 3.18
.IP \fBencrypt\fP 2i
ext4, 4.1
.IP \fBmetadata_csum_seed\fP 2i
ext4, 4.4
.IP \fBproject\fP 2i
ext4, 4.5
.IP \fBea_inode\fP 2i
ext4, 4.13
.IP \fBlarge_dir\fP 2i
ext4, 4.13
.IP \fBcasefold\fP 2i
ext4, 5.2
.IP \fBverity\fP 2i
ext4, 5.4
.IP \fBstable_inodes\fP 2i
ext4, 5.5
.SH "ZOBACZ TAKŻE"
\fBmke2fs\fP(8), \fBmke2fs.conf\fP(5), \fBe2fsck\fP(8), \fBdumpe2fs\fP(8),
\fBtune2fs\fP(8), \fBdebugfs\fP(8), \fBmount\fP(8), \fBchattr\fP(1)
.PP
.SH TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika:
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
