Jak korzystać z polecenia mkfs w systemie Linux

Przed użyciem dowolnego urządzenia do przechowywania danych podłączonego do komputera z systemem Linux należy utworzyć system plików. Dowiedz się, jak używać mkfs i innych narzędzi, aby to zrobić dla wszystkich rodzajów systemów plików. Pokażemy Ci, jak to zrobić.

mkfs tworzy systemy plików

Polecenie mkfs tworzy systemy plików. W innych systemach operacyjnych tworzenie systemu plików nazywa się formatowanie. Niezależnie od nazwy, jest to proces, który przygotowuje partycję do przechowywania danych. Partycja potrzebuje sposobu na przechowywanie plików, tak. Potrzebuje jednak również mechanizmu do przechowywania nazw i lokalizacji tych plików wraz z ich metadanymi, takimi jak sygnatura czasowa utworzenia pliku, sygnatura czasowa modyfikacji pliku, rozmiar pliku i tak dalej. Gdy mkfs zbuduje niezbędną strukturę do obsługi i przechowywania metadanych plików, możesz rozpocząć dodawanie plików do partycji.

Składnia jest bardzo prosta. Po prostu powiedz mkfs partycję urządzenia, na której chcesz utworzyć system plików i jakiego typu system plików chcesz. To na pierwszy rzut oka. Za kulisami jest trochę inaczej. Od jakiegoś czasu w większości dystrybucji Linuksa mkfs jest plikiem obwoluta dla mke2fs. Polecenie mkfs wywołuje polecenie mke2fs i przekazuje mu określone opcje. Biedny stary mke2fs wykonuje całą pracę ale nie dostaje nic z chwały.

Zaktualizowano składnię mkfs, a stary format jest przestarzały. Obie formy będą działać, ale w tym artykule użyjemy stylu nowoczesnego.

Wybór systemów plików

Współczesnym sposobem używania mkfs jest wpisanie „mkfs”. a następnie nazwę systemu plików, który chcesz utworzyć.

Aby zobaczyć systemy plików, które mkfs może utworzyć, wpisz „mkfs”, a następnie dwukrotnie naciśnij klawisz Tab. Po „mkfs” nie ma spacji, po prostu dwukrotnie naciśnij klawisz Tab.

Lista obsługiwanych systemów plików w oknie terminala

Lista dostępnych systemów plików jest wyświetlana w oknie terminala. Zrzut ekranu pochodzi z Ubuntu 18.04 LTS. Inne dystrybucje mogą oferować więcej lub mniej opcji. Omówimy je i krótko opiszemy. Po krótkim słowie o księgowaniu.

Kronikowanie to ważna koncepcja w systemach plików. Systemy plików rejestrują oczekujące zapisy w kronice. W miarę zapisywania każdego pliku dziennik jest aktualizowany, a zapisy oczekujące na zapis są aktualizowane. Pozwala to systemowi plików na naprawę uszkodzonych, częściowo zapisanych plików, które wystąpiły w wyniku katastrofalnego zdarzenia, takiego jak awaria zasilania. Niektóre starsze systemy plików nie obsługują kronikowania. Ci, którzy tego nie robią, zapisują na dysku rzadziej, ponieważ nie muszą aktualizować dziennika. Mogą działać szybciej, ale są bardziej podatne na uszkodzenia z powodu przerwanych zapisów plików.

Ext2: Pierwszym systemem plików dla Linuksa był system plików MINIX. Później został zastąpiony pierwszym systemem plików, jaki kiedykolwiek został napisany specjalnie dla systemu Linux, którym był Wew. Ext2 był Następca Ext. Ext2 nie jest systemem plików z księgowaniem.
Ext3: To był plik następca Ext2i można go traktować jako Ext2 z kronikowaniem, które chroni system plików przed uszkodzeniem danych spowodowanym awariami i nagłą utratą zasilania.
Ext4: Ext4 to standardowy system plików dla majowych dystrybucji Linuksa. Jest to solidny, wypróbowany i zaufany system plików. Ma takie cechy zmniejszyć fragmentację plików i może być używany z większymi dyskami, partycjami i plikami niż Ext3.
BFS: To jest Rozruchowy system plików, który jest przeznaczony do jednego zadania i tylko jednego: do obsługi plików na partycji rozruchowej. Rzadko zdarza się, że ręcznie tworzysz system plików rozruchowych. Twój proces instalacji Linuksa zrobi to za Ciebie.
FAT: The Tabela alokacji plików system plików został zaprojektowany dla dyskietek przez konsorcjum wagi ciężkiej z branży komputerowej. Został wprowadzony w 1977 roku. Jedynym powodem, dla którego korzystasz z tego systemu plików bez księgowania, jest zgodność z systemami operacyjnymi innymi niż Linux.
NTFS: plik System plików nowej technologii to system plików dziennika Microsoft wprowadzony w systemie Windows NT. Był następcą FAT. Jedynym powodem, dla którego korzystasz z tego systemu plików, jest zgodność z systemami operacyjnymi innymi niż Linux.
MINIX: Pierwotnie stworzony przez Andrew S. Tanenbaum jako pomoc edukacyjna, MINIX jest systemem operacyjnym „mini-Unix”. Obecnie ma na celu zapewnienie samonaprawiającego się i odpornego na błędy systemu operacyjnego. System plików MINIX został zaprojektowany jako plik uproszczona wersja systemu plików Unix. Być może, jeśli tworzysz między programami na komputerze z systemem Linux i celujesz w platformę MINIX, możesz użyć tego systemu plików. A może potrzebujesz kompatybilności z komputerem MINIX z innych powodów. Przypadki użycia tego systemu plików na komputerze z systemem Linux nie rzucają się w oczy, ale są dostępne.
VFAT: Tabela alokacji plików wirtualnych, został wprowadzony w systemie Windows 95 i usunął limit ośmiu znaków w nazwach plików. Możliwe stały się nazwy plików zawierające do 255 znaków. Jedynym powodem, dla którego korzystasz z tego systemu plików, jest zgodność z systemami operacyjnymi innymi niż Linux.
CRAMFS: The Skompresowany system plików ROM to system plików tylko do odczytu przeznaczony do systemów wbudowanych i specjalistycznych zastosowań tylko do odczytu, na przykład w procesach rozruchu komputerów z systemem Linux. Zwykle najpierw ładowany jest mały, przejściowy system plików, aby można było uruchomić procesy ładowania początkowego, aby przygotować się do zamontowania „prawdziwego” systemu rozruchowego.
MSDOS: system plików System operacyjny Microsoft Disk. Wydany w 1981 roku, jest to podstawowy system plików, który jest tak prosty, jak to tylko możliwe. Pierwsza wersja nie miała nawet katalogów. Zajmuje ważne miejsce w historii komputerów, ale poza kompatybilnością ze starszymi systemami nie ma powodu, aby go dziś używać.

Bezpieczny sposób na eksperymentowanie z systemami plików

Utworzenie systemu plików na partycji niszczy wszelkie dane, które mogą już znajdować się na tej partycji. Używanie zapasowego dysku twardego – lub nawet zapasowego komputera – to doskonały sposób na eksperymentowanie z tworzeniem i używaniem różnych systemów plików. Ale oczywiście wiele osób nie ma zapasowego sprzętu czekającego na eksperymenty.

Możemy jednak stworzyć plik obrazu i stworzyć w nim systemy plików. Po zamontowaniu możemy go używać tak, jakby była zwykłą partycją. Możemy eksplorować i eksperymentować z systemami plików bez potrzeby posiadania zapasowego sprzętu. Użyjemy polecenia dd do utwórz nasz plik obrazu.

Plik obrazu jest tworzony poprzez pobranie danych źródłowych i umieszczenie ich w obrazie. Musimy powiedzieć dd, skąd ma pobrać dane źródłowe. Użyjemy opcji if (plik wejściowy), aby nakazać dd użycie / dev / zero jako źródło danych wejściowych. To będzie strumień zer.

Opcja of (plik wyjściowy) pozwala nam podać nazwę pliku obrazu. Nazwiemy to „newsblog.pl.img”.

Rozmiar pliku obrazu zależy od rozmiaru i liczby bloków, które do niego dodamy. Używamy opcji bs (rozmiar bloku), aby zażądać rozmiaru bloku 1 MB i opcji zliczania, aby zażądać 250 bloków. To da nam system plików 250 MB. Kiedy wydajesz to polecenie, dostosuj liczbę bloków do swoich potrzeb i wolnego miejsca na komputerze z systemem Linux.

dd if=/dev/zero of=~/newsblog.pl.img bs=1M count=250

dd if = / dev / zero of = ~ / howtogeek.img bs = 1 mln liczba = 250

Plik jest tworzony dla nas, a dd informuje, że zgodnie z żądaniem utworzono dla nas 250 bloków.

Dane wyjściowe z polecenia dd w oknie terminala

Możemy spojrzeć na nasz plik obrazu za pomocą ls:

ls -hl

ls -hl w oknie terminala

Zgodnie z oczekiwaniami ma 250 MB, co jest zachęcające.

Tworzenie systemu plików

Wybierzmy system plików do użycia. Cofniemy się w czasie i użyjemy Ext2, który jest najwcześniejszą wersją Ext, jaką może stworzyć ta implementacja mkfs. Jest to system plików bez księgowania, więc nie przechowuj w nim niczego cennego bez tworzenia kopii zapasowych w innym miejscu. Używamy wariantu mkfs.ext2 polecenia mkfs i mówimy mu, aby używał naszego pliku obrazu jako celu.

mkfs.ext2 ~/newsblog.pl.img

mkfs.ext2 ~ / howtogeek.img w oknie terminala

System plików jest tworzony i wyświetlane są niektóre szczegóły systemu plików.

Dane wyjściowe polecenia mkfs.ext2 w oknie terminala

Jak widać z podświetlonego tekstu, pojawia się mke2fs.

Teraz mamy kontener dla systemu plików – plik obrazu – który w tym scenariuszu zastępuje dysk twardy. Wewnątrz tego kontenera stworzyliśmy system plików. Teraz musimy zamontować system plików, abyśmy mogli go używać.

To jest tymczasowa konfiguracja, więc utworzymy plik punkt montowania w / mnt o nazwie „maniakiem”. Usuniemy go, gdy skończymy.

sudo mkdir /mnt/geek

mkfs.ext2 ~ / howtogeek.img w oknie terminala

Teraz możemy zamontować nasz plik obrazu.

sudo mount ~/newsblog.pl.img /mnt/geek

mkfs.ext2 ~ / howtogeek.img w oknie terminala

Musimy zmienić własność pliku punktu montowania, abyśmy mieli do niego dostęp do odczytu i zapisu.

sudo chown dave:users /mnt/geek/

sudo chown dave: users / mnt / geek / w oknie terminala

A teraz powinniśmy móc korzystać z naszego nowego systemu plików. Przejdźmy do systemu plików i skopiujmy do niego kilka plików.

cd /mnt/geek
cp ~/Documents/Code/*.? .

cp ~ / Documents / Code / *.?  .  w oknie terminala

Spowoduje to skopiowanie wszystkich plików z pojedynczą literą rozszerzenia z katalogu ~ / Documents / Code do naszego nowego systemu plików. Sprawdźmy, czy zostały skopiowane.

ls

Znajduje się w oknie terminala

Pliki zostały skopiowane, więc nasz system plików został utworzony, zamontowany i używany. A przynajmniej tak nam się wydaje. Sprawdźmy jeszcze raz. Z naszego katalogu domowego odmontujemy system plików. Zauważ, że jest tylko jedno „n” w umount.

sudo umount /mnt/geek

sudo umount / mnt / geek w oknie terminala

Teraz, jeśli wrócimy do / mnt / geek i sprawdzimy pliki, nie powinniśmy ich znaleźć, ponieważ znajdują się one w naszym pliku obrazu, a to zostało odmontowane.

cd /mnt/geek
ls

cd / mnt / geek w oknie terminala

Dalsza eksploracja

Teraz mamy już opracowany proces, wypróbowanie innego systemu plików powinno być łatwe. Tym razem użyjemy systemu plików MINIX. W naszym katalogu domowym możemy stworzyć nowy system plików wewnątrz naszego istniejącego pliku obrazu.

Bądź ostrożny! Jeśli w systemie plików wewnątrz pliku obrazu znajdują się jakieś ważne pliki, zamontuj plik obrazu i pobierz je przed utworzeniem nowego systemu plików.

mkfs.minix ~/newsblog.pl.image

mkfs.minix ~ / howtogeek.image w oknie terminala

Bez żadnej wskazówki, by pytać „czy jesteś pewien”, nowy system plików jest tworzony na starym. Możemy zamontować nasz plik obrazu za pomocą dokładnie tego samego polecenia co poprzednio:

sudo mount ~/newsblog.pl.img /mnt/geek

sudo mount ~ / howtogeek.img / mnt / geek w oknie terminala

Przejdźmy do nowego systemu plików w / mnt / geek i zobaczmy, czy możemy utworzyć plik.

touch geek.txt

dotknij geek.txt w oknie terminala

ls -ahl geek.txt

ls -ahl geek.txt w oknie terminala

I tak prosto i szybko stworzyliśmy nowy system plików, zamontowaliśmy go i możemy z niego korzystać.

Usuwanie punktu montowania

Kiedy skończysz, możemy usunąć punkt montowania „geek”. Aby to zrobić, użyjemy rmdir:

cd /mnt
sudo rmdir geek

sudo rmdir geek w oknie terminala

Żonglerka Ogniem

W Linuksie, jak w przypadku większości rzeczy, uczysz się poprzez działanie. Problem z niektórymi poleceniami polega na tym, że są one potencjalnie destrukcyjne. Dylemat polega na tym, jak ćwiczyć korzystanie z nich bez narażania systemu lub danych?

Masz teraz prostą metodę tworzenia i testowania systemów plików za pomocą mkfs, która pozostawia komputer nietknięty.