Kaip įdiegti „Lshw“ sistemoje „Linux“ ir naudoti jį ieškant aparatinės įrangos informacijos

Kaip Idiegti Lshw Sistemoje Linux Ir Naudoti Ji Ieskant Aparatines Irangos Informacijos



„Lshw“ yra „Linux“ komandų eilutės įrankis, skirtas rasti informaciją apie įdiegtą jūsų kompiuterio / serverio aparatinę įrangą. Lshw gali pranešti apie pagrindinę / pagrindinę plokštę, procesorių, atmintį, diską, PCIE, USB ir kitą aparatinės įrangos informaciją.

„Lshw“ galima rasti kiekviename „Linux“ paskirstyme. Taigi, galite naudoti tą patį įrankį, norėdami rasti reikiamą informaciją apie kiekvieną Linux platinimą.







Šiame straipsnyje parodysime, kaip įdiegti lshw populiariuose Linux platinimuose ir naudoti jį aparatinės įrangos informacijai rasti.



Turinio tema:

„Lshw“ diegimas „Ubuntu“ / „Debian“ / „Linux Mint“ / „Kali Linux“.

Lshw galima rasti oficialioje Ubuntu/Debian/Linux Mint/Kali Linux paketų saugykloje. Taigi, galite lengvai įdiegti jį savo kompiuteryje / serveryje.



Pirmiausia atnaujinkite APT paketų saugyklos talpyklą naudodami šią komandą:





$ sudo tinkamas atnaujinimas



Norėdami įdiegti lshw, paleiskite šią komandą:

$ sudo apt diegti - ir ir tt

Lshw turėtų būti įdiegtas jūsų Ubuntu/Debian/Linux Mint/Kali Linux sistemoje.

Lshw diegimas Fedora / RHEL / AlmaLinux / Rocky Linux / CentOS Stream

Lshw galima rasti oficialioje Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream paketų saugykloje. Taigi, galite lengvai įdiegti jį savo kompiuteryje / serveryje.

Pirmiausia atnaujinkite DNF paketo saugyklos talpyklą naudodami šią komandą:

$ sudo dnf makecache

Norėdami įdiegti lshw, paleiskite šią komandą:

$ sudo dnf diegti ir tt

Norėdami patvirtinti diegimą, paspauskite „Y“, tada paspauskite <Įveskite> .

Lshw turėtų būti įdiegtas jūsų Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream sistemoje.

Galimos aparatinės įrangos sąrašas naudojant Lshw

Galite išvardyti visą turimą kompiuterio / serverio aparatinę įrangą naudodami lshw taip:

$ sudo ir tt -trumpas

Visa turima jūsų kompiuterio / serverio aparatinė įranga turėtų būti pateikta gražiu formatu.

Čia rasite šią informaciją:

  1. H/W kelias : Tai yra jūsų kompiuteryje / serveryje įdiegtos aparatinės įrangos fizinis kelias. Čia /0 yra pagrindinė plokštė, /0/100 yra procesorius (prijungtas prie pagrindinės plokštės), /0/100/ yra aparatinė įranga, kuri yra prijungta prie procesoriaus juostų ir pan.
  2. Įrenginys : Tai yra branduolio priskirtas aparatūros pavadinimas / identifikatorius. Dažniausias pavyzdys yra tinklo įrenginių, tokių kaip enp38s0, enp39s0 ir kt., įrenginio pavadinimas / identifikatorius.
  3. Klasė : Visa jūsų kompiuterio / serverio aparatinė įranga priklauso tam tikrai grupei / klasei. Pavyzdžiui, tinklo įrenginiai sugrupuoti tinklo klasėje, saugojimo įrenginiai – saugojimo klasėje ir pan. Aparatūros klasė gali būti naudojama filtruoti lshw išvestį .
  4. apibūdinimas : Tai trumpas atitinkamos aparatinės įrangos aprašymas.

Jei norite matyti aparatūros magistralės informaciją, o ne aparatūros kelią (H/W kelias), paleiskite komandą lshw taip:

$ sudo ir tt -informacija apie verslą

Kaip matote, pirmame stulpelyje dabar rodoma aparatinės įrangos magistralės informacija, o ne aparatūros kelias.

Įvairios aparatinės įrangos magistralės informacija parodys informaciją skirtingais formatais:

  • CPU : CPU magistralės ID bus cpu@ , Pavyzdžiui, CPU cpu@0 (mano atveju AMD Ryzen 9 3900X procesorius) turi ID 0. Daugumoje stalinių ir nešiojamųjų kompiuterių, turėsite tik vieną procesorių ir vieną procesoriaus įrašą, kuris yra „cpu@0“.
  • PCIE įrenginiai: PCIE įrenginių magistralės ID bus pci@: :. numeris taip pat vadinamas <įrenginio> numeriu. Pavyzdžiui, PCIE įrenginys pci@0000:26:00.0 (mūsų atveju I211 gigabito tinklo įrenginys) turi domeną 0000, magistralę 26, lizdą/įrenginį 00 ir funkciją 0. ID numeriai yra šešioliktainiai ir užpildyti nuliais.
  • SCSI įrenginiai : SCSI saugojimo įrenginių magistralės ID bus scsi@:. ., Pavyzdžiui, scsi@1:0.0.0 yra SCSI/SATA saugojimo įrenginys, kuriame yra 1 valdiklis, tikslas 0, id 0, lun 0 ir nėra skaidinių. Jei SCSI/SATA saugojimo įrenginys turi skaidinius, magistralės ID bus scsi@1:0.0.0,1 pirmajam skaidiniui, scsi@1:0.0.0,2 antrajam skaidiniui, scsi@1:0.0.0 ,3 trečiajam skaidiniui ir pan.
  • USB įrenginiai : USB atminties įrenginių magistralės ID bus usb@:. Pavyzdžiui, usb@3:6.3 yra USB įrenginys, turintis 3 valdiklį, 6 lizdą ir 3 ID. USB@3:1 yra USB įrenginys, turintis 3 valdiklį ir 1 lizdą.

Lshw išvesties filtravimas pagal aparatūros klasę

Lshw priskiria klasę kiekvienam aparatūros įrenginiui. Galite filtruoti komandos „lshw“ išvestį, kad įtrauktumėte tik tam tikrus aparatūros tipus naudodami šiuos klasių pavadinimus.

Galimos lshw aparatūros klasės yra:

  • sistema : sistemos pagrindinė plokštė ir PnP įrenginiai.
  • tiltas : vidiniai magistralės įrenginiai, tokie kaip PCIE, pagrindinio kompiuterio tiltas ir kt.
  • atmintis : Atminties įrenginiai, tokie kaip BIOS, RAM, ROM, procesoriaus talpyklos, programinė įranga ir kt.
  • procesorius : jūsų kompiuterio procesoriai ir SCSI RAID valdikliai.
  • adresu : ROM plėtinio ir vaizdo įrašo atminties adresai.
  • saugykla : SCSI ir IDE valdiklis.
  • diskas : laisvosios prieigos saugojimo įrenginiai, tokie kaip HDD, SSD, NVME SSD, CD-ROM, DVD ir kt.
  • apimtis : jūsų disko / saugojimo įrenginių skaidiniai.
  • juosta : nuoseklios prieigos saugojimo įrenginiai, tokie kaip DAT, DDS ir kt.
  • autobusas : įrenginys, jungiantis magistralę, pvz., USB, SCSI, FireWire ir kt.
  • tinklą : Tinklo sąsajos, tokios kaip Ethernet, WiFi ir kt.
  • ekranas : Vaizdo įrenginiai, pavyzdžiui, jūsų GPU.
  • įvestis : įvesties įrenginiai, pvz., klaviatūros, pelės, HDMI/DP prievadai, HD garso prievadai, maitinimo mygtukas, kompiuterio garsiakalbis ir kt.
  • spausdintuvas : spausdinimo įrenginiai, ty spausdintuvas.
  • multimedija : garso ir vaizdo įrenginiai, tokie kaip vaizdo plokštė (GPU), garso plokštė, TV išvesties plokštė ir kt.
  • bendravimas : Ryšio įrenginiai, tokie kaip „Bluetooth“.
  • galia : energijos šaltiniai, tokie kaip maitinimo šaltinis (PSU), vidinė baterija ir kt.
  • bendrinis : įrenginiai, kurių negalima klasifikuoti.

Ne visuose kompiuteriuose / serveriuose bus įdiegta visų klasių aparatinė įranga. Taigi, norėdami rasti aparatinės įrangos klases, kurias turi jūsų kompiuteris / serveris, rekomenduojame paleisti komandą „lshw“ su parinktimi „-short“ arba „-businfo“.

$ sudo ir tt -trumpas

$ sudo ir tt -informacija apie verslą

Norėdami filtruoti komandos „lshw“ išvestį, kad būtų rodomi tik tam tikri aparatūros tipai (t. y. saugojimo įrenginiai), naudokite parinktį „-class“ taip:

$ sudo ir tt -informacija apie verslą -klasė diskas

arba

$ sudo ir tt -trumpas -klasė diskas

Kaip matote, lshw išvardijo tik mūsų kompiuteryje įdiegtus saugojimo įrenginius (2x 500GB Samsung 860 EVO SATA SSD).

Galite naudoti parinktį „-class“ kelis kartus, kad vienu metu būtų rodoma kelių tipų aparatinė įranga su komanda „lshw“.

Pavyzdžiui, norėdami rodyti saugojimo įrenginius ir disko skaidinius naudodami komandą „lshw“, du kartus naudokite parinktį „-class“ taip:

$ sudo ir tt -informacija apie verslą -klasė diskas -klasė apimtis

arba

$ sudo ir tt -trumpas -klasė diskas -klasė apimtis -klasė

Kaip matote, lshw išvardijo saugojimo įrenginius ir tų saugojimo įrenginių skaidinius.

Išsamios aparatinės įrangos informacijos radimas naudojant Lshw

Norėdami rasti išsamios informacijos apie konkrečius aparatinės įrangos tipus (pvz., tinklą), paleiskite lshw su parinktimi „-class“ taip:

$ sudo ir tt -klasė tinklą

Kaip matote, išspausdinama labai išsami informacija apie visus mūsų kompiuteryje įdiegtus tinklo įrenginius.

Slėpti jautrią informaciją iš Lshw išvesties

Pagal numatytuosius nustatymus komanda „lshw“ spausdina neskelbtiną informaciją (t. y. tinklo įrenginių MAC adresus), rodydama išsamią aparatinės įrangos informaciją. Jei jums reikia dalytis aparatinės įrangos informacija su kitais žmonėmis internete, kad gautumėte pagalbos, pavyzdžiui, diegiant tvarkyklę, galbūt norėsite paslėpti šią neskelbtiną informaciją iš lshw išvesties.

Norėdami paslėpti neskelbtiną informaciją nuo išsamios aparatinės įrangos informacijos, galite naudoti komandos „lshw“ parinktį „-sanitize“ taip:

$ sudo ir tt - dezinfekuoti -klasė tinklą

Kaip matote, MAC adresai ir IP adresai pašalinami iš tinklo įrenginių.

Rodomi PCIe ir USB įrenginių skaitmeniniai ID

Pagal numatytuosius nustatymus PCIe ir USB įrenginių skaitmeniniai ID nerodomi komandos „lshw“ išvestyje.

Norėdami, kad PCIe ir USB įrenginių skaitiniai ID būtų rodomi komandos „lshw“ išvestyje, naudokite parinktį „-numeric“ taip:

$ sudo ir tt -skaitinis -klasė tinklą

arba

$ sudo ir tt -skaitinis -klasė autobusas

Kaip matote, skaitiniai USB įrenginių ID rodomi komandos „lshw“ išvestyje.

Nepastovių laiko žymų pašalinimas iš Lshw išvesties

Pagal numatytuosius nustatymus lshw spausdina nepastovias laiko žymas (keičiančius laiko duomenis) disko apimtims ir kitiems įrenginiams. Jei nenorite matyti šių laiko žymų, paleiskite komandą „lshw“ su parinktimi „-notime“ taip:

$ sudo ir tt -nėra laiko -klasė apimtis

Kaip matote, prijungti laiko žymos duomenys pašalinami iš lshw išvesties, kur naudojama parinktis „-notime“.

Aparatinės įrangos informacijos eksportavimas naudojant Lshw

Galite eksportuoti lshw aparatinės įrangos informaciją įvairiais formatais. Šio rašymo metu lshw gali eksportuoti aparatinės įrangos informaciją šiais formatais:

  • SQLite duomenų bazė
  • HTML
  • XML
  • JSON

Norėdami eksportuoti lshw aparatinės įrangos informaciją į SQLite duomenų bazės failą, paleiskite šią komandą:

$ sudo ir tt - sąvartynas ~ / duomenis / lshw.db &>/ dev / nulinis

Kaip matote, „lshw.db“ SQLite duomenų bazės failas yra sukurtas.

$ ls -lh ~ / duomenis

Duomenų bazės failą „lshw.db“ galite perskaityti naudodami SQLite ir atspausdinti visas duomenų bazės lenteles taip:

$ sudo sqlite3 ~ / duomenis / lshw.db -- linija '.lentelės'

Informaciją apie tinklo įrenginius galite atspausdinti iš „lshw.db“ failo naudodami šią SQLite komandą:

$ sudo sqlite3 ~ / duomenis / lshw.db -- linija „SELECT * FROM mazgų WHERE klasė PATINKA „tinklas“

Norėdami eksportuoti lshw aparatinės įrangos informaciją į HTML failą, paleiskite šią komandą:

$ sudo ir tt -html > ~ / duomenis / lshw.html

Jei taip pat norite išvalyti / paslėpti neskelbtiną informaciją, paleiskite lshw HTML eksporto komandą taip:

$ sudo ir tt - dezinfekuoti -html > ~ / duomenis / lshw.html

Kaip matote, lshw aparatinės įrangos informacija eksportuojama į „lshw.html“ HTML failą.

$ ls -lh ~ / duomenis

Failą „lshw.html“ galite atidaryti naudodami savo mėgstamą interneto naršyklę.

$ firefox ~ / duomenis / lshw.html

Failą „lshw.html“ atidarėme naudodami „Mozilla Firefox“ žiniatinklio naršyklę ir aparatinės įrangos informacija rodoma taip, kaip matote šioje ekrano kopijoje:

Norėdami eksportuoti lshw aparatinės įrangos informaciją į XML failą, paleiskite šią komandą:

$ sudo ir tt -xml > ~ / duomenis / lshw.xml

Jei taip pat norite išvalyti / paslėpti neskelbtiną informaciją, paleiskite lshw XML eksporto komandą taip:

$ sudo ir tt - dezinfekuoti -xml > ~ / duomenis / lshw.xml

Kaip matote, lshw aparatinės įrangos informacija eksportuojama į „lshw.xml“ XML failą.

$ ls -lh ~ / duomenis

Mes atidarėme „lshw.xml“ failą naudodami Vim teksto rengyklę ir lshw aparatinės įrangos informacija rodoma XML formatu, kaip matote šioje ekrano kopijoje:

$ nes ~ / duomenis / lshw.xml

Norėdami eksportuoti lshw aparatinės įrangos informaciją į JSON failą, paleiskite šią komandą:

$ sudo ir tt -json > ~ / duomenis / lshw.json

Jei taip pat norite išvalyti / paslėpti neskelbtiną informaciją, paleiskite lshw JSON eksporto komandą taip:

$ sudo ir tt - dezinfekuoti -json > ~ / duomenis / lshw.json

Kaip matote, lshw aparatinės įrangos informacija eksportuojama į „lshw.json“ JSON failą.

$ ls -lh ~ / duomenis

Mes atidarėme failą „lshw.json“ naudodami Vim teksto rengyklę, o lshw aparatinės įrangos informacija rodoma JSON formatu, kaip matote šioje ekrano kopijoje:

$ nes ~ / duomenis / lshw.json

Parinktys lshw -sanitize, -numeric ir -notime veiks eksportuojant lshw HTML, XML ir JSON, o ne eksportuojant SQLite. Norėdami gauti daugiau informacijos apie šias parinktis, skaitykite ankstesnes šio straipsnio dalis.

1 pavyzdys: Kompiuterio / serverio įdiegtų GPU su Lshw radimas

Įdiegę naują operacinę sistemą savo kompiuteryje/serveryje, vienas iš svarbiausių dalykų, kurį reikia padaryti, yra surasti savo kompiuteryje/serveryje įdiegtą GPU (grafikos plokštę/procesorių) ir įdiegti jam tinkamą tvarkyklę.

Savo kompiuteryje / serveryje įdiegtus GPU galite rasti naudodami šią „lshw“ komandą:

$ sudo ir tt -klasė ekranas

Kaip matote, mūsų kompiuteryje įdiegta NVIDIA GeForce RTX 4070 [1] . Jis naudoja oficialias NVIDIA tvarkykles (kaip mes ją įdiegėme) [2] . Jei jūsų kompiuteryje / serveryje įdiegtas NVIDIA GPU, bet neįdiegtos oficialios NVIDIA tvarkyklės, vietoje jo bus rodoma „driver=nouveau“. Tokiu atveju turėsite įdiegti oficialias NVIDIA tvarkykles savo kompiuteryje / serveryje, kad galėtumėte naudotis visomis funkcijomis ir gauti geriausią savo GPU našumą.

2 pavyzdys: Tinklo įrenginių / sąsajų su Lshw mikroschemų rinkinio radimas

Tinkamos tinklo tvarkyklės įdiegimas taip pat yra esminė naujojo „Linux“ diegimo dalis. Jei neįdiegtos tinkamos tinklo tvarkyklės, jūsų tinklo įrenginiai gali neveikti arba veikti su ribotomis funkcijomis (dėl to tinklo veikimas gali būti labai prastas). Kad galėtumėte įdiegti tinkamas tinklo tvarkykles, turite žinoti savo tinklo įrenginių mikroschemų rinkinį.

Norėdami rasti mikroschemų rinkinį ir kitą informaciją apie tinklo įrenginius, kurie yra įdiegti jūsų kompiuteryje / serveryje, paleiskite komandą „lshw“ taip:

$ sudo ir tt -klasė tinklą

Kaip matote, mūsų kompiuteryje yra du eterneto įrenginiai.

Viena iš jų – „Intel I211 Gigabit“ tinklo sąsaja [1] . „Linux“ branduolys suteikė jam loginį pavadinimą enp38s0 [2] . Kaip matote, jis naudoja Intel igb mikroschemų rinkinį (driver=igb) [3] . Taigi, kad ši tinklo sąsaja veiktų, savo kompiuteryje/serveryje turite įdiegti Intel igb tvarkyklę/firmware (jei ji dar neįdiegta).

Kitas yra Realtek RTL8125 2.5GbE tinklo sąsaja [4] . „Linux“ branduolys suteikė jam logišką pavadinimą enp39s0 [5] . Kaip matote, jis naudoja „Realtek r8169“ mikroschemų rinkinį (tvarkyklė = r8169) [6] . Taigi, kad ši tinklo sąsaja veiktų, turite įdiegti Realtek r8169 tvarkyklę / programinę įrangą savo kompiuteryje / serveryje (jei ji dar neįdiegta).

Taip pat turime prie kompiuterio prijungtą USB eterneto įrenginį ir WiFi adapterį.

USB 10/100 mbps LAN tinklo sąsaja [1] turi loginį pavadinimą enp42s0f3u6u3 [2] . Kaip matote, jis naudoja „Realtek r8152“ mikroschemų rinkinį (tvarkyklė = r8152) [6] . Taigi, kad ši tinklo sąsaja veiktų, turite įdiegti Realtek r8152 tvarkyklę / programinę įrangą savo kompiuteryje / serveryje (jei ji dar neįdiegta).

„WiFi 802.11n“ tinklo sąsajos[4] loginis pavadinimas yra wlp42s0f3u1[5]. Kaip matote, jis naudoja „MediaTek mt7601u“ mikroschemų rinkinį (driver=mt7601u) [6] . Taigi, kad ši tinklo sąsaja veiktų, turite įdiegti MediaTek mt7601u tvarkyklę / programinę įrangą savo kompiuteryje / serveryje (jei ji dar neįdiegta).

Išvada

Tai yra išsamus lshw vadovas. Šiame straipsnyje parodėme, kaip įdiegti lshw populiariuose Linux platinimuose (pvz., Ubuntu, Debian, Linux Mint, Kali Linux, Fedora, RHEL, AlmaLinux, Rocky Linux, CentOS Stream). Taip pat parodėme, kaip pateikti kompiuterio aparatinės įrangos sąrašą, filtruoti lshw išvestį, kad būtų rodoma tam tikro tipo aparatinė įranga, ir paslėpti jautrią aparatinės įrangos informaciją iš lshw išvesties. Mes parodėme, kaip rodyti skaitmeninį PCIE ir USB įrenginių ID, taip pat pašalinti nepastovias laiko žymas iš lshw išvesties. Taip pat parodėme, kaip eksportuoti lshw aparatinės įrangos informaciją į SQLite duomenų bazę, HTML, XML ir JSON formatus ir juos perskaityti. Galiausiai parodėme, kaip rasti kompiuteryje įdiegtus GPU ir tinklo įrenginius bei lustų rinkinį, kurį tinklo įrenginiai naudoja su lshw, kad padėtume tinkamai įdiegti tvarkyklę / programinę-aparatinę įrangą.

Nuorodos: