Dlaczego musimy określić typ partycji w fdisk, a później ponownie w mkfs?


11

Jestem trochę zdezorientowany co do fdisk i mkfs .

A więc - oto typowe partycjonowanie i formatowanie dysku flash USB:

umount /dev/sdb
fdisk fdisk /dev/sdb

Command (m for help): d
Selected partition 1

Command (m for help): n
Command action
e   extended
p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-960, default 1): ↵
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-960, default 960): ↵
Using default value 960 

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 6
Changed system type of partition 1 to 6 (FAT16)

Command (m for help): a
Partition number (1-4): 1

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: If you have created or modified any DOS 6.x 
partitions, please see the fdisk manual page for additional
information.

mkfs -t vfat /dev/sdb1

Moje pytanie brzmi:

Dlaczego musimy nawet użyć opcji t , aby określić typ partycji podczas wykonywania kroku fdisk ? Jak to wpływa na wszystko? Czy tworzy jakiś znak na dysku USB, co oznacza, że ​​powinna istnieć tylko partycja vat? Czy jest to bezpieczne, aby pominąć t krok ogóle? AFAIK - partycjonowanie polega tylko na dzieleniu dysku na obszary - prawda?

Próbuję zrozumieć, dlaczego to działa tak, jak to działa :)

Odpowiedzi:


9

Ponieważ mkfs nie wie ani nie dba o tablice partycji. Możesz go używać na dowolnym urządzeniu blokowym, w tym na tych, które nie mają nic wspólnego z dyskiem twardym, a zatem i na partycjach. Kod typu partycji, który fdisk umieszcza w tabeli partycji msdos, jest jedynie wskazówką i jest prawie ignorowany przez systemy operacyjne inne niż Microsoft.


5

Typ partycji jest mniej konkretny niż typ systemu plików. Większość „rodzimych” systemów plików Linux używa partycji typu 83, na przykład: wszystkie ext*warianty, ReiserFS, XFS i inne.

Powinieneś spróbować zmienić na partedlub gParted. W przypadku niektórych typów systemów plików jest w stanie utworzyć partycję i stworzyć system plików w tym samym narzędziu. (Jednak w przypadku niektórych systemów plików nadal musisz to robić mkfsosobno).


3

Typ partycji jest przeznaczony dla urządzeń, które muszą wiedzieć, jaki typ systemu plików umieszczasz na tej partycji. Linux wydaje się być wystarczająco sprytny, aby po prostu zignorować ten typ i wie, jaki system plików jest bez względu na wszystko. Istnieją jednak urządzenia, które będą w stanie odczytać dysk tylko wtedy, gdy typ systemu plików odpowiada rzeczywistemu systemowi plików umieszczonemu na dysku.

mkfstworzy rzeczywisty system plików. Nie wie, na co nakładasz ten system plików, więc nie może zgadnąć. Musisz dokładnie powiedzieć, jaki system plików próbujesz utworzyć, aby wiedział, co robić.

Niedawno dowiedziałem się, dlaczego ma to znaczenie, jaki jest typ systemu plików. Skonfigurowałem pamięć USB do uruchamiania utworów w odtwarzaczu multimedialnym, jednak nie ustawiłem poprawnie typu systemu plików, mimo że rzeczywistym systemem plików był vfat. Odtwarzacz muzyki nie miał pojęcia, jak odczytać dysk, działał, gdy typ partycji został ustawiony poprawnie. Miałem również ten sam problem na komputerze Mac, nie można odczytać pamięci USB z niewłaściwym typem partycji, mimo że rzeczywisty system plików był w porządku.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.