Cara Memasang Lshw pada Linux dan Gunakannya untuk Cari Maklumat Perkakasan

Cara Memasang Lshw Pada Linux Dan Gunakannya Untuk Cari Maklumat Perkakasan



Lshw ialah alat baris arahan Linux untuk mencari maklumat tentang perkakasan yang dipasang pada komputer/pelayan anda. Lshw boleh melaporkan papan induk/papan utama, CPU, memori, cakera, PCIE, USB dan maklumat perkakasan lain.

Lshw tersedia pada setiap pengedaran Linux di luar sana. Jadi, anda boleh menggunakan alat yang sama untuk mencari maklumat perkakasan yang diperlukan pada setiap pengedaran Linux.







Dalam artikel ini, kami akan menunjukkan kepada anda cara memasang lshw pada pengedaran Linux yang popular dan menggunakannya untuk mencari maklumat perkakasan.



Topik Kandungan:

Memasang Lshw pada Ubuntu/Debian/Linux Mint/Kali Linux

Lshw tersedia dalam repositori pakej rasmi Ubuntu/Debian/Linux Mint/Kali Linux. Jadi, anda boleh memasangnya dengan mudah pada komputer/pelayan anda.



Mula-mula, kemas kini cache repositori pakej APT dengan arahan berikut:





$ sudo kemas kini yang sesuai



Untuk memasang lshw, jalankan arahan berikut:

$ sudo apt pasang -dan dan lain-lain

Lshw harus dipasang pada sistem Ubuntu/Debian/Linux Mint/Kali Linux anda.

Memasang Lshw pada Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream

Lshw tersedia dalam repositori pakej rasmi Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream. Jadi, anda boleh memasangnya dengan mudah pada komputer/pelayan anda.

Mula-mula, kemas kini cache repositori pakej DNF dengan arahan berikut:

$ sudo dnf makecache

Untuk memasang lshw, jalankan arahan berikut:

$ sudo dnf pasang dan lain-lain

Untuk mengesahkan pemasangan, tekan 'Y' dan kemudian tekan .

Lshw harus dipasang pada sistem Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream anda.

Menyenaraikan Perkakasan Tersedia dengan Lshw

Anda boleh menyenaraikan semua perkakasan komputer/pelayan anda yang tersedia dengan lshw seperti berikut:

$ sudo dan lain-lain -pendek

Semua perkakasan komputer/pelayan anda yang tersedia hendaklah disenaraikan dalam format yang bagus.

Anda akan dapati maklumat berikut di sini:

  1. Laluan H/W : Ini ialah laluan fizikal perkakasan yang dipasang pada komputer/pelayan anda. Di sini, /0 ialah papan induk, /0/100 ialah pemproses (disambungkan ke papan induk), /0/100/ ialah perkakasan yang disambungkan ke lorong pemproses, dan sebagainya.
  2. Peranti : Ini ialah nama/pengecam perkakasan yang diberikan kernel. Contoh yang paling biasa ialah nama peranti/pengecam peranti rangkaian seperti enp38s0, enp39s0, dsb.
  3. Kelas : Semua perkakasan komputer/pelayan anda tergolong dalam kumpulan/kelas tertentu. Sebagai contoh, peranti rangkaian dikumpulkan dalam kelas rangkaian, peranti storan dikumpulkan dalam kelas storan, dan sebagainya. Kelas perkakasan boleh digunakan untuk tapis keluaran lshw .
  4. Penerangan : Ini adalah penerangan ringkas tentang perkakasan masing-masing.

Jika anda ingin melihat maklumat bas perkakasan dan bukannya laluan perkakasan (laluan H/W), jalankan arahan lshw seperti berikut:

$ sudo dan lain-lain -businfo

Seperti yang anda lihat, lajur pertama kini menunjukkan maklumat bas perkakasan dan bukannya laluan perkakasan.

Maklumat bas perkakasan yang berbeza akan menunjukkan maklumat dalam format yang berbeza:

  • CPU : ID bas CPU akan berada dalam cpu@ , Contohnya, CPU cpu@0 (pemproses AMD Ryzen 9 3900X dalam kes saya) mempunyai ID 0. Pada kebanyakan komputer meja dan komputer riba, anda hanya akan mempunyai satu pemproses dan satu masukan CPU iaitu 'cpu@0'.
  • Peranti PCIE: ID bas peranti PCIE akan berada dalam pci@: :. Nombor juga dipanggil nombor . Sebagai contoh, peranti PCIE pci@0000:26:00.0 (peranti rangkaian gigabit I211 dalam kes kami) mempunyai domain 0000, bas 26, slot/peranti 00 dan fungsi 0. Nombor ID adalah perenambelasan dan berlapis sifar.
  • peranti SCSI : ID bas peranti storan SCSI akan berada dalam scsi@:. ., Contohnya, scsi@1:0.0.0 ialah peranti storan SCSI/SATA yang mempunyai pengawal 1, sasaran 0, id 0, lun 0 dan tiada sekatan. Jika peranti storan SCSI/SATA mempunyai partition, ID bas akan menjadi scsi@1:0.0.0,1 untuk partition pertama, scsi@1:0.0.0,2 untuk partition kedua, scsi@1:0.0.0 ,3 untuk partition ketiga, dan seterusnya.
  • Peranti USB : ID bas peranti storan USB akan berada dalam usb@:. Contohnya, usb@3:6.3 ialah peranti USB yang mempunyai pengawal 3, slot 6 dan id 3. Usb@3:1 ialah peranti USB yang mempunyai pengawal 3 dan slot 1.

Menapis Output Lshw dengan Kelas Perkakasan

Lshw memberikan kelas kepada setiap peranti perkakasan. Anda boleh menapis output arahan 'lshw' untuk memasukkan hanya jenis perkakasan tertentu menggunakan nama kelas ini.

Kelas perkakasan lshw yang tersedia ialah:

  • sistem : Papan induk dan peranti PnP sistem.
  • jambatan : Peranti bas dalaman seperti PCIE, jambatan hos, dsb.
  • ingatan : Peranti memori seperti BIOS, RAM, ROM, cache CPU, perisian tegar, dsb.
  • pemproses : Pemproses komputer anda dan pengawal SCSI RAID.
  • alamat : Alamat memori untuk ROM sambungan dan video.
  • penyimpanan : Pengawal SCSI dan IDE.
  • cakera : Peranti storan akses rawak seperti HDD, SSD, NVME SSD, CD-ROM, DVD, dsb.
  • isipadu : Pembahagian peranti cakera/storan anda.
  • pita : Peranti storan capaian berjujukan seperti DAT, DDS, dsb.
  • bas : Peranti yang menyambungkan bas seperti USB, SCSI, FireWire, dsb.
  • rangkaian : Antara muka rangkaian seperti Ethernet, WiFi, dsb.
  • paparan : Peranti paparan seperti GPU anda.
  • input : Peranti input seperti papan kekunci anda, tetikus, port HDMI/DP, port audio HD, butang kuasa, pembesar suara PC, dsb.
  • mesin pencetak : Peranti pencetak, iaitu pencetak.
  • multimedia : Peranti audio dan video seperti kad video (GPU), kad bunyi, kad output TV, dsb.
  • komunikasi : Peranti komunikasi seperti Bluetooth.
  • kuasa : Sumber tenaga seperti bekalan kuasa (PSU), bateri dalaman, dsb.
  • generik : Peranti yang tidak boleh dikelaskan.

Tidak semua komputer/pelayan akan memasang setiap kelas perkakasan. Jadi, untuk mencari kelas perkakasan yang dimiliki oleh komputer/pelayan anda, kami mengesyorkan anda menjalankan perintah 'lshw' dengan pilihan '-short' atau '-businfo'.

$ sudo dan lain-lain -pendek

$ sudo dan lain-lain -businfo

Untuk menapis output arahan 'lshw' untuk memaparkan hanya jenis perkakasan tertentu (iaitu peranti storan), gunakan pilihan '-class' seperti berikut:

$ sudo dan lain-lain -businfo -kelas cakera

atau

$ sudo dan lain-lain -pendek -kelas cakera

Seperti yang anda lihat, lshw hanya menyenaraikan peranti storan (2x 500GB Samsung 860 EVO SATA SSDs) yang dipasang pada komputer kami.

Anda boleh menggunakan pilihan '-class' beberapa kali untuk memaparkan berbilang jenis perkakasan serentak dengan arahan 'lshw'.

Contohnya, untuk memaparkan peranti storan serta partition cakera menggunakan arahan 'lshw', gunakan pilihan '-class' dua kali seperti berikut:

$ sudo dan lain-lain -businfo -kelas cakera -kelas isipadu

atau

$ sudo dan lain-lain -pendek -kelas cakera -kelas isipadu -kelas

Seperti yang anda lihat, lshw menyenaraikan peranti storan serta partition peranti storan tersebut.

Mencari Maklumat Perkakasan Terperinci dengan Lshw

Untuk mencari maklumat terperinci tentang jenis perkakasan tertentu (iaitu rangkaian), jalankan lshw dengan pilihan '-class' seperti berikut:

$ sudo dan lain-lain -kelas rangkaian

Seperti yang anda lihat, maklumat yang sangat terperinci tentang semua peranti rangkaian yang dipasang pada komputer kami dicetak.

Menyembunyikan Maklumat Sensitif daripada Output Lshw

Secara lalai, arahan 'lshw' mencetak maklumat sensitif (iaitu alamat MAC peranti rangkaian) sambil memaparkan maklumat perkakasan terperinci. Jika anda perlu berkongsi maklumat perkakasan dengan orang lain di Internet untuk mendapatkan bantuan dengan memasang pemacu sebagai contoh, anda mungkin mahu menyembunyikan maklumat sensitif tersebut daripada output lshw.

Untuk menyembunyikan maklumat sensitif daripada maklumat perkakasan terperinci, anda boleh menggunakan pilihan '-sanitize' arahan 'lshw' seperti berikut:

$ sudo dan lain-lain -membersihkan -kelas rangkaian

Seperti yang anda lihat, alamat MAC dan alamat IP dialih keluar daripada peranti rangkaian.

Memaparkan ID Numerik untuk Peranti PCIe dan USB

Secara lalai, ID berangka tidak dipaparkan untuk peranti PCIe dan USB dalam output arahan 'lshw'.

Untuk memaparkan ID berangka bagi peranti PCIe dan USB dalam output arahan 'lshw', gunakan pilihan '-numeric' seperti berikut:

$ sudo dan lain-lain -nombor -kelas rangkaian

atau

$ sudo dan lain-lain -nombor -kelas bas

Seperti yang anda lihat, ID berangka dipaparkan untuk peranti USB dalam output arahan 'lshw'.

Mengeluarkan Cap Masa Meruap daripada Output Lshw

Secara lalai, lshw mencetak cap waktu yang tidak menentu (mengubah data masa) untuk volum cakera dan peranti lain. Jika anda tidak mahu melihat cap masa tersebut, jalankan arahan 'lshw' dengan pilihan '-notime' seperti berikut:

$ sudo dan lain-lain -tiada masa -kelas isipadu

Seperti yang anda lihat, data cap waktu yang dipasang dialih keluar daripada output lshw di mana pilihan '-notime' digunakan.

Mengeksport Maklumat Perkakasan Menggunakan Lshw

Anda boleh mengeksport maklumat perkakasan lshw dalam format yang berbeza. Pada masa penulisan ini, lshw boleh mengeksport maklumat perkakasan dalam format berikut:

  • pangkalan data SQLite
  • HTML
  • XML
  • JSON

Untuk mengeksport maklumat perkakasan lshw ke fail pangkalan data SQLite, jalankan arahan berikut:

$ sudo dan lain-lain -pembuangan ~ / data / lshw.db &>/ dev / null

Seperti yang anda lihat, fail pangkalan data SQLite 'lshw.db' dicipta.

$ ls -lh ~ / data

Anda boleh membaca fail pangkalan data 'lshw.db' dengan SQLite dan mencetak semua jadual pangkalan data seperti berikut:

$ sudo sqlite3 ~ / data / lshw.db --baris '.meja'

Anda boleh mencetak maklumat pada peranti rangkaian daripada fail 'lshw.db' dengan arahan SQLite berikut:

$ sudo sqlite3 ~ / data / lshw.db --baris 'PILIH * DARI nod DI MANA kelas SEPERTI 'rangkaian''

Untuk mengeksport maklumat perkakasan lshw ke fail HTML, jalankan arahan berikut:

$ sudo dan lain-lain -html > ~ / data / lshw.html

Jika anda ingin membersihkan/menyembunyikan maklumat sensitif juga, jalankan perintah eksport HTML lshw seperti berikut:

$ sudo dan lain-lain -membersihkan -html > ~ / data / lshw.html

Seperti yang anda lihat, maklumat perkakasan lshw dieksport ke fail HTML 'lshw.html'.

$ ls -lh ~ / data

Anda boleh membuka fail 'lshw.html' dengan penyemak imbas web kegemaran anda.

$ firefox ~ / data / lshw.html

Kami membuka fail 'lshw.html' dengan pelayar web Mozilla Firefox dan maklumat perkakasan dipaparkan seperti yang anda boleh lihat dalam tangkapan skrin berikut:

Untuk mengeksport maklumat perkakasan lshw ke fail XML, jalankan arahan berikut:

$ sudo dan lain-lain -xml > ~ / data / lshw.xml

Jika anda ingin membersihkan/menyembunyikan maklumat sensitif juga, jalankan perintah eksport XML lshw seperti berikut:

$ sudo dan lain-lain -membersihkan -xml > ~ / data / lshw.xml

Seperti yang anda lihat, maklumat perkakasan lshw dieksport ke fail XML 'lshw.xml'.

$ ls -lh ~ / data

Kami membuka fail 'lshw.xml' dengan editor teks Vim dan maklumat perkakasan lshw dipaparkan dalam format XML seperti yang anda boleh lihat dalam tangkapan skrin berikut:

$ kerana ~ / data / lshw.xml

Untuk mengeksport maklumat perkakasan lshw ke fail JSON, jalankan arahan berikut:

$ sudo dan lain-lain -json > ~ / data / lshw.json

Jika anda ingin membersihkan/menyembunyikan maklumat sensitif juga, jalankan perintah eksport JSON lshw seperti berikut:

$ sudo dan lain-lain -membersihkan -json > ~ / data / lshw.json

Seperti yang anda lihat, maklumat perkakasan lshw dieksport ke fail JSON 'lshw.json'.

$ ls -lh ~ / data

Kami membuka fail 'lshw.json' dengan editor teks Vim dan maklumat perkakasan lshw dipaparkan dalam format JSON seperti yang anda boleh lihat dalam tangkapan skrin berikut:

$ kerana ~ / data / lshw.json

Pilihan lshw -sanitize, -numeric, dan -notime akan berfungsi untuk lshw HTML, XML dan eksport JSON, bukan untuk eksport SQLite. Untuk mendapatkan maklumat lanjut tentang pilihan ini, baca bahagian sebelumnya artikel ini.

Contoh 1: Mencari GPU yang Dipasang Komputer/Pelayan Anda dengan Lshw

Selepas memasang sistem pengendalian baharu pada komputer/pelayan anda, salah satu perkara paling penting yang perlu dilakukan ialah mencari GPU (kad grafik/pemproses) yang anda pasang pada komputer/pelayan anda dan pasang pemacu yang sesuai untuknya.

Anda boleh mencari GPU yang anda pasang pada komputer/pelayan anda dengan arahan 'lshw' berikut:

$ sudo dan lain-lain -kelas paparan

Seperti yang anda lihat, kami telah memasang NVIDIA GeForce RTX 4070 pada komputer kami [1] . Ia menggunakan pemacu NVIDIA rasmi (semasa kami memasangnya) [2] . Jika anda memasang GPU NVIDIA pada komputer/pelayan anda, tetapi pemacu NVIDIA rasmi tidak dipasang, sebaliknya anda akan melihat “driver=nouveau”. Dalam kes itu, anda perlu memasang pemacu NVIDIA rasmi pada komputer/pelayan anda untuk dapat menggunakan semua ciri dan mendapatkan prestasi terbaik daripada GPU anda.

Contoh 2: Mencari Cipset Peranti/Antara Muka Rangkaian dengan Lshw

Memasang pemacu rangkaian yang betul juga merupakan bahagian penting dalam pemasangan Linux baharu. Melainkan pemacu rangkaian yang betul dipasang, peranti rangkaian anda mungkin tidak berfungsi atau mungkin berfungsi dengan kefungsian terhad (mungkin mengakibatkan prestasi rangkaian yang sangat lemah). Untuk dapat memasang pemacu rangkaian yang betul, anda perlu mengetahui set cip peranti rangkaian anda.

Untuk mencari set cip dan maklumat lain pada peranti rangkaian yang dipasang pada komputer/pelayan anda, jalankan arahan 'lshw' seperti berikut:

$ sudo dan lain-lain -kelas rangkaian

Seperti yang anda lihat, kami mempunyai dua peranti ethernet yang dipasang pada komputer kami.

Salah satunya ialah antara muka rangkaian Intel I211 Gigabit [1] . Kernel Linux memberikannya nama logik sebagai enp38s0 [2] . Seperti yang anda lihat, ia menggunakan cipset Intel igb (driver=igb) [3] . Jadi, untuk memastikan antara muka rangkaian ini berfungsi, anda mesti memasang pemacu/perisian tegar Intel igb pada komputer/pelayan anda (jika ia belum dipasang).

Yang satu lagi ialah antara muka rangkaian Realtek RTL8125 2.5GbE [4] . Kernel Linux memberikannya nama logik sebagai enp39s0 [5] . Seperti yang anda lihat, ia menggunakan cipset Realtek r8169 (pemandu=r8169) [6] . Jadi, untuk memastikan antara muka rangkaian ini berfungsi, anda mesti memasang pemacu/perisian tegar Realtek r8169 pada komputer/pelayan anda (jika ia belum dipasang).

Kami juga mempunyai peranti ethernet USB dan penyesuai WiFi yang disambungkan ke komputer kami.

Antara muka rangkaian LAN USB 10/100 mbps [1] mempunyai nama logik, enp42s0f3u6u3 [2] . Seperti yang anda lihat, ia menggunakan cipset Realtek r8152 (pemandu=r8152) [6] . Jadi, untuk memastikan antara muka rangkaian ini berfungsi, anda mesti memasang pemacu/perisian tegar Realtek r8152 pada komputer/pelayan anda (jika ia belum dipasang).

Antara muka rangkaian WiFi 802.11n[4] mempunyai nama logik sebagai wlp42s0f3u1[5]. Seperti yang anda lihat, ia menggunakan cipset MediaTek mt7601u (pemandu=mt7601u) [6] . Jadi, untuk memastikan antara muka rangkaian ini berfungsi, anda mesti memasang pemacu/perisian tegar MediaTek mt7601u pada komputer/pelayan anda (jika ia belum dipasang).

Kesimpulan

Ini adalah panduan yang luas tentang lshw. Dalam artikel ini, kami menunjukkan kepada anda cara memasang lshw pada pengedaran Linux yang popular (iaitu Ubuntu, Debian, Linux Mint, Kali Linux, Fedora, RHEL, AlmaLinux, Rocky Linux, CentOS Stream). Kami juga menunjukkan kepada anda cara menyenaraikan perkakasan komputer anda, menapis output lshw untuk memaparkan jenis perkakasan tertentu dan menyembunyikan maklumat perkakasan sensitif daripada output lshw. Kami menunjukkan kepada anda cara untuk memaparkan ID berangka untuk peranti PCIE dan USB serta mengalih keluar cap masa yang tidak menentu daripada output lshw. Kami juga menunjukkan kepada anda cara untuk mengeksport maklumat perkakasan lshw dalam pangkalan data SQLite, HTML, XML dan format JSON dan membacanya. Akhir sekali, kami menunjukkan kepada anda cara mencari GPU dan peranti rangkaian yang anda pasang pada komputer anda dan set cip yang digunakan oleh peranti rangkaian dengan lshw untuk membantu anda dengan pemasangan pemacu/perisian tegar yang betul.

Rujukan: