KVM을 사용하여 Linux에서 PCI GPU 패스스루 설정을 스크립트하려고 합니다. 다음을 통해 pci 장치 ID를 찾아야 합니다.
root@kvmatrix:~# lspci -nn | grep VGA | grep NVIDIA
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP107 [GeForce GTX 1050] [10de:1c81] (rev a1)
이 부분만 생성하기 위해 다른 "grep"을 추가하고 싶습니다.
10de:1c81
답변1
어떤 유형의 장비를 구입하고 싶은지 알고 있으면 해당 장비를 사용하는 것이 더 쉬울 수 있습니다. 이 경우 "VGA Controller"는 클래스이므로 다음에 대한 정보만 제공한다는 것을 0300
알 수 있습니다 .lspci
$ lspci -nd::0300|egrep -o "[[:xdigit:]]{4}:[[:xdigit:]]{4}"
이는 egrep
검색이므로 을 사용할 수도 있습니다 grep -E
. 단 하나의 항목만 일치하므로 xxxx:xxxx
( x
16진수), 그것이 제가 일치한 것입니다.
일치할 수 있는 카드가 여러 개 있고 nVidia 카드만 원하는 경우 lspci -nd10de::0300
해당 공급업체로만 제한할 수 있습니다.
답변2
이 시도:
lspci -nn | grep -oP 'VGA.*NVIDIA.*\[\K[\w:]+'
-P
또는 더 이식성이 뛰어남(일부 오래된 Linux 운영 체제에는 스위치가 없음 )
lspci -nn | perl -lne 'print $& if /VGA.*NVIDIA.*\[\K[\w:]+/'
산출:
10de:1c81
라이브 데모오른쪽에 설명이 있어요
답변3
사용discover
:하드웨어 감지 유틸리티
discover --vendor-id --model-id pci | grep NVIDIA | uniq | awk '{print $1":"$2}'
예제 출력:
10de:1c81