fdisk și parted în Linux / Bash

Discuri și sistem util-linux / GNU parted

Afișează și modifică tabela de partiții a unui disc (MBR sau GPT) cu fdisk interactiv sau cu parted.

Sintaxă comandă
fdisk -l [dispozitiv]
fdisk dispozitiv
parted dispozitiv [comandă]

Ce face fdisk și parted

fdisk este utilitarul clasic pentru partiționare. Cu -l doar listează partițiile; rulat cu numele unui disc, deschide un meniu interactiv în care creezi (n), ștergi (d) sau schimbi tipul (t) partițiilor. Modificările rămân în memorie până apeși w (write); cu q ieși fără să scrii nimic.

parted face același lucru, dar acceptă și comenzi direct în linie (--script), ceea ce îl face potrivit pentru scripturi. Atenție: spre deosebire de fdisk, parted aplică fiecare comandă imediat, fără pas de confirmare.

Ambele lucrează cu tabele MBR (dos) și GPT. Pentru discuri noi, mai mari de 2 TiB sau pentru sisteme UEFI se folosește GPT. După partiționare, partiția trebuie formatată (de exemplu cu mkfs.ext4) și montată.

Opțiuni și argumente

Opțiune / Parametru Descriere
fdisk -l Listează discurile și partițiile (cu sudo vede toate discurile).
n, d, p, t, w, q Comenzi din meniul fdisk: partiție nouă, ștergere, afișare, tip, scriere pe disc, ieșire fără salvare.
parted DISC print Afișează tabela de partiții în unitățile lui parted (kB, MB, GB).
parted --script / -s Rulează comenzile fără întrebări, potrivit pentru scripturi.
mklabel gpt|msdos Creează o tabelă de partiții nouă (șterge referințele la partițiile vechi).
mkpart NUME TIP START END Creează o partiție; capetele pot fi date în MiB, GB sau procente (1MiB 100%).

Exemple

Exemplul 1: Listarea partițiilor unui disc

fdisk -l arată mărimea discului, tipul tabelei (gpt) și partițiile, cu sectorul de început și de sfârșit.

sudo fdisk -l /dev/sdb

Ieșire în terminal

Disk /dev/sdb: 29.3 GiB, 31457280000 bytes, 61440000 sectors
Disk model: Cruzer Blade
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 5C2A1E7B-3F4D-4A8B-9C1E-2D3F4A5B6C7D

Device     Start      End  Sectors  Size Type
/dev/sdb1   2048 61439966 61437919 29.3G Linux filesystem

Exemplul 2: Partiționarea unui disc nou cu parted, într-un singur pas

Creăm o tabelă GPT și o singură partiție pe tot discul, apoi o formatăm ext4 cu eticheta „backup”. Toate datele existente de pe /dev/sdb se pierd.

sudo parted --script /dev/sdb mklabel gpt mkpart backup ext4 1MiB 100%
sudo mkfs.ext4 -q -L backup /dev/sdb1
sudo parted /dev/sdb print

Ieșire în terminal

Model: SanDisk Cruzer Blade (scsi)
Disk /dev/sdb: 31.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name    Flags
 1      1049kB  31.5GB  31.5GB  ext4         backup

Greșeli frecvente

  • Rularea pe discul greșit: verifică de două ori numele cu lsblk înainte. Partiționarea discului de sistem în locul stick-ului este o greșeală frecventă și costisitoare.
  • Presupunerea că parted așteaptă confirmare ca fdisk: comenzile mklabel, rm sau mkpart din parted se aplică imediat.
  • Uitarea formatării: o partiție nou creată nu are sistem de fișiere și nu poate fi montată până nu rulezi mkfs.

Comenzi înrudite

  • lsblk: Afișează discurile și partițiile din sistem sub formă de arbore, cu mărime, tip și punct de montare.
  • blkid: Afișează UUID-ul, eticheta și tipul sistemului de fișiere pentru partițiile din sistem.
  • mount și umount: Atașează (montează) un sistem de fișiere într-un director și îl detașează în siguranță cu umount.
  • df: Raportează spațiul liber și ocupat pe toate sistemele de fișiere și partițiile montate pe disc.