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ę formatowaniem. Niezależnie od nazwy, jest to proces, który przygotowuje partycję do przechowywania danych. Partycja potrzebuje sposobu na przechowywanie plików, ale także 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, jaką partycję urządzenia chcesz użyć do utworzenia systemu plików oraz jaki typ systemu 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 obwolutą 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 nowoczesnego stylu.
Wybór systemów plików
Współczesnym sposobem używania mkfs jest wpisanie „mkfs”, a następnie nazwy 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 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ł Ext. Ext2 był następcą Ext. Ext2 nie jest systemem plików z księgowaniem.
Ext3: To był następca Ext2 i 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 większości dystrybucji Linuksa. Jest to solidny, wypróbowany i zaufany system plików. Ma takie cechy jak zmniejszenie fragmentacji 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: 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: Tabela alokacji plików została zaprojektowana dla dyskietek przez konsorcjum wagi ciężkiej z branży komputerowej. Została wprowadzona 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: 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 uproszczona wersja systemu plików Unix. Być może, jeśli tworzysz programy na komputerze z systemem Linux i celujesz w platformę MINIX, możesz użyć tego systemu plików.
VFAT: Tabela alokacji plików wirtualnych została wprowadzona w systemie Windows 95 i usunęła 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: 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.
MSDOS: System operacyjny Microsoft Disk wydany w 1981 roku jest podstawowym systemem 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 utworzyć 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 utworzenia naszego pliku 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 count, 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
Plik jest tworzony dla nas, a dd informuje, że zgodnie z żądaniem utworzono 250 bloków.
Możemy spojrzeć na nasz plik obrazu za pomocą ls:
ls -hl
Zgodnie z oczekiwaniami plik 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
System plików jest tworzony i wyświetlane są niektóre szczegóły systemu plików.
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 „geek”. Usuniemy go, gdy skończymy.
sudo mkdir /mnt/geek
Teraz możemy zamontować nasz plik obrazu.
sudo mount ~/newsblog.pl.img /mnt/geek
Musimy zmienić własność pliku punktu montowania, abyśmy mieli do niego dostęp do odczytu i zapisu.
sudo chown dave:users /mnt/geek/
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/*.? .
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
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
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
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.img
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
Przejdźmy do nowego systemu plików w /mnt/geek i zobaczmy, czy możemy utworzyć plik.
touch geek.txt
ls -ahl geek.txt
W ten sposób 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
Ż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.
newsblog.pl