LINUX.ORG.RU

бывают ли внешние usb hub'ы, которые можно пробросить в libvirt?

 


1

1

Доброго времени суток

Сабж. Надоело пробрасывать в ВМ отдельные usb девайсы, хочется выделить сразу физический порт и подключать их сразу в ВМ, без дополнительных действий. Это в принципе возможно?

К сожалению, ноут. Т.е. pcie воткнуть некуда

★★★★★
Ответ на: комментарий от James_Holden

Зависит от. Они не должны использоваться в хост системе. Т.е. либо останавливать демона, либо выгружать специфический драйвер

А хотелось бы вообще не парить мозг и выдать виртуалке физический порт. Чтобы хост систему никак не нужно было настраивать для новых девайсов

Скорее всего это невозможно (в этом уверяют и гугл, и реддит), но пусть пока тема повисит. Мало ли что китайцы придумали за это время

router ★★★★★
() автор топика

включи iommu в cmdline и

#!/usr/bin/env bash

shopt -s nullglob
lastgroup=""
for g in `find /sys/kernel/iommu_groups/* -maxdepth 0 -type d | sort -V`; do
    for d in $g/devices/*; do
        if [ "${g##*/}" != "$lastgroup" ]; then
            echo -en "Group ${g##*/}:\t"
        else
            echo -en "\t\t"
        fi
        lastgroup=${g##*/}
        lspci -nms ${d##*/} | awk -F'"' '{printf "[%s:%s]", $4, $6}'
        if [[ -e "$d"/reset ]]; then echo -en " [R] "; else echo -en "     "; fi

        lspci -mms ${d##*/} | awk -F'"' '{printf "%s %-40s %s\n", $1, $2, $6}'
        for u in ${d}/usb*/; do
            bus=$(cat "${u}/busnum")
            lsusb -s $bus: | \
                awk '{gsub(/:/,"",$4); printf "%s|%s %s %s %s|", $6, $1, $2, $3, $4; for(i=7;i<=NF;i++){printf "%s ", $i}; printf "\n"}' | \
                awk -F'|' '{printf "USB:\t\t[%s]\t\t %-40s %s\n", $1, $2, $3}'
        done
    done
done
baja
()