Articole
    Home » Verificați atributele dispozitivului cu blkid și lsblk
Verificați atributele dispozitivului cu blkid și lsblk

Verificați atributele dispozitivului cu blkid și lsblk

Despre acest articol

Ai ajuns aici pentru că ai nevoie să afli rapid ce dispozitive de stocare ai pe server, cum sunt ele identificate, ce sisteme de fișiere folosesc și – cel mai important – cum se asigură că nu montezi din greșeală partiția de swap peste /home.
Acest articol e pentru oricine administrează servere (bare metal, VPS, cloud sau containere Docker) și vrea să devină mai rapid și mai sigur în diagnosticare și setup.
Vorbim azi despre două comenzi magice, blkid și lsblk – sculele care-ți spun, clar și rapid, cine e cine pe disc.

De ce să ne pese?

Oricine a făcut vreodată un mount greșit sau a nimerit cu mkfs.ext4 pe discul nepotrivit știe că nu-i de glumit cu identificarea device-urilor. În era cloud-ului și a storage-ului elastic, device-urile pot apărea/dispare peste noapte. Dacă nu știi să le identifici corect, riști downtime, pierderi de date sau, pur și simplu, multă bătaie de cap.

Cu blkid și lsblk poți vedea instant ce device ai, ce UUID are, ce etichetă, ce sistem de fișiere, și cum se leagă fizic între ele. Fără să deschizi serverul sau să ghicești după /dev/sdXY.

O problemă reală din viața adminului

Imaginează-ți: ai un VPS nou-nouț, ai de configurat rapid un RAID software sau vrei să adaugi un disc pentru backup. Te grăbești, ai 10 taburi deschise, și, dintr-un copy-paste neatent, formatezi /dev/sdb în loc de /dev/sdc. Boom, backup-ul de luni s-a dus pe apa sâmbetei.

Sau, și mai subtil: adaugi un disc nou, dar la reboot, device-urile se rearanjează (sdc devine sdb), iar sistemul încearcă să monteze partiția greșită. Totul din cauza identificării bazate doar pe nume.

Aici intervin blkid și lsblk. Cu ele, identifici fără dubiu fiecare partiție, după UUID sau LABEL. Zero confuzii, zero accidentări.

Cum funcționează blkid și lsblk?

Structură și algoritmi (pe scurt și fără abureală)

  • blkid: Scanează device-urile de bloc (discuri, stick-uri, volume LVM etc.) și citește direct de pe disc semnăturile sistemului de fișiere. Returnează UUID, LABEL, TYPE (ext4, xfs, swap etc.), PARTUUID, PARTLABEL.
  • lsblk: Afișează o imagine de ansamblu a dispozitivelor de bloc, sub formă de arbore (tree), arătând device-urile părinte-copil (discuri și partiții), dimensiuni, puncte de montare etc. Poate afișa și coloane customizabile.

Ambele unelte sunt foarte rapide și nu modifică nimic pe disc. Sunt incluse în majoritatea distribuțiilor Linux (parte din pachetul util-linux).

Setare rapidă & ușoară

  • Nu trebuie să instalezi nimic pe majoritatea serverelor moderne – sunt deja acolo.
  • Se rulează din shell, fără privilegii root pentru afișare basic (unele info avansate pot necesita root).
  • Combină-le cu grep, awk, jq pentru automatizări și scripturi.

Cazuri de utilizare & Beneficii

  • Identificarea sigură a partițiilor când montezi volume noi
  • Configurarea /etc/fstab cu UUID sau LABEL (nu cu /dev/sdXY)
  • Verificarea rapidă a tipului de sistem de fișiere
  • Detectarea discurilor lipsă sau a schimbărilor de topologie după reboot
  • Automatizarea backup-urilor sau scripturilor de deployment
  • Diagnosticarea problemelor de storage înainte să devină critice

Arbore de cazuri de utilizare

  • Setup rapid server nou
    • → Vrei să știi ce disc e root, swap, data? lsblk și blkid te ajută instant.
  • Migrare sau upgrade storage
    • → Identifici cu exactitate partițiile, eviți suprascrieri.
  • Automatizări DevOps
    • → Scripturi care montează volume după UUID, nu după /dev/sdX. Mai robust, mai sigur.
  • Depanare rapidă
    • → Ce device lipsă? Ce sistem de fișiere stricat? Vezi imediat cu lsblk -f sau blkid.

Ghid pas cu pas: Cum folosești blkid și lsblk

1. Vrei să vezi toate device-urile de bloc?

lsblk

Obții o listă tip arbore cu toate discurile și partițiile.

2. Vrei info detaliat (inclusiv UUID, LABEL, tip fișier)?

lsblk -f

Coloane noi: NAME, FSTYPE, LABEL, UUID, MOUNTPOINT.

3. Vrei doar identificatorii unici (UUID, LABEL) ai partițiilor?

blkid

Vezi rapid ce UUID și LABEL are fiecare partiție.

4. Vrei să găsești doar partițiile de tip ext4?

blkid | grep ext4

5. Vrei să montezi o partiție folosind UUID (recomandat)?

Adaugă în /etc/fstab o linie de genul:

UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /data ext4 defaults 0 2

Obții UUID-ul cu blkid sau lsblk -f.

6. Vrei să vezi device-urile care NU sunt montate?

lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT | grep -v '/'

7. Vrei să vezi doar device-urile fizice, nu și loop-uri sau RAM?

lsblk -d -o NAME,SIZE,MODEL

8. Vrei să vezi device-urile ca JSON pentru scripturi?

lsblk -J

9. Vrei să vezi și partițiile LVM?

lsblk -f

Arată și volumele logice, nu doar partițiile fizice.

Mini Glosar cu definiții real-talk

  • Device de bloc: orice chestie care stochează date în blocuri, nu în caractere (discuri, stick-uri, SSD-uri, volume virtuale etc.)
  • UUID: Un identificator unic, generat automat pentru fiecare sistem de fișiere – e ca un CNP pentru partiție.
  • LABEL: Numele prietenos pe care îl poți da tu partiției (ex: BACKUP, DATA, ROOT).
  • FSTYPE: Tipul sistemului de fișiere (ext4, xfs, swap, ntfs, etc.).
  • MOUNTPOINT: Unde e montată partiția în arborele de fișiere.

Exemple și cazuri practice

Metaforă comică: “Cine-i cine la petrecerea serverului?”

Personaj Cum se prezintă la party Ce zic blkid & lsblk Recomandare
Root partition (sda1) Salut, eu sunt /dev/sda1, stau la / UUID=abc123, LABEL=ROOT, FSTYPE=ext4 Montează după UUID, nu după nume!
Swap Salut, eu sunt swap-ul, nu mă monta la /data! UUID=def456, TYPE=swap Verifică TYPE înainte de mount!
Backup drive (sdb1) Salut, am etichetă BACKUP, sunt sdb1 LABEL=BACKUP, FSTYPE=ext4 Montează după LABEL, dacă vrei să fie clar
USB Stick (sdc1) Salut, m-am conectat azi, sunt nou! LABEL=USB, FSTYPE=vfat Nu pune backup pe stick, dacă nu vrei să dispară!

Exemplu pozitiv

  • Adminul folosește lsblk -f înainte să adauge o linie în fstab. Montează după UUID. După reboot totul merge perfect. Zero panică.

Exemplu negativ

  • Adminul se grăbește, montează după /dev/sdb1. După un update de kernel și un reboot, /dev/sdb1 devine backup-ul și serverul pornește cu partiția greșită. Ups.

Mituri, greșeli și alte unelte

Greșeli tipice de evitat

  • “/dev/sda1 e mereu root.” – Fals! La orice schimbare de hardware/VM/ordine de boot, device-urile se pot rearanja.
  • “Etichetele nu contează.” – Ba da, LABEL te scapă de multe confuzii, mai ales la backup-uri automate.
  • “Pot să formatez fără grijă, știu ce fac.” – Famous last words. Folosește lsblk -f să te asiguri.

Mituri despre blkid și lsblk

  • “blkid modifică ceva pe disc.” – Nu, doar citește metadata.
  • “lsblk arată tot ce există.” – Nu, unele device-uri virtuale sau containerizate pot să nu apară.

Alte unelte similare

  • df – Arată doar spațiul ocupat, nu și UUID/LABEL.
  • fdisk -l – Pentru info la nivel de partiții, dar output-ul e mai greu de folosit în scripturi.
  • parted -l – Mai avansat, dar nu atât de rapid pentru overview.

Când să folosești blkid sau lsblk? (Flowchart)

Vrei să identifici partiția pentru montare?

→ Da 👇

  • Ai nevoie de info rapid, overview? lsblk -f
  • Vrei doar UUID/LABEL/TYPE? blkid

Vrei să vezi spațiul ocupat?

→ Nu cu blkid/lsblk, folosește df

Vrei să vezi structura de partiționare?

lsblk sau fdisk -l

Vrei să schimbi partiții?

parted sau gparted

Fapte interesante & utilizări neașteptate

  • Poți folosi lsblk -J pentru a integra statusul storage-ului direct în dashboardul tău de monitorizare (ex: cu Node Exporter sau custom scripturi Python/Bash).
  • Cu blkid poți verifica rapid dacă un stick USB are un sistem de fișiere corupt (dacă nu apare UUID sau FSTYPE, e suspect).
  • În containere Docker, lsblk îți arată exact volumele montate din host, util pentru debugging.
  • Poți genera rapid rapoarte cu toate device-urile montate/ne-montate.

Scripturi și automatizări cu blkid și lsblk

Exemplu de script Bash: Detectare automată și montare partiție după LABEL


#!/bin/bash
LABEL="DATA"
MOUNTPOINT="/mnt/data"
DEV=$(blkid -L "$LABEL")
if [ -z "$DEV" ]; then
  echo "Partiția cu LABEL=$LABEL nu există!"
  exit 1
fi
mount | grep -q "$DEV" && echo "Deja montat!" && exit 0
mkdir -p "$MOUNTPOINT"
mount "$DEV" "$MOUNTPOINT"
echo "Montat $DEV la $MOUNTPOINT"

Exemplu de monitorizare spațiu liber pe toate volumele ext4:


for dev in $(lsblk -ln -o NAME,FSTYPE | awk '$2=="ext4"{print "/dev/"$1}'); do
  echo "Spațiu pe $dev:"
  df -h | grep $dev
done

O scurtă poveste din viața unui admin

Era sâmbătă seara și, ca orice admin responsabil, încercam să migrez un server de backup pe un VPS nou. Totul părea ok, până când, la reboot, partiția de backup nu mai apărea montată. Panică! Am deschis rapid lsblk -f și am observat că device-urile se rearanjaseră. Dacă aș fi folosit UUID în fstab, nu aș fi pierdut o oră să caut ce nu merge. De atunci, “lsblk -f” e primul lucru pe care-l tastez după orice upgrade hardware sau schimbare de discuri.

Concluzii și recomandări

  • Folosește lsblk și blkid la orice setup nou, migrare sau troubleshooting.
  • Montează volumele după UUID sau LABEL – e mai sigur, mai robust, mai future-proof.
  • Integrează-le în scripturile tale de automatizare pentru setup rapid și fără stres.
  • Nu te baza niciodată pe ordinea device-urilor /dev/sdX – se poate schimba oricând!
  • Combină-le cu alte unelte (df, parted, fdisk) pentru troubleshooting complet.
  • Dacă vrei să te joci cu servere, VPS-uri sau dedicate, vezi aici: VPS sau server dedicat.

În concluzie, blkid și lsblk sunt sculele de buzunar ale oricărui admin, devops sau coder care vrea să facă setup rapid, sigur și fără surprize. Fie că ești pe cloud, VPS, bare metal sau Docker, folosește-le inteligent și vei economisi timp, nervi și… backup-uri pierdute!

Leave a reply

Your email address will not be published. Required fields are marked