Wszystko czego próbujesz się nauczyć wymaga praktyki. Praca z dyskami twardymi w Linuksie nie jest wyjątkiem. Ćwiczenie na prawdziwym dysku, ryzykując uszkodzenie systemu plików, nie jest dobrym pomysłem, ale tworzenie maszyny wirtualnej do takich celów jest również zbyt niepraktyczne. Jakie jest więc rozwiązanie?
W systemie Linux wszystko jest traktowane jako plik, a dysk twardy jest reprezentowany jako plik. Stwarza to interesującą możliwość. Możemy użyć zwykłego pliku zamiast dysku twardego do naszych eksperymentów.
Stwórzmy witrynę testową z zespołem:
sudo dd if=/dev/zero of=/disk.img count=2000 bs=1M
Stworzyliśmy 2000-megabajtowy plik wypełniony zerami, z którym możemy bezpiecznie pracować. Uruchommy parted
, przekazując mu nasz plik zamiast urządzenia:
$ sudo parted /disk.img
Jeśli chcesz pracować z prawdziwym dyskiem, po prostu przekaż ścieżkę do jego pliku urządzenia do narzędzia:
$ sudo parted /dev/sda
Narzędzie uruchomi się w trybie interaktywnym i będzie można wykonać niezbędne polecenia. Teraz spróbujmy zobaczyć listę partycji na urządzeniu:
(parted) print
Jest pusta, ponieważ nie ma nawet tablicy partycji. Dopóki nie ma tablicy partycji, nie można wykonać partycjonowania dysku Linux, więc będziemy musieli ją utworzyć. Aby to zrobić, użyjemy polecenia mktable
:
(parted) mktable gpt
Mamy tablicę partycji typu gpt
, ale można wybrać jedną z tych: aix
, amiga
, bsd
, dvh
, gpt_sync_mbr
, gpt
, mac
, msdos
, pc98
, sun
, loop
Teraz utwórzmy nową partycję systemu plików ext2
o wielkości 100 megabajtów za pomocą polecenia mkpart
. Należy przekazać trzy parametry: typ partycji, system plików i współrzędne. Typ partycji może być następujący:
primary
logiczna
rozszerzony
(podstawowy, logiczny i rozszerzony).W gpt
można utworzyć dowolną liczbę partycji podstawowych i nie trzeba myśleć o ich typie. To wszystko zostało stworzone dla MBR, w tej tabeli istnieje ograniczenie liczby partycji podstawowych - tylko cztery.
Tworzenie partycji podstawowej:
(parted) mkpart primary ext2 0 400М
Ponieważ jest to pierwsza partycja, zaczynamy od zera i kończymy na żądanym rozmiarze - 400 megabajtów.
Spójrzmy jeszcze raz na listę partycji:
(parted) print
Utwórzmy jeszcze kilka partycji, na przykład dla katalogu głównego systemu i dla folderu domowego:
(parted) mkpart primary ext4 400 1000M
(parted) mkpart primary ext4 1000M -0M
Parametr -0
oznacza liczenie od końca partycji, więc całe dostępne miejsce dla trzeciej partycji zostanie zajęte. Zobaczmy, co otrzymaliśmy:
Praca z dyskami w Linuksie odbywa się według ich numerów. Zmniejszmy ostatnią partycję i utwórzmy kolejną po niej:
(parted) resizepart 3 1600M
Można określić żądany rozmiar w procentach:
(parted) resizepart 3 60%
A teraz tworzenie partycji podzielonej
na części
:
mkpart primary ext4 1600M -0M
Partycjonowanie dysku na partycje Linux jest zakończone. W tym artykule pominiemy pracę z systemami plików, ponieważ użyjemy do tego innych poleceń, które omówimy w przyszłym artykule.