Table of Contents
🖥️ lspci: кратко и по делу#
lspci — утилита для просмотра информации о PCI/PCIe устройствах: сетевых картах, видеокартах, USB-контроллерах, NVMe, RAID, звуковых картах и других аппаратных модулях.
Работает через /sys и libpci и часто используется для диагностики железа, драйверов и пропавших устройств.
📝 Топ‑20 ключевых флагов и приёмов lspci#
lspci— список всех PCI/PCIe-устройств.lspci -v— подробная информация о каждом устройстве.lspci -vv— максимально детализированный вывод.lspci -nn— показывать числовые IDVendor:Device.lspci -nnk— показать устройства + драйверы ядра.lspci -k— только информацию о драйверах.lspci -mm— машинно-читаемый формат (CSV-like).lspci -tv— древовидное отображение PCI-шины.lspci -xxxx— дамп raw-конфигурационного пространства.lspci -xxx— дамп расширенной PCI-конфигурации.lspci -s <bus:slot.func>— показать инфо по конкретному устройству.lspci -d <vendor>:<device>— фильтр по ID устройства.lspci -v -s 00:1f.6— подробный вывод только для одного устройства.lspci -n— показать только числовые ID устройств.lspci -b— показывать шины и IRQ в стиле “Bus-centric”.lspci -P— выводить физические слоты устройств (если поддерживается).lspci -t— упрощённое древовидное отображение.lspci | grep VGA— найти видеокарту.lspci | grep -i network— найти сетевые карты.lspci | awk '{print $1}' | xargs -n1 lspci -v -s— подробный вывод по всем устройствам.
🚀 Айсберг команд lspci — от базового к гуру#
🟢 Уровень 1 — База (разогрев)#
lspci
- Список всех PCI/PCIe-устройств
lspci | grep VGA
- Найти видеокарту
lspci | grep -i ethernet
- Найти сетевые адаптеры
lspci | grep -i usb
- Найти USB-контроллеры
lspci -nn
- Показать все устройства с ID производителей
🟡 Уровень 2 — Подробная диагностика устройств#
lspci -v
- Детализированный вывод
lspci -vv
- Максимальная детализация (рекомендуется для отладки)
lspci -k
- Информация о драйверах
lspci -nnk
- PCI ID + драйверы ядра
lspci -v -s 00:1f.3
- Отладка конкретного устройства по адресу
🟠 Уровень 3 — Фильтрация и поиск проблем#
lspci -d 10ec:8168
- Найти устройства Realtek RTL8168
lspci -s 03:00.0
- Данные только по конкретной карте
lspci -n
- Только Vendor:Device ID
lspci -mm
- Машиночитаемый CSV-формат
lspci -tv
- Дерево PCI-шины с детальным выводом
🔵 Уровень 4 — Анализ драйверов и модулей ядра#
lspci -nnk | grep -A3 VGA
- Проверить драйвер видеокарты
lspci -k | grep -A2 Audio
- Узнать, какой драйвер загружен для звука
lspci -vv | grep MSI
- Проверить поддержку MSI/MSI-X
lsmod | grep iwlwifi
- Проверить, загружен ли драйвер Wi-Fi
dmesg | grep pci
- Проверить ошибки инициализации PCI
🟣 Уровень 5 — NVMe, USB и контроллеры#
lspci | grep -i nvme
- Найти NVMe-контроллер
lspci | grep -i sata
- Найти SATA-контроллер
lspci | grep -i ahci
- Проверить поддержку AHCI
lspci | grep -i xhci
- Найти USB 3.x контроллер
lspci -v | grep -A10 XHCI
- Подробно про USB-контроллер
🔴 Уровень 6 — Гуру‑режим#
lspci -xxxx -s 03:00.0 | hexdump -C
- Дамп конфигурационного пространства PCI
sudo lspci -vv -s 03:00.0
- Глубокая диагностика устройства
lspci -v -s 00:1f.6 | grep -i latency
- Проверить тайминги и задержки
lspci -nn | grep -i "8086:"
- Найти устройства Intel
cat /sys/bus/pci/devices/*/vendor
- Сырые PCI ID от ядра
🟤 Уровень 7 — Автоматизация и интеграция#
lspci | awk '{print $1}' | xargs -n1 lspci -vv -s
- Сгенерировать полный отчёт обо всех устройствах
lspci -nn | sort | uniq -c
- Группировка устройств по типам
lspci -nn | awk '{print $1,$2,$3}' > pci_list.txt
- Сохранить список устройств в файл
while true; do lspci | diff -u prev - || true; lspci > prev; sleep 2; done
- Мониторинг изменений PCI-шины
lspci -vv | grep -E "LnkSta|LnkCap"
- Проверить режимы PCIe (x1, x4, x16) и скорости
🧩 Бонус — практические сценарии#
Найти видеокарту и драйвер:
lspci -nnk | grep -A3 VGA
Диагностика Wi-Fi карты:
lspci | grep -i wireless
lspci -nnk | grep -A3 Network
Найти устройства USB-контроллера:
lspci | grep -i usb
Посмотреть скорость PCIe-подключения:
sudo lspci -vv -s 01:00.0 | grep -E "LnkSta|LnkCap"
Проверить загруженные драйверы ядра:
lspci -nnk | grep -A3 Ethernet