Lshw on Linuxin komentorivityökalu, joka etsii tietoja tietokoneellesi/palvelimellesi asennetuista laitteista. Lshw voi raportoida emolevyn/emolevyn, prosessorin, muistin, levyn, PCIE:n, USB:n ja muut laitteistotiedot.
Lshw on saatavilla jokaisessa Linux-jakelussa. Joten voit käyttää samaa työkalua löytääksesi tarvittavat laitteistotiedot jokaisesta Linux-jakelusta.
Tässä artikkelissa näytämme, kuinka lshw asennetaan suosittuihin Linux-jakeluihin ja käytetään sitä laitteistotietojen etsimiseen.
Sisällön aihe:
- Lshw:n asentaminen Ubuntu/Debian/Linux Mint/Kali Linuxiin
- Lshw:n asentaminen Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Streamiin
- Käytettävissä olevien laitteistojen luettelointi Lshw:lla
- Lshw-lähdön suodattaminen laitteistoluokilla
- Yksityiskohtaisten laitteistotietojen etsiminen Lshw:n avulla
- Arkaluonteisten tietojen piilottaminen Lshw-lähdöstä
- PCIe- ja USB-laitteiden numeeristen tunnusten näyttäminen
- Haihtuvien aikaleimien poistaminen Lshw-lähdöstä
- Laitteistotietojen vieminen Lshw:n avulla
- Esimerkki 1: Tietokoneen/palvelimen asennettujen GPU:iden etsiminen Lshw:n avulla
- Esimerkki 2: Lshw:n verkkolaitteiden/rajapintojen piirisarjan etsiminen
- Johtopäätös
- Viitteet
Lshw:n asentaminen Ubuntu/Debian/Linux Mint/Kali Linuxiin
Lshw on saatavilla Ubuntu/Debian/Linux Mint/Kali Linuxin virallisessa pakettivarastossa. Joten voit asentaa sen helposti tietokoneellesi/palvelimellesi.
Päivitä ensin APT-pakettivaraston välimuisti seuraavalla komennolla:
$ sudo osuva päivitys
Asenna lshw suorittamalla seuraava komento:
$ sudo apt Asentaa -ja jne
Lshw tulee asentaa Ubuntu/Debian/Linux Mint/Kali Linux -järjestelmääsi.
Lshw:n asentaminen Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Streamiin
Lshw on saatavilla Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Streamin virallisessa pakettivarastossa. Joten voit asentaa sen helposti tietokoneellesi/palvelimellesi.
Päivitä ensin DNF-pakettivaraston välimuisti seuraavalla komennolla:
$ sudo dnf makecache
Asenna lshw suorittamalla seuraava komento:
$ sudo dnf Asentaa jne
Vahvista asennus painamalla 'Y' ja sitten paina
Lshw tulee asentaa Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream -järjestelmääsi.
Käytettävissä olevien laitteistojen luettelointi Lshw:lla
Voit luetella kaikki tietokoneesi/palvelimesi käytettävissä olevat laitteet lshw:llä seuraavasti:
$ sudo jne -lyhyt
Kaikki tietokoneesi/palvelimesi käytettävissä olevat laitteistot tulee listata mukavassa muodossa.
Täältä löydät seuraavat tiedot:
- H/W polku : Tämä on tietokoneellesi/palvelimellesi asennetun laitteiston fyysinen polku. Tässä /0 on emolevy, /0/100 on prosessori (kytkettynä emolevyyn), /0/100/
on laitteisto, joka on kytketty prosessorikaistoihin ja niin edelleen. - Laite : Tämä on laitteiston ytimen määrittämä nimi/tunniste. Yleisin esimerkki on verkkolaitteiden laitenimi/tunniste, kuten enp38s0, enp39s0 jne.
- Luokka : Kaikki tietokoneesi/palvelimesi laitteistot kuuluvat tiettyyn ryhmään/luokkaan. Esimerkiksi verkkolaitteet on ryhmitelty verkkoluokkaan, tallennuslaitteet on ryhmitelty tallennusluokkaan ja niin edelleen. Laitteistoluokkaa voidaan käyttää suodattaa lshw:n lähtö .
- Kuvaus : Se on lyhyt kuvaus vastaavasta laitteistosta.
Jos haluat nähdä laitteiston väylätiedot laitteistopolun (H/W polun) sijaan, suorita lshw-komento seuraavasti:
$ sudo jne -bussitiedot
Kuten näet, ensimmäinen sarake näyttää nyt laitteiston väylätiedot laitteistopolun sijaan.
Eri laitteistojen väylätiedot näyttävät tiedot eri muodoissa:
- prosessori : Suorittimien väylätunnukset ovat kohdassa cpu@
, Esimerkiksi CPU:n cpu@0 (minun tapauksessani AMD Ryzen 9 3900X -prosessori) on ID 0. Useimmissa pöytätietokoneissa ja kannettavissa tietokoneissa sinulla on vain yksi prosessori ja yksi CPU-merkintä, joka on 'cpu@0'. - PCIE-laitteet: PCIE-laitteiden väylätunnukset ovat kohdassa pci@
: : . -numeroa kutsutaan myös -numeroksi. Esimerkiksi PCIE-laitteen pci@0000:26:00.0 (tapauksessamme I211 gigabitin verkkolaite) on toimialue 0000, väylä 26, paikka/laite 00 ja toiminto 0. Tunnusnumerot ovat heksadesimaalilukuja ja niissä on nollia. - SCSI-laitteet : SCSI-tallennuslaitteiden väylätunnus on kohdassa scsi@
: . . , Esimerkiksi scsi@1:0.0.0 on SCSI/SATA-tallennuslaite, jossa on ohjain 1, kohde 0, id 0, lun 0 eikä osioita. Jos SCSI/SATA-tallennuslaitteessa on osioita, väylätunnus on scsi@1:0.0.0,1 ensimmäiselle osiolle, scsi@1:0.0.0,2 toiselle osiolle, scsi@1:0.0.0 ,3 kolmannelle osiolle ja niin edelleen. - USB-laitteet : USB-tallennuslaitteiden väylätunnus on kohdassa usb@
: . Esimerkiksi usb@3:6.3 on USB-laite, jossa on ohjain 3, paikka 6 ja id 3. usb@3:1 on USB-laite, jossa on ohjain 3 ja paikka 1.
Lshw-lähdön suodattaminen laitteistoluokilla
Lshw määrittää luokan jokaiselle laitteistolle. Voit suodattaa 'lshw'-komennon tulosteen sisällyttämään vain tietyntyyppiset laitteistot näitä luokkanimiä käyttäen.
Käytettävissä olevat lshw-laitteistoluokat ovat:
- järjestelmä : Järjestelmän emolevy ja PnP-laitteet.
- silta : Sisäiset väylälaitteet, kuten PCIE, isäntäsilta jne.
- muisti : Muistilaitteet, kuten BIOS, RAM, ROM, CPU-välimuistit, laiteohjelmisto jne.
- prosessori : Tietokoneesi prosessorit ja SCSI RAID -ohjaimet.
- osoite : ROM-laajennuksen ja videon muistiosoitteet.
- varastointi : SCSI- ja IDE-ohjain.
- levy : Satunnaiskäyttöiset tallennuslaitteet, kuten HDD, SSD, NVME SSD, CD-ROM, DVD jne.
- äänenvoimakkuutta : Levyn/tallennuslaitteiden osiot.
- nauha : Jaksottaiset tallennuslaitteet, kuten DAT, DDS jne.
- linja-auto : Laite, joka yhdistää väylän, kuten USB, SCSI, FireWire jne.
- verkkoon : Verkkoliitännät, kuten Ethernet, WiFi jne.
- näyttö : Näyttölaitteet, kuten GPU.
- syöttö : Syöttölaitteet, kuten näppäimistöt, hiiret, HDMI/DP-portit, HD-ääniportit, virtapainike, PC-kaiutin jne.
- tulostin : Tulostuslaitteet, eli tulostin.
- multimedia : Ääni- ja videolaitteet, kuten näytönohjain (GPU), äänikortti, television lähtökortti jne.
- viestintää : Viestintälaitteet, kuten Bluetooth.
- tehoa : Energialähteet, kuten virtalähde (PSU), sisäinen akku jne.
- yleinen : Laitteet, joita ei voida luokitella.
Kaikkiin tietokoneisiin/palvelimiin ei ole asennettu kaikkia laitteita. Joten löytääksesi tietokoneesi/palvelimesi laitteistoluokat, suosittelemme, että suoritat 'lshw'-komennon '-short'- tai '-businfo'-vaihtoehdolla.
$ sudo jne -lyhyt$ sudo jne -bussitiedot
Suodattaaksesi 'lshw'-komennon tulosteen näyttämään vain tietyntyyppiset laitteistot (eli tallennuslaitteet), käytä '-class'-vaihtoehtoa seuraavasti:
$ sudo jne -bussitiedot -luokka levy
tai
$ sudo jne -lyhyt -luokka levy
Kuten näet, lshw listasi vain tallennuslaitteet (2 x 500 Gt Samsung 860 EVO SATA SSD-levyä), jotka on asennettu tietokoneellemme.
Voit käyttää '-class'-vaihtoehtoa useita kertoja näyttääksesi useita laitteistotyyppejä kerralla 'lshw'-komennolla.
Esimerkiksi, jos haluat näyttää tallennuslaitteet sekä levyosiot 'lshw'-komennolla, käytä '-class'-vaihtoehtoa kahdesti seuraavasti:
$ sudo jne -bussitiedot -luokka levy -luokka äänenvoimakkuutta
tai
$ sudo jne -lyhyt -luokka levy -luokka äänenvoimakkuutta -luokka
Kuten näet, lshw listasi tallennuslaitteet sekä näiden tallennuslaitteiden osiot.
Yksityiskohtaisten laitteistotietojen etsiminen Lshw:n avulla
Saadaksesi yksityiskohtaiset tiedot tietyistä laitteistotyypeistä (eli verkoista), suorita lshw '-class'-vaihtoehdolla seuraavasti:
$ sudo jne -luokka verkkoon
Kuten näet, tulostetaan erittäin yksityiskohtaiset tiedot kaikista tietokoneellemme asennetuista verkkolaitteista.
Arkaluonteisten tietojen piilottaminen Lshw-lähdöstä
Oletusarvoisesti 'lshw'-komento tulostaa arkaluontoiset tiedot (eli verkkolaitteiden MAC-osoitteet) ja näyttää samalla yksityiskohtaiset laitteistotiedot. Jos sinun on jaettava laitteistotiedot muiden ihmisten kanssa Internetissä saadaksesi apua esimerkiksi ohjaimen asennuksessa, saatat haluta piilottaa nämä arkaluontoiset tiedot lshw-lähdöstä.
Voit piilottaa arkaluonteiset tiedot yksityiskohtaisista laitteistotiedoista käyttämällä 'lshw'-komennon '-sanitize' -vaihtoehtoa seuraavasti:
$ sudo jne -puhdistaa -luokka verkkoon
Kuten näet, MAC-osoitteet ja IP-osoitteet poistetaan verkkolaitteista.
PCIe- ja USB-laitteiden numeeristen tunnusten näyttäminen
Oletusarvoisesti PCIe- ja USB-laitteiden numeerisia tunnuksia ei näytetä 'lshw'-komennon lähdössä.
Jos haluat näyttää PCIe- ja USB-laitteiden numeeriset tunnukset 'lshw'-komennon lähdössä, käytä '-numeric'-vaihtoehtoa seuraavasti:
$ sudo jne - numeerinen -luokka verkkoon
tai
$ sudo jne - numeerinen -luokka linja-auto
Kuten näet, USB-laitteiden numeeriset tunnukset näkyvät 'lshw'-komennon lähdössä.
Haihtuvien aikaleimien poistaminen Lshw-lähdöstä
Oletusarvoisesti lshw tulostaa epävakaat aikaleimat (muuttuvat aikatiedot) levyasetuksille ja muille laitteille. Jos et halua nähdä näitä aikaleimoja, suorita 'lshw'-komento '-notime'-vaihtoehdolla seuraavasti:
$ sudo jne -ei aikaa -luokka äänenvoimakkuutta
Kuten näet, asennetut aikaleimatiedot poistetaan lshw-lähdöstä, jossa käytetään '-notime'-vaihtoehtoa.
Laitteistotietojen vieminen Lshw:n avulla
Voit viedä lshw-laitteistotiedot eri muodoissa. Tätä kirjoitettaessa lshw voi viedä laitteistotiedot seuraavissa muodoissa:
- SQLite-tietokanta
- HTML
- XML
- JSON
Vie lshw-laitteistotiedot SQLite-tietokantatiedostoon suorittamalla seuraava komento:
$ sudo jne - kaatopaikka ~ / tiedot / lshw.db &>/ kehittäjä / tyhjä
Kuten näet, 'lshw.db' SQLite-tietokantatiedosto luodaan.
$ ls -lh ~ / tiedot
Voit lukea ”lshw.db”-tietokantatiedoston SQLiten avulla ja tulostaa kaikki tietokantataulukot seuraavasti:
$ sudo sqlite3 ~ / tiedot / lshw.db --linja '.taulukot'
Voit tulostaa tiedot verkkolaitteista ”lshw.db”-tiedostosta seuraavalla SQLite-komennolla:
$ sudo sqlite3 ~ / tiedot / lshw.db --linja 'SELECT * FROM solmut WHERE luokka LIKE 'verkko''
Vie lshw-laitteistotiedot HTML-tiedostoon suorittamalla seuraava komento:
$ sudo jne -html > ~ / tiedot / lshw.html
Jos haluat puhdistaa/piilottaa myös arkaluontoiset tiedot, suorita lshw HTML -vientikomento seuraavasti:
$ sudo jne -puhdistaa -html > ~ / tiedot / lshw.html
Kuten näet, lshw-laitteistotiedot viedään 'lshw.html' HTML-tiedostoon.
$ ls -lh ~ / tiedot
Voit avata “lshw.html”-tiedoston suosikkiselaimellasi.
$ firefox ~ / tiedot / lshw.html
Avasimme 'lshw.html'-tiedoston Mozilla Firefox -selaimella ja laitteistotiedot näkyvät seuraavassa kuvakaappauksessa:
Vie lshw-laitteistotiedot XML-tiedostoon suorittamalla seuraava komento:
$ sudo jne -xml > ~ / tiedot / lshw.xml
Jos haluat puhdistaa/piilottaa myös arkaluontoiset tiedot, suorita lshw XML -vientikomento seuraavasti:
$ sudo jne -puhdistaa -xml > ~ / tiedot / lshw.xml
Kuten näet, lshw-laitteistotiedot viedään 'lshw.xml' XML-tiedostoon.
$ ls -lh ~ / tiedot
Avasimme 'lshw.xml'-tiedoston Vim-tekstieditorilla ja lshw-laitteistotiedot näytetään XML-muodossa, kuten näet seuraavassa kuvakaappauksessa:
$ koska ~ / tiedot / lshw.xml
Vie lshw-laitteistotiedot JSON-tiedostoon suorittamalla seuraava komento:
$ sudo jne -json > ~ / tiedot / lshw.json
Jos haluat puhdistaa tai piilottaa myös arkaluontoiset tiedot, suorita lshw JSON -vientikomento seuraavasti:
$ sudo jne -puhdistaa -json > ~ / tiedot / lshw.json
Kuten näet, lshw-laitteistotiedot viedään 'lshw.json' JSON-tiedostoon.
$ ls -lh ~ / tiedot
Avasimme 'lshw.json'-tiedoston Vim-tekstieditorilla ja lshw-laitteistotiedot näytetään JSON-muodossa, kuten näet seuraavassa kuvakaappauksessa:
$ koska ~ / tiedot / lshw.json
Asetukset lshw -sanitize, -numeric ja -notime toimivat lshw HTML-, XML- ja JSON-viennissä, eivät SQLite-viennissä. Lisätietoja näistä vaihtoehdoista on tämän artikkelin aiemmissa osissa.
Esimerkki 1: Tietokoneen/palvelimen asennettujen GPU:iden etsiminen Lshw:n avulla
Kun olet asentanut uuden käyttöjärjestelmän tietokoneellesi/palvelimellesi, yksi tärkeimmistä tehtävistä on löytää tietokoneellesi/palvelimellesi asentamasi GPU (grafiikkakortti/prosessori) ja asentaa sille sopiva ohjain.
Löydät tietokoneellesi/palvelimellesi asentamasi GPU:t seuraavalla 'lshw'-komennolla:
$ sudo jne -luokka näyttö
Kuten näet, tietokoneellemme on asennettu NVIDIA GeForce RTX 4070 [1] . Se käyttää virallisia NVIDIA-ajureita (sellaisena kuin asensimme sen) [2] . Jos tietokoneellesi/palvelimellesi on asennettu NVIDIA GPU, mutta virallisia NVIDIA-ohjaimia ei ole asennettu, näet sen sijaan 'driver=nouveau'. Siinä tapauksessa sinun on asennettava viralliset NVIDIA-ohjaimet tietokoneellesi/palvelimellesi, jotta voit käyttää kaikkia ominaisuuksia ja saada parhaan suorituskyvyn grafiikkasuorittimestasi.
Esimerkki 2: Lshw:n verkkolaitteiden/rajapintojen piirisarjan etsiminen
Oikean verkkoohjaimen asentaminen on myös olennainen osa uutta Linux-asennusta. Ellei oikeita verkkoohjaimia ole asennettu, verkkolaitteesi eivät välttämättä toimi tai voivat toimia rajoitetusti (voi johtaa erittäin huonoon verkon suorituskykyyn). Jotta voit asentaa oikeat verkko-ohjaimet, sinun on tunnettava verkkolaitteidesi piirisarja.
Löydät piirisarjan ja muut tiedot tietokoneellesi/palvelimellesi asennetuista verkkolaitteista suorittamalla komennon 'lshw' seuraavasti:
$ sudo jne -luokka verkkoon
Kuten näet, tietokoneellemme on asennettu kaksi Ethernet-laitetta.
Yksi niistä on Intel I211 Gigabit -verkkoliitäntä [1] . Linux-ydin antoi sille loogisen nimen enp38s0 [2] . Kuten näet, se käyttää Intelin igb-piirisarjaa (ohjain=igb) [3] . Joten saadaksesi tämän verkkoliittymän toimimaan, sinun on asennettava Intel igb -ohjain/laiteohjelmisto tietokoneellesi/palvelimellesi (jos sitä ei ole jo asennettu).
Toinen on Realtek RTL8125 2.5GbE verkkoliitäntä [4] . Linux-ydin antoi sille loogisen nimen enp39s0 [5] . Kuten näet, se käyttää Realtek r8169 -piirisarjaa (ohjain = r8169) [6] . Joten saadaksesi tämän verkkoliittymän toimimaan sinun on asennettava Realtek r8169 -ohjain/laiteohjelmisto tietokoneellesi/palvelimellesi (jos sitä ei ole jo asennettu).
Meillä on myös USB-ethernet-laite ja WiFi-sovitin kytkettynä tietokoneeseen.
USB 10/100 mbps LAN-verkkoliitäntä [1] sillä on looginen nimi, enp42s0f3u6u3 [2] . Kuten näet, se käyttää Realtek r8152 -piirisarjaa (ohjain = r8152) [6] . Joten saadaksesi tämän verkkoliittymän toimimaan sinun on asennettava Realtek r8152 -ohjain/laiteohjelmisto tietokoneellesi/palvelimellesi (jos sitä ei ole jo asennettu).
WiFi 802.11n -verkkoliitännän[4] looginen nimi on wlp42s0f3u1[5]. Kuten näet, se käyttää MediaTek mt7601u -piirisarjaa (ohjain = mt7601u) [6] . Joten saadaksesi tämän verkkoliittymän toimimaan sinun on asennettava MediaTek mt7601u -ohjain/laiteohjelmisto tietokoneellesi/palvelimellesi (jos sitä ei ole jo asennettu).
Johtopäätös
Tämä on kattava lshw-opas. Tässä artikkelissa näytimme sinulle, kuinka lshw asennetaan suosittuihin Linux-jakeluihin (eli Ubuntu, Debian, Linux Mint, Kali Linux, Fedora, RHEL, AlmaLinux, Rocky Linux, CentOS Stream). Näimme myös, kuinka voit luetteloida tietokoneesi laitteistot, suodattaa lshw:n tulosteen tietyntyyppisten laitteistojen näyttämiseksi ja piilottaa arkaluonteiset laitteistotiedot lshw-lähdöstä. Näimme sinulle, kuinka voit näyttää PCIE- ja USB-laitteiden numeerisen tunnuksen sekä poistaa haihtuvat aikaleimat lshw-lähdöstä. Näimme myös, kuinka voit viedä lshw-laitteistotiedot SQLite-tietokannassa, HTML-, XML- ja JSON-muodossa ja lukea ne. Lopuksi osoitimme sinulle, kuinka voit löytää tietokoneellesi asentamasi grafiikkasuorittimen ja verkkolaitteet sekä verkkolaitteiden käyttämän piirisarjan lshw:n kanssa auttaaksesi sinua oikean ohjaimen/laiteohjelmiston asennuksessa.