Saat Anda menjalankan Linux di desktop atau server, terkadang Anda perlu mengidentifikasi perangkat keras di sistem itu. Satu perintah yang digunakan untuk ini adalah lspci
. Ia bekerja dengan menunjukkan semua perangkat yang terpasang ke bus PCI. Ini disediakan oleh paket pciutils dan tersedia untuk berbagai sistem operasi berbasis Linux dan BSD.
Lebih banyak sumber daya Linux
- Lembar contekan perintah Linux
- Lembar contekan perintah Linux tingkat lanjut
- Kursus online gratis:Ikhtisar Teknis RHEL
- Lembar contekan jaringan Linux
- Lembar contekan SELinux
- Lembar contekan perintah umum Linux
- Apa itu container Linux?
- Artikel Linux terbaru kami
Penggunaan dasar
Informasi yang ditampilkan saat pengguna biasa menjalankan lspci
mungkin dibatasi karena izin akses. Menjalankan perintah dengan sudo
memberikan gambaran yang lengkap.
Menjalankan lspci
dengan sendirinya mencantumkan bus PCI dan perangkat terpasangnya. Berikut ini contoh dari PC pusat media saya. Ini adalah sistem berbasis CPU AMD Phenom, sehingga memiliki chipset AMD. Ini juga memiliki pengontrol nirkabel Atheros dan kartu grafis Nvidia. Semua perangkat keras terdaftar dengan detail seperti vendor, nama, dan nomor model:
$ sudo lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] RS880 Host Bridge
00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] RS780 PCI to PCI bridge (ext gfx port 0)
00:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] RS780/RS880 PCI to PCI bridge (PCIE port 0)
00:05.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] RS780/RS880 PCI to PCI bridge (PCIE port 1)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode]
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:12.1 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0 USB OHCI1 Controller
00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:13.1 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0 USB OHCI1 Controller
00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 3c)
00:14.1 IDE interface: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 IDE Controller
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller
00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge
00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor HyperTransport Configuration
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Address Map
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Link Control
01:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GK107 HDMI Audio Controller (rev a1)
02:00.0 Network controller: Qualcomm Atheros AR9287 Wireless Network Adapter (PCI-Express) (rev 01)
Keluaran verbose
Menambahkan -v
opsi meningkatkan verbositas atau tingkat detail untuk setiap perangkat. Anda dapat menggunakan -vv
atau -vvv
untuk jumlah detail perangkat yang lebih tinggi. Pada level ini, lspci
menampilkan berbagai subsistem dan alamat memori, nomor permintaan interupsi (IRQ), dan kemampuan lain untuk semua perangkat. Outputnya sangat panjang. Cobalah di sistem Anda.
Mencari dengan grep
Terkadang Anda ingin mempersempit pencarian Anda. Misalnya, situs web RPM Fusion memiliki instruksi untuk menginstal driver grafis Nvidia. Mereka mulai dengan mengidentifikasi kartu grafis Anda menggunakan grep
memerintah. Ini yang saya dapatkan di laptop saya:
$ sudo lspci | grep -e VGA
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (rev 07)
$ sudo lspci | grep -e 3D
01:00.0 3D controller: NVIDIA Corporation GM108M [GeForce MX130] (rev a2)
grep
perintah di atas menunjukkan satu perangkat VGA di PC pusat media saya tetapi tidak ada perangkat 3D.
$ sudo lspci | grep -e VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1)
$ sudo lspci | grep -e 3D
$
Mencari berdasarkan ID vendor
Ada cara lain yang tidak memerlukan grep
. Misalkan saya ingin menentukan apakah ada perangkat Nvidia lain. Ini perlu untuk tahu lebih banyak. Saya menggunakan -nn
opsi untuk menampilkan nomor ID vendor dan perangkat. Di PC pusat media saya, opsi ini menunjukkan kartu VGA, ID vendor, dan ID perangkat saya:
$ sudo lspci -nn | grep -e VGA
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK107 [GeForce GTX 650] [10de:0fc6] (rev a1)
Kumpulan tanda kurung dengan nomor yang dipisahkan titik dua setelah nama perangkat menunjukkan vendor dan ID perangkat. Keluaran menunjukkan bahwa ID vendor untuk perangkat yang dibuat oleh Nvidia Corporation adalah 10de .
-d
opsi menampilkan semua perangkat dari vendor, perangkat, atau ID kelas tertentu. Berikut adalah semua perangkat Nvidia di sistem saya (menjaga -nn
untuk menyertakan ID vendor):
$ sudo lspci -nn -d 10de:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK107 [GeForce GTX 650] [10de:0fc6] (rev a1)
01:00.1 Audio device [0403]: NVIDIA Corporation GK107 HDMI Audio Controller [10de:0e1b] (rev a1)
Dari output, Anda dapat melihat bahwa selain kartu grafis, saya memiliki perangkat audio Nvidia. Keduanya sebenarnya adalah bagian dari Nvidia GeForce GTX 650 yang sama kartu, tapi ini adalah contoh yang bagus.
Modul kernel
Bersama dengan perangkat keras PCI, lspci
dapat menunjukkan modul driver kernel apa yang dimuat dengan -k
pilihan. Saya menambahkan opsi ini ke lspci
saya perintah untuk melihat beberapa informasi tentang perangkat Nvidia saya.
$ sudo lspci -nn -k -d 10de:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK107 [GeForce GTX 650] [10de:0fc6] (rev a1)
Subsystem: eVga.com. Corp. GK107 [GeForce GTX 650] [3842:2650]
Kernel driver in use: nvidia
Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia
01:00.1 Audio device [0403]: NVIDIA Corporation GK107 HDMI Audio Controller [10de:0e1b] (rev a1)
Subsystem: eVga.com. Corp. GK107 HDMI Audio Controller [3842:2650]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
Dua baris tambahan ditampilkan:Driver kernel sedang digunakan dan Modul kernel . Yang kedua mencantumkan modul yang tersedia untuk mendukung perangkat.
Terus up to date
Perangkat dan vendor baru terus memasuki pasar. Jika Anda melihat perangkat terdaftar sebagai tidak dikenal , basis data ID perangkat PCI Anda mungkin sudah usang. Ada dua cara untuk memeriksa. -Q
opsi menggunakan DNS untuk menanyakan database pusat. Ini, tentu saja, memerlukan konektivitas jaringan.
$ sudo lspci -Q
Anda juga dapat memperbarui database ID PCI lokal Anda dengan menjalankan perintah update-pciids
.
$ sudo update-pciids
Downloaded daily snapshot dated 2021-08-22 03:15:01
Pelajari lebih lanjut tentang perangkat keras Anda
Tentu saja, lspci
hanyalah salah satu dari banyak perintah yang tersedia untuk Linux yang berguna untuk menanyakan perangkat keras dan perangkat lunak pada sistem Anda. Pelajari lebih lanjut tentang perangkat keras di Linux dalam artikel saya yang membahas perangkat USB:Kenali lebih banyak perangkat di Linux dengan Repositori ID USB ini.