mkfs.fat - tworzy system plików FAT MS-DOS
mkfs.fat [
OPCJE]
URZĄDZENIE
[
LICZBA-BLOKÓW]
mkfs.fat służy do utworzenia systemu plików FAT na
urządzeniu lub w pliku obrazu.
URZĄDZENIE jest specjalnym
plikiem odnoszącym się do urządzenia (np. /dev/sdXX) lub
pliku obrazu (który nie musi istnieć, jeśli zastosuje
się opcję
-C).
LICZBA-BLOKÓW to liczba
bloków na urządzeniu, przy czym rozmiar bloku wynosi zawsze 1024
bajtów, niezależnie od rozmiaru sektora czy klastra. Z tego
względu
LICZBA-BLOKÓW określa
wielkość systemu plików w KiB, a nie liczbę
sektorów (podobnie jak wszystkie inne opcje
mkfs.fat).
Jeśli nie poda się jej,
mkfs.fat automatycznie
wypełni dostępne miejsce systemem plików.
Obsługiwane są dwa warianty systemu plików FAT.
Standardowym są systemy plików FAT12, FAT16 i FAT32 zdefiniowane
przez Microsoft i szeroko stosowane na dyskach twardych i na
przenośnych nośnikach USB lub kartach pamięci SD. Innym
wariantem jest przestarzały wariant Atari używany na Atari ST.
W trybie Atari, jeśli użytkownik nie zażądał
inaczej,
mkfs.fat użyje 2 sektorów na klaster,
ponieważ GEMDOS nie lubi innych wartości. Będzie
także przestrzegał maksymalnej liczby sektorów,
którą może obsłużyć GEMDOS.
Większe systemy plików są tworzone przez
zwiększanie logicznego rozmiaru sektora. Generowany jest zgodny z Atari
numer seryjny systemu plików, a 12-bitowy FAT jest używany tylko
do systemu plików, które mają jeden ze zwyczajowych
rozmiarów dyskietek (720k, 1.2M, 1.44M, 2.88M); w przeciwnym wypadku
używany jest FAT 16-bitowy. Można to nadpisać
opcją
-F. Niektóre pola charakterystyczne dla sektora
rozruchowego PC nie są zapisywane, a komunikat startowy (opcja
-m) jest ignorowany.
- -a
- Zwyczajowo mkfs.fat dla wszystkich systemów
plików z wyjątkiem tych małych wyrówna
wszystkie struktury danych do rozmiaru klastra, aby mieć
pewność, że jeśli partycja jest poprawnie
wyrównana, to tak samo wyrównane będą
wszystkie struktury danych systemu plików. Ta opcja
wyłącza wyrównywanie i może dostarczyć
dodatkowych klastrów do przechowywania danych, jednakże
będzie to okupione znaczącym spadkiem wydajności w
przypadku dysków RAID, dysków przenośnych lub
dysków twardych o dużych sektorach.
- -A
- Wybiera wariant Atari systemu plików FAT,
jeśli nie jest on już aktywny - w takim wypadku wybiera
standardowy wariant FAT. Opcja ta jest wybierana domyślnie,
jeśli mkfs.fat uruchomiono na 68k Atari Linux.
-
-b SEKTOR-KOPII-ZAPASOWEJ
- Wybiera lokalizację kopii sektora rozruchowego
FAT32. Wartość domyślna zależy od liczby
zarezerwowanych sektorów, ale zwyczajowo jest to sektor 6.
Jeśli dostępne jest wolne miejsce za zapasowym sektorem
rozruchowym, zapasowe informacje FAT32 są umieszczane
właśnie za nim, zwykle w sektorze 7. Sektor kopii musi
zawierać się w zakresie zarezerwowanych sektorów.
Wartość równa 0 wyłącza tworzenie kopii
zapasowej sektorów: rozruchowego i informacji FAT32.
- -c
- Sprawdza obecność błędnych
bloków na urządzeniu przed tworzeniem systemu
plików.
- -C
- Tworzy plik podany w linii poleceń jako
URZĄDZENIE i zapisuje w nim system plików do
utworzenia. Można tego użyć do utworzenia nowego
systemu plików w pliku zamiast w rzeczywistym urządzeniu i
do uniknięcia używania polecenia dd do utworzenia
pliku o wymaganym rozmiarze. Opcja ta wymaga podania parametru
LICZBA-BLOKÓW, ponieważ w przeciwnym wypadku nie
byłby znany rozmiar tworzonego systemu plików. Plik jest
tworzony jako plik z dziurami (sparse file) zawierający tylko
metadane (sektor rozruchowy, tablice FAT i katalog główny).
Porcje danych nie są zapisywane na dysk, ale mimo to plik
będzie miał poprawny rozmiar. Plik wynikowy może
być potem skopiowany na dyskietkę lub inne urządzenie
albo zamontowany poprzez urządzenie pętli zwrotnej.
-
-D NUMER-URZĄDZENIA
- Określa numer urządzenia BIOS do zapisania w
sektorze rozruchowym FAT. Dla dysków twardych i
nośników wymiennych zwykle jest to 0x80–0xFF (0x80
jest pierwszym dyskiem twardym C:, 0x81 jest drugim dyskiem twardym D:,
...), natomiast dla dyskietek lub partycji używanych do emulacji
dyskietek jest to 0x00–0x7F (0x00 jest pierwszą
stacją dyskietek A:, 0x01 jest drugą stacją dyskietek
B:).
-
-f LICZBA-TABLIC-FAT
- Określa liczbę tablic alokacji plików
(FAT) w systemie plików. Domyślną
wartością jest 2.
-
-F ROZMIAR-TABLICY-FAT
- Określa typ używanej tablicy alokacji
plików (12-, 16- lub 32-bitowa). Jeśli nie podano tej opcji,
to mkfs.fat automatycznie wybiera najlepszy rozmiar FAT dla danego
systemu plików.
-
-g
GŁOWICE/SEKTORY-NA-ŚCIEŻKĘ
- Określa liczbę GŁOWIC i
SEKTORÓW-NA-ŚCIEŻKĘ, które
opisują geometrię URZĄDZENIA. Obie
wartości są przechowywane w sektorze rozruchowym FAT. Liczba
SEKTORÓW-NA-ŚCIEŻKĘ służy
do wyrównania całkowitej liczby sektorów FAT.
Domyślnie, geometria dysków jest odczytywana z samego
URZĄDZENIA. Jeśli nie jest to dostępne,
używana jest translacja z wykorzystaniem logicznych bloków
adresowych ( LBA-Assist Translation) i tablicy translacji z II
części specyfikacji systemu plików kart SD ( SD
Card Part 2 File System Specification) w zależności od
całkowitej liczby sektorów.
-
-h LICZBA-UKRYTYCH-SEKTORÓW
- Określa liczbę tzw. ukrytych
sektorów, przechowywaną w sektorze rozruchowym FAT:
liczba ta reprezentuje początek sektora partycji
zawierającej system plików. Zwykle jest to
przesunięcie (w sektorach) w stosunku do początku dysku,
choć wobec woluminów logicznych MBR, będących
częścią partycji rozszerzonej typu 0x05 (partycja
rozszerzona nie LBA), nieco dziwaczna implementacja FAT w MS-DOS wymaga,
aby liczba ta była podana w odniesieniu do najbliższego
partycji rozszerzonego sektora rozruchowego (ang. Extended Boot Record).
Kod rozruchowy i inne oprogramowanie obsługujące woluminy
FAT, może również polegać na
poprawności wartości liczby ukrytych sektorów,
choć większość współczesnych
implementacji FAT zignoruje ją. Domyślnie, gdy
URZĄDZENIE jest blokowym urządzeniem partycji,
mkfs.fat użyje wartości będącej w
odniesieniu do początku dysku. W innym przypadku mkfs.fat
przyjmie wartość równą zero. Opcji tej
można użyć do przesłonięcia tego
zachowania.
-
-i IDENTYFIKATOR-WOLUMINU
- Ustawia identyfikator woluminu nowo utworzonego systemu
plików; IDENTYFIKATOR-WOLUMINU jest 32-bitową
liczbą szesnastkową (na przykład, 2e24ec82).
Domyślnie jest to liczba zależna od czasu utworzenia systemu
plików.
- -I
- Ignoruje i wyłącza różne
zabezpieczenia programu. Domyślnie mkfs.fat odmówi
utworzenia systemu plików na urządzeniu z partycjami lub
wirtualnym mapowaniem. mkfs.fat w takim przypadku wypisze
ostrzeżenie i odmówi współpracy. W przypadku
dysków magnetooptycznych (MO) jest inaczej - nie zawsze są
one partycjonowane, a system plików może pokrywać
cały dysk. Inne systemy operacyjne nazywają to formatem
superdyskietki. Opcja ta pozwoli programowi mkfs.fat
działać na takich dyskach.
-
-l NAZWA-PLIKU
- Odczytuje listę błędnych bloków
z podanego pliku o nazwie NAZWA-PLIKU.
-
-m PLIK-KOMUNIKATÓW
- Ustawia komunikat, jaki otrzymuje użytkownik podczas
próby rozruchu tego systemu plików bez poprawnie
zainstalowanego systemu operacyjnego. Komunikat nie może
przekraczać 418 bajtów po konwersji znaków
końca linii na kombinacje powrót karetki+koniec linii i
rozwinięciu znaków tabulacji. Jeżeli nazwą
pliku jest myślnik ("-"), to tekst jest pobierany ze
standardowego wejścia.
-
-M TYP-NOŚNIKA-FAT
- Określa typ nośnika do zapisania w sektorze
ładowania FAT. Wartością zazwyczaj jest 0xF8 dla
dysków twardych i 0xF0 lub wartość z
przedziału od 0xF9 do 0xFF dla dyskietek lub partycji
używanych do emulowania dyskietek.
-
--mbr[=y|yes|n|no|a|auto]
- Wypełnia (nieprawdziwą) tablicę MBR
wpisem jednej partycji dysku rozpoczynającej się od sektora
0 (obejmującą również sam MBR) i
wypełniającą całe urządzenie dyskowe.
Jest to potrzebne tylko w przypadku dysków niewymiennych
używanych w systemach Microsoft Windows i tylko przy formatowaniu
całego niespartycjonowanego dysku. Położenie tego
wpisu i tablicy partycji nakłada się na koniec pierwszego
sektora FAT (położenie kodu rozruchowego), przez co nie jest
używane dodatkowe miejsce. Domyślną
wartością jest tryb auto, w którym
mkfs.fat umieszcza tablicę MBR tylko dla dysków
niewymiennych, przy partycjonowaniu całego, niespartycjonowanego
dysku.
-
-n NAZWA-WOLUMINU
- Ustawia nazwę woluminu (etykietę) systemu
plików. Nazwa woluminu może mieć
długość do 11 znaków. Przy podaniu pustego
łańcucha, ciągu składającego się
wyłącznie ze spacji lub łańcucha "NO
NAME" jako NAZWY-WOLUMINU, efekt jest taki sam jakby nie
użyto opcji -n. Domyślnie nazwa nie jest
nadawana.
-
--codepage=STRONA
- Używa STRONY kodowej DOS przy etykiecie.
Domyślnie jest to strona kodowa 850.
-
-r WPISY-KATALOGU-GŁÓWNEGO
- Określa minimalną liczbę pozycji
dostępnych w głównym katalogu. Domyślnie jest
to 112 lub 224 dla dyskietek oraz 512 dla dysków twardych.
Proszę zauważyć, że jest to
wartość minimalna, która może być
zwiększona przez mkfs.fat ze względu na
wyrównanie struktur. Zobacz też: opcja -a
mkfs.fat.
-
-R
LICZBA-ZAREZEROWOWANYCH-SEKTORÓW
- Ustawia minimalną liczbę zarezerwowanych
sektorów. Format FAT32 wymaga co najmniej 2 zarezerwowanych
sektorów, domyślną wartością jest 32. W
przypadku innych systemów wartością
domyślną jest 1 (tylko sektor rozruchowy). Proszę
zauważyć, że jest to wartość minimalna,
która może być zwiększona przez
mkfs.fat ze względu na wyrównanie struktur. Zobacz
też: opcja -a mkfs.fat.
-
-s SEKTORÓW-NA-KLASTER
- Określa liczbę sektorów dysku
przypadających na jeden klaster. Musi być
potęgą 2, tj. 1, 2, 4, 8, ... 128.
-
-S ROZMIAR-SEKTORA-LOGICZNEGO
- Określa liczbę sektorów dysku
przypadających na jeden klaster. Musi być
potęgą 2 większą lub równą 512,
tj. 512, 1024, 2048, 4096, 8192, 16384 lub 32768. Wartości
większe niż 4096 nie są zgodne ze specyfikacją
systemu plików FAT i nie wszędzie muszą
działać.
- -v
- Wypisuje szczegółowe informacje.
-
--offset SEKTOR
- Zapisuje system plików do podanego sektora pliku
urządzenia. Opcja jest przydatna przy tworzeniu systemu
plików w obrazie spartycjonowanego dysku, bez konieczności
używania urządzenia pętli zwrotnej.
-
--variant TYP
- Tworzy system plików w wariancie TYP.
Dozwolone wartości to: standard i atari
(wielkość liter nie ma znaczenia). Różnice
pomiędzy tymi wariantami opisano w rozdziale OPIS.
- --help
- Wyświetla podsumowanie opcji i kończy
pracę.
- --invariant
- Używa stałych, do danych w innym wypadku
tworzonych losowo lub w zależności od czasu, takich jak
identyfikator woluminu i czas jego utworzenia. Opcja ta umożliwia
uzyskanie identycznych rezultatów przy wielokrotnym uruchomieniu
mkfs.fat na tym samym urządzeniu. Służy
głównie do testowania mkfs.fat.
mkfs.fat nie potrafi utworzyć rozruchowych systemów
plików. Z różnych powodów utworzenie takiego
systemu plików nie jest takie proste jak mogłoby się
wydawać i
mkfs.fat nie będzie tego wspierał ;)
fatlabel(8),
fsck.fat(8)
Strona internetowa projektu
dosfstools znajduje się w
serwisie
GitHub
dosfstools napisali:
Werner
Almesberger
Roman
Hodek i inni. Aktualni opiekunowie to:
Andreas Bombe i
Pali
Rohár
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Wojtek Kotwica <
[email protected]>, Robert Luberda
<
[email protected]> i Michał Kułach
<
[email protected]>
Niniejsze tłumaczenie jest wolną dokumentacją.
Bliższe informacje o warunkach licencji można uzyskać
zapoznając się z
GNU
General Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy
zgłaszać na adres listy dyskusyjnej
[email protected]