Cum să enumerați dispozitivele computerului dvs. de la terminalul Linux

Aflați exact ce dispozitive sunt în interiorul computerului dvs. Linux sau conectate la acesta. Vom acoperi 12 comenzi pentru listarea dispozitivelor dvs. conectate.

De ce 12 comenzi?

Oricât de multe modalități există de a jupui o pisică, aș fi dispus să pariez că există mai multe moduri de a enumera dispozitivele care sunt conectate la sau găzduite în interiorul computerului tău Linux. Vă vom arăta 12 dintre ele. Și asta nu sunt toate!

În mod inevitabil, există o mulțime de suprapuneri în informațiile pe care le puteți obține din aceste comenzi, așa că de ce să vă deranjați să descrieți atât de multe dintre ele?

Ei bine, pentru un singur lucru, variațiile de conținut și detaliu le fac suficient de diferite încât unii oameni vor prefera o metodă în detrimentul alteia. Formatul de ieșire al unei comenzi se poate preta deosebit de bine unui anumit caz de utilizare. Formatul unei alte comenzi ar putea fi ideal pentru a fi transmis prin grep sau altă metodă de procesare ulterioară.

În primul rând, totuși, este de a face articolul cât mai general posibil. În loc să decidem ce comenzi vor fi de interes sau de folosire pentru cititorii noștri, preferăm să oferim un eșantion amplu al comenzilor disponibile și să îi punem pe cititorii noștri să aleagă pe care le vor folosi și pe care le vor lăsa neatinse.

Este necesară o anumită instalare

Majoritatea acestor comenzi sunt incluse implicit în distribuția dvs. Linux. Ubuntu, Fedora și Manjaro au fost folosite ca un eșantion reprezentativ de distribuții din principalele ramuri ale familiilor Debian, Red Hat și Arch.

Toate cele trei distribuții sunt necesare pentru a instala procinfo, care oferă comanda lsdev. Comanda lsscsi trebuia, de asemenea, instalată pe toate trei.

Pentru a instala lsdev și lsscsi, utilizați aceste comenzi.

Ubuntu:

sudo apt-get install procinf
sudo apt-get install lsscsi

Fedora:

sudo dnf install procinfo
sudo dnf install lsscsi

Manjaro

sudo pacman -Syu procinfo
sudo pacman -Syu lsscsi

În mod surprinzător, Manjaro – faimos pentru că este un tip de distribuție simplu – a fost distribuția care avea preinstalate majoritatea comenzilor pe care le vom analiza.

Ubuntu și Fedora au avut nevoie de instalarea hwinfo, iar Fedora a necesitat și instalarea lshw și hdparm.

Ubuntu:

sudo apt-get install hwinfo

Fedora:

sudo dnf install hwinfo
sudo dnf install lshw
sudo dnf install hdparm

1. Comanda muntelui

Comanda mount este folosită pentru montați sisteme de fișiere.

Dar emiterea comenzii fără parametri face ca aceasta să listeze toate sistemele de fișiere montate, precum și dispozitivele pe care se află. Deci, putem folosi acest lucru ca mijloc de a descoperi acele dispozitive.

mount

Ieșirea de la montare poate fi mai lungă decât vă așteptați, mai ales dacă ați folosit metoda snap pentru a instala software. De fiecare dată când utilizați snap, obțineți un alt pseudo-sistem de fișiere și acestea sunt listate de mount . Desigur, acestea nu au dispozitive fizice asociate cu ele, așa că doar ascund imaginea reală.

  Cele mai bune 10 firewall-uri pentru Linux pentru o protecție eficientă a sistemului [2023]

Dacă observați un sistem de fișiere real în listă pe un hard disk, îl putem izola cu grep.

Hard disk-urile sunt identificate după nume, de obicei numite „sd” urmat de o literă care începe cu „a” pentru prima unitate, „b” pentru a doua unitate și așa una. Partițiile sunt identificate prin adăugarea unui 1 pentru prima partiție și 2 pentru a doua partiție și așa mai departe.

Deci primul hard disk ar fi sda, iar prima partiție de pe acea unitate ar fi numită sda1. Hard disk-urile sunt interfațate prin fișiere speciale de dispozitiv (numite fișiere bloc) în /dev și apoi sunt montate undeva în arborele sistemului de fișiere.

Această comandă a folosit grep pentru a filtra detaliile oricărei unități care începe cu „sd”.

mount | grep /dev/sd

Ieșirea conține un singur hard disk din mașină care a fost folosit pentru a cerceta acest articol.

Răspunsul de la mount ne spune că unitatea /dev/sda este montată la / (rădăcina arborelui sistemului de fișiere) și are un sistem de fișiere ext4. „rw” indică că a fost montat în modul citire-scriere

Relatime este schema utilizată de rutinele de actualizare a marcajului de timp al fișierului. Timpul de acces nu este scris pe disc decât dacă timpul modificat (mtime) sau timpul modificării (ctime) a unui fișier este mai recentă decât ultima oră de acces, sau timpul de acces (atime) este mai vechi decât un prag definit de sistem. . Acest lucru reduce foarte mult numărul de actualizări de disc care trebuie să aibă loc pentru fișierele accesate frecvent.

„Erorile=remount-ro” indică faptul că, dacă există erori suficient de grave, sistemul de fișiere va fi remontat în modul doar citire.

Pentru a putea derula ieșirea de la mount și pentru a identifica mai ușor sistemele de fișiere care sunt montate pe dispozitive, direcționați ieșirea de la mount prin less .

mount | less

Derulați prin rezultat până când vedeți sisteme de fișiere care sunt conectate la fișierele speciale /dev.

2. Comanda lsblk

Comanda lsblk listează dispozitivele blocate, punctul lor de montare și alte informații. Tastați lsblk la o linie de comandă:

lsblk

Ieșirea arată:

Nume: numele dispozitivului de blocare
Maj:Min: Numărul major arată tipul dispozitivului. Numărul minim este numărul dispozitivului curent din lista de dispozitive de acest tip. 7:4, de exemplu, înseamnă bucla dispozitiv numărul 4.
RM: Dacă dispozitivul este detașabil sau nu. 0 înseamnă nu, 1 înseamnă da.
Dimensiunea este capacitatea dispozitivului.
RM: Indiferent dacă dispozitivul este doar pentru citire sau nu. 0 înseamnă nu, 1 înseamnă da.
Tip: tipul dispozitivului, de exemplu, buclă, dir (director), disc, rom (CD ROM) și așa mai departe.
Mountpoint: Unde este montat sistemul de fișiere al dispozitivului.

  3 moduri de a securiza un server SSH pe Linux

Pentru a dezordine ieșirea și a elimina dispozitivele bucle, putem folosi opțiunea -e (exclude) și oferim numărul tipului de dispozitive pe care dorim să le ignorăm.

Această comandă va face ca lsblk să ignore dispozitivele buclă (7) și camera CD (11).

lsblk -e 7,11

Rezultatele conțin acum doar hard disk-ul sda.

3. Comanda df

Comanda df raportează asupra capacităților de unitate și spatiu folosit si liber.

Tastați df pe linia de comandă și apăsați Enter.

df

Tabelul de ieșire arată:

Sistem de fișiere: numele acestui sistem de fișiere.
1K-Blocks: numărul de blocuri 1K disponibile pe acest sistem de fișiere.
Folosit: numărul de blocuri de 1K care au fost utilizate pe acest sistem de fișiere.
Disponibil: numărul de blocuri de 1K care sunt neutilizate pe acest sistem de fișiere.
Use%: cantitatea de spațiu utilizată în acest sistem de fișiere, dată ca procent.
Fișier: Numele sistemului de fișiere, dacă este specificat pe linia de comandă.
Montat pe: punctul de montare al sistemului de fișiere.

Pentru a elimina intrările nedorite din rezultat, utilizați opțiunea -x (exclude). Această comandă va împiedica listarea intrărilor dispozitivului în buclă.

df -x squashfs

Ieșirea compactă este mult mai ușor de analizat pentru informațiile importante.

4. Comanda fdisk

Comanda fdisk este un instrument conceput pentru a manipula tabelul de partiții ale discului, dar poate fi folosit vizualizați informații de asemenea. Putem folosi acest lucru în avantajul nostru atunci când investigăm dispozitivele dintr-un computer.

Vom folosi opțiunea -l (listă) pentru a lista tabelele de partiții. Deoarece ieșirea poate fi foarte lungă, vom canaliza ieșirea de la fdisk prin mai puțin. Deoarece fdisk are potențialul de a modifica tabelele de partiții ale discului, trebuie să folosim sudo.

sudo fdisk -l

Derulând prin mai puțin, veți putea identifica dispozitivele hardware. Aici este intrarea pentru hard disk sda. Acesta este un hard disk fizic de 10 GB.

Acum că știm identitatea unuia dintre dispozitivele hardware, putem cere fdisk să raporteze numai despre acel element.

sudo fdisk -l /dev/sda

Obținem o ieșire de lungime considerabil redusă.

5. Fișierele /proc

Pseudo-fișierele din /proc pot fi vizualizate pentru a obține unele informații de sistem. Fișierul la care ne vom uita este /proc/mounts, care ne va oferi câteva informații referitoare la sistemele de fișiere montate. Nu vom folosi nimic mai mare decât pisica pentru a vizualiza fișierul.

cat /proc/mounts

Lista arată fișierul special al dispozitivului din /dev care este utilizat pentru interfața cu dispozitivul și punctul de montare din arborele sistemului de fișiere.

Putem rafina lista folosind grep pentru a căuta intrări cu /dev/sd în ele. Acest lucru va filtra unitățile fizice.

cat /proc/mounts | grep /dev/sd

Acest lucru ne oferă un raport mult mai ușor de gestionat.

Putem fi puțin mai incluzive folosind grep pentru a căuta dispozitive care au fișiere speciale /dev/sd și /dev/sr. Aceasta va include hard disk-uri și CD-ROM-ul pentru această mașină.

cat /proc/partitions | grep s[rd]

Acum sunt două dispozitive și o partiție incluse în ieșire.

  Cum să utilizați comanda dmesg pe Linux

6. Comanda lspci

Listele de comandă lspci toate dispozitivele PCI în computerul dvs.

lspci

Informatiile furnizate sunt:

Slot: slotul în care este montat dispozitivul PCi
Clasa: clasa dispozitivului.
Numele furnizorului: numele producătorului.
Nume dispozitiv: numele dispozitivului.
Subsistem: numele furnizorului subsistemului (dacă dispozitivul are un subsistem).
Nume subsistem: dacă dispozitivul are un subsistem.
Număr revizie: numărul versiunii dispozitivului
Interfață de programare: Interfața de programare, dacă dispozitivul oferă una.

7. Comanda lsusb

Comanda lsusb va lista dispozitivele care sunt conectat la porturile USB pe computer, precum și pe dispozitivele compatibile USB care sunt încorporate în computer.

lsusb

Acest computer de testare are atașat la el un scaner Canon ca dispozitiv USB 5 și o unitate USB externă ca dispozitiv USB 4. Dispozitivele 3 și 1 sunt handlere interne de interfață USB.

Puteți primi o listă mai detaliată folosind opțiunea -v (verboză), și o versiune chiar mai detaliată folosind -vv.

8. Comanda lsdev

Comanda lsdev afișează informații despre toate dispozitivele instalate.

Această comandă generează multă ieșire, așa că o vom trece prin mai puțin.

lsdev | less

Există multe dispozitive hardware listate în rezultat.

9. Comanda lshw

Comanda lshw listează dispozitivele conectat la computerul dvs. Aceasta este o altă comandă cu o mulțime de rezultate. Pe computerul de testare au fost generate peste 260 de linii de informații. Îl vom ține mai puțin încă o dată.

Rețineți că trebuie să utilizați sudo cu lshw pentru a profita la maximum de el. Dacă nu, nu va putea accesa toate dispozitivele.

sudo lshw | less

Aici este intrarea pentru CD-ROM-ul cu interfață SCSI. După cum puteți vedea informațiile furnizate pentru fiecare dispozitiv sunt foarte detaliate. lshw citește majoritatea informațiilor din diferitele fișiere din /proc.

Dacă doriți o ieșire mai scurtă și mai puțin detaliată, puteți utiliza opțiunea –short.

10. Comanda lsscsi

După cum v-ați imagina până acum, comanda lsscsi listează dispozitivele SCSI conectat la computerul dvs.

lsscsi

Iată dispozitivele SCSI conectate la această mașină de testare.

11. Comanda dmidecode

Comenzile dmidecode decodifică Tabele pentru interfața de gestionare a desktopului (DMI).și extrage informații legate de hardware-ul conectat la computer și din interiorul computerului.

DMI mai este denumit uneori SMBIOS (sistemul de bază de intrare/ieșire de management al sistemului), deși sunt într-adevăr două standarde diferite.

Din nou, vom trece prin asta mai puțin.

dmidecode | less

Comanda dmidecode poate raporta peste 40 de tipuri diferite de hardware.

12. Comanda hwinfo

Comanda hwinfo este cea mai verbosă dintre toate. Când spunem că trebuie să treceți ceva prin mai puțin, de data aceasta nu este opțional. Pe computerul de testare, a generat 5850 de linii de ieșire!

Puteți începe lucrurile ușor, incluzând opțiunea –short.

hwinfo --short

Dacă într-adevăr trebuie să vedeți cel mai fin detaliu, repetați acest lucru și omiteți opțiunea –scurt.

Încheiați-l

Așadar, iată zecile noastre de modalități de a investiga dispozitivele din interiorul computerului sau atașate la acesta.

Oricare ar fi interesul dvs. special pentru a căuta acest hardware, va exista o metodă în această listă care vă va permite să găsiți ceea ce aveți nevoie.