Разное

Linux usb просмотр устройств: Как посмотреть USB устройства Linux

Подключение USB устройств в WSL (Windows для Linux) и Hyper-V

Для получения прямого доступа к физическим USB устройствам компьютера из подсистемы Windows для Linux (WSL2) или виртуальной машины Hyper-V вы можете open-source проект usbipd-win. Это проект позволяет настроить сквозную передачу внешнего USB устройства, подключенного к хостовой Windows, в любой дистрибутив Linux, запущенный в виде WSL или в виртуальные машины. Это позволяет выполнять любые действия с USB устройствами из Linux (прошивка Android устройств/ADB/Fastboot, доступ к смарт-картам, работа с оборудованием Arduino и т.д.).

В usbipd-win используется протокол USB/IP для перенаправления USB трафика через виртуальный сетевой интерфейс между WSL и хостовой Windows. Сначала мы настроим клиент USB/IP в Linux (WSL), и затем установим и установим и запустим серверную часть usbipd-win на Windows и прокинем USB устройство в Linux.

Usbipd-win поддерживает версии, начиная с Windows 8.1 x64 и Windows Server 2012 R2, и позволяет предоставить общий доступ к локальным USB устройствам Windows другим виртуальным машинам (включая WSL2 и гостевые ОС Linux на Hyper-V).

С помощью встроенных средств Hyper-V ранее можно было пробрасывать только USB накопители или другие виды USB устройства через довольно ограниченный режим Enhanced Session Mode.

Проект usbipd-win доступен на GitHub (https://github.com/dorssel/usbipd-win). Вы можете скачать и установить его вручную (доступен установочный MSI файл), но гораздо быстрее установить приложение с помощью встроенного менеджера пакетов winget.

winget install --interactive --exact dorssel.usbipd-win

Программа создаст в Windows отдельную службу usbipd (USBIP Device Host): "C:\Program Files\usbipd-win\usbipd.exe" server, которая слушает на порту TCP 3240

Для программы usbipd.exe в Windows Defender Firewall создано правило ( usbipd ), разрешающее доступ на порт TCP 3240 с компьютеров в локальной сети.

Теперь настроим поддержку USBIP в среде Windows Subsystem for Linux. Проверьте, что версия ядра в вашем образе не ниже 5.10.60.1 (в нашем примере для демонстрации используется WSL 2 с образом Ubuntu 22. 04 LTS):

$ uname -a

Теперь нужно установить инструменты для работы с USB/IP и базу с идентификаторами USB устройств.

$ sudo apt install linux-tools-virtual hwdata
$ sudo update-alternatives --install /usr/local/bin/usbip usbip `ls /usr/lib/linux-tools/*/usbip | tail -n1` 20

Теперь откройте командную строку с правами администратора на хостовом Windows компьютере и выведите список USB устройств:

usbipd wsl list

Как вы видите, ни одно из USB устройств не опубликовано (Not shared). Вы можете предоставить общий доступ к USB устройству по его BUSID. В моем примере я хочу прокинуть в WSL флешку (USB Mass Storage Device) с BUISID 4-2.

usbipd wsl attach --busid 4-2

Проверьте, что ваша флешка была подключена к WSL:

dmesg | tail
lsusb

Если вы хотите прокинуть ваше USB устройство на другой компьютер с Linux ОС по сети (это может быть виртуальная машина с гостевой Linux на Hyper-V, или любом другом гипервизоре), сначала получить список опубликованных USB устройств:

$ usbip list --remote=192. 168.31.20

Теперь можно подключить нужное USB по его ID:

$ sudo usbip attach -remote=192.168.31.20 --busid=4-2

В этом примере указан IP адрес хоста Windows, где запущен сервер usbipd-win.

Теперь ваши Linux утилиты должны увидеть подключенное USB устройство.

Чтобы отключить общий доступ к USB устройству в Windows:

usbipd wsl detach --busid 4-2

Обратите внимание, что подключенные таким образом USB накопители не определяются как блочные устройства в WSL. Проверьте это командой lsblk. Дело в том, что в ядре WSL отсутствует драйвера для USB накопителей (чтобы добавить их придется пересобрать ядро).

В обычных дистрибутивах Linux вы сможете смонтировать файловую систему прокинутых USB накопителей стандартным образом.

Поэтому, если вам нужно смонтировать внешнюю USB флешку, диск, SD карту в WSL, нужно использовать такие команды:

$ sudo mkdir /mnt/f
$ sudo mount -t drvfs f: /mnt/f

WSL может смонтировать таким образом диски с FAT, ExFAT, ReFs или NTFS, а также VHD образы.

Таким образом usbipd-win можно использовать для сквозной передачи физических USB устройств из Windows в WSL, в виртуальные машину или физические компьютер с Linux по сети с помощью USBOverIP

Также вам может быть полезна статья по переносу WSL на другой диск.

утилита для подключения удаленных USB-устройств

2.7.18 USBIP — утилита для подключения удаленных USB-устройств

Скачать документ

Настройка на сервере
Настройка на клиенте
Графическая утилита usbip-gui

USBIP — это утилита, направленная на предоставление в общий доступ USB-устройств через IP-сеть для совместного использования. Чтобы совместно использовать USB-устройства между компьютерами с их полной функциональностью, USBIP преобразует «сообщения ввода-вывода USB» в полезные данные TCP / IP и передает их между компьютерами. Оригинальные драйверы и приложения для USB-устройств также могут использоваться для удаленных USB-устройств без их модификации. Компьютер может использовать удаленные USB-устройства, как если бы они были напрямую подключены.

Устройства, которые можно подключить через утилиту:

  • Запоминающие устройства USB: fdisk, mkfs, монтирование / размонтирование, файловые операции, воспроизведение DVD-фильмов и запись DVD-R.
  • USB-клавиатуры и USB-мыши: можно использовать с Linux-консолью и X Windows System.
  • Веб-камеры USB и динамики USB: просмотр веб-камер, запись видео и воспроизведение музыки.
  • USB-принтеры, USB-сканеры, последовательные USB-преобразователи и интерфейсы USB-Ethernet.

На нашем Youtube-канале вы можете подробнее ознакомиться с установкой и настройкой утилиты USBIP, просмотрев видео Подключение удаленных USB устройств. USBIP, а также найти много другой полезной информации.

Настройка на сервере

Для начала работы необходимо установить утилиту USBIP командой:

  • для РЕД ОС 7. 2 и младше:
yum install usbip
  • для РЕД ОС 7.3 и старше:
dnf install usbip

Следующим этапом требуется установить дополнительные модули:

modprobe usbip-core 
modprobe usbip-host 
modprobe vhci-hcd 
lsmod | grep usbip

Чтобы модули загружались автоматически, необходимо в /etc/modules добавить следующие строки:

usbip-core 
usbip-host 
vhci-hcd

Затем следует запустить сервер для работы утилиты:

usbipd -D

Перед тем как открыть доступ к какому-либо usb-устройству, нужно узнать его ID. Сделать это можно командой:

usbip list -l

Доступ к устройству открывается с помощью команды:

usbip bind --busid=1-1

где 1-1 — это ID устройства.

Для закрытия доступа к устройству необходимо ввести команду:

usbip unbind -b 1-1

Настройка на клиенте

Для начала работы необходимо установить утилиту USBIP командой:

  • для РЕД ОС 7. 2 и младше:
yum install usbip
  • для РЕД ОС 7.3 и старше:
dnf install usbip

Следующим этапом требуется установить дополнительные модули:

modprobe usbip-core 
modprobe usbip-host 
lsmod | grep usbip

Чтобы модули загружались автоматически, необходимо в /etc/modules добавить следующие строки:

usbip-core 
usbip-host 
vhci-hcd

Для подключения открытого в общий доступ устройства на сервере к компьютеру-клиенту надо знать его ID и IP-адрес сервера. Для этого необходимо выполнить команду:

usbip attach --remote=xx.xx.xx.xx --busid=1-1

где 1-1 — это ID устройства, а xx.xx.xx.xx — это IP-адрес сервера.

После подключения USB-устройства оно должно отображаться после выполнения команды:

lsusb

Для того чтобы отключить устройство из общего доступа, необходимо узнать его порт:

usbip port

После того, как порт определен, можно отсоединить устройство:

usbip detach 00

Графическая утилита usbip-gui

В РЕД ОС также существует графическая утилита для предоставления в общий доступ USB-устройств через IP-сеть — usbip-gui.  

Установить программу можно либо через графический менеджер пакетов, либо через терминал.

Для установки программы через графический менеджер пакетов dnfdragora перейдите в «Главное меню» — «Администрирование» — «Управление пакетами dnfdragora», выполните поиск необходимого пакета по ключевому слову «usbip-gui» и отметьте флагом пакет последней версии. После этого нажмите кнопку «Применить» и дождитесь окончания установки пакетов.


Для установки программы через терминал перейдите в сеанс пользователя root:

 su -

и выполните команду:

 dnf install usbip-gui -y

После установки программа будет доступна из «Главного меню» — «Администрирование» — «Управление USBIP». Обратите внимание, что для работы с программой необходимы права администратора или суперпользователя системы.


Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.

QGIS — геоинформационная система

Специальные возможности в РЕД ОС

4 Полезный способ узнать имя подключенного USB-устройства в Linux

Как новичок, одна из многих вещей, которую вы должны освоить в Linux, — это идентификация устройств, подключенных к вашей системе. Это может быть жесткий диск вашего компьютера, внешний жесткий диск или съемный носитель, такой как USB-накопитель или карта памяти SD.

Использование USB-накопителей для передачи файлов сегодня очень распространено, и для тех (новых пользователей Linux), которые предпочитают использовать командную строку, очень важно изучить различные способы определения имени USB-устройства, когда вам нужно его отформатировать.

Рекомендуем прочитать: 3 способа удалить все файлы в каталоге

После подключения устройства к вашей системе, например USB, особенно на рабочем столе, оно автоматически монтируется в заданный каталог, обычно в / media /username/device-label , и вы сможете получить доступ к файлам в нем из этого каталога. Однако это не относится к серверу, где вам нужно вручную монтировать устройство и указывать его точку монтирования.

Linux идентифицирует устройства, используя специальные файлы устройств, хранящиеся в /dev каталог. Некоторые из файлов, которые вы найдете в этом каталоге, включают

/dev/sda или /dev/hda , которые представляют ваш первый главный диск, каждый раздел будет представлен номером, например /dev/sda1 или /. dev/hda1 для первого раздела и так далее.

 $ лс /dev/sda*
 
Список всех имен устройств Linux

Теперь давайте узнаем имена устройств с помощью различных инструментов командной строки, как показано ниже:

Узнайте имя подключенного USB-устройства с помощью команды df

Чтобы просмотреть каждое устройство, подключенное к вашей системе, а также его точку подключения, вы можете использовать команду df (проверяет использование дискового пространства Linux), как показано на рисунке ниже:

 $ df -h
 
Найдите имя USB-устройства с помощью команды df

Используйте команду lsblk для поиска имени USB-устройства

Вы также можете использовать команду lsblk (список блочных устройств), которая выводит список всех блочных устройств, подключенных к вашей системе, например:

 $ lsblk
 
Список блочных устройств Linux

Определение имени USB-устройства с помощью утилиты fdisk

fdisk — мощная утилита, которая распечатывает таблицу разделов на всех ваших блочных устройствах, включая USB-накопитель, вы можете запустить ее с правами суперпользователя следующим образом:

 $ sudo fdisk -l
 
Список таблиц разделов блочных устройств

Определение имени USB-устройства с помощью команды dmesg

dmesg — важная команда, которая печатает или управляет кольцевым буфером ядра, структурой данных, в которой хранится информация об операциях ядра.

Запустите команду ниже, чтобы просмотреть сообщения о работе ядра , которые также будут печатать информацию о вашем USB-устройстве:

 $ dmesg
 
dmesg — выводит имя USB-устройства

На этом пока все. В этой статье мы рассмотрели различные подходы к тому, как узнать имя USB-устройства из командной строки. Вы также можете поделиться с нами любыми другими методами для той же цели или, возможно, поделиться своими мыслями о статье в разделе ответов ниже.

Отзывы об учебнике…
Была ли эта статья полезной? Если вы не нашли эту статью полезной или обнаружили устаревшую информацию, проблему или опечатку, оставьте ценный отзыв или предложения в комментариях, чтобы помочь улучшить эту статью…

Если вы цените то, что мы делаем здесь, на TecMint, вам следует подумать:

TecMint — это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! искать или просматривать тысячи опубликованных статей, доступных всем БЕСПЛАТНО.

Если вам нравится то, что вы читаете, пожалуйста, купите нам кофе (или 2) в знак признательности.

Мы благодарны за вашу бесконечную поддержку.

Как загрузить и запустить версию USBView для Windows (средство просмотра USB-устройств)

спросил

Изменено 3 года, 8 месяцев назад

Просмотрено 48 тысяч раз

Я установил версию USBView для Windows (средство просмотра USB-устройств) как часть гораздо большего набора инструментов. Установщик установил на мой компьютер глубокое дерево из множества каталогов, но, похоже, не добавил USBView в мое меню «Пуск». Совершенно не очевидно, как запустить утилиту.

Как правильно загрузить и установить версию USBView для Windows (средство просмотра USB-устройств)? Кроме того, как я могу запустить его?

  • windows
  • usb
  • загрузка
  • аппаратное обнаружение

1

Нет необходимости устанавливать какой-либо Microsoft DDK или SDK или какой-либо другой пакет средств разработки Microsoft. Существует бесплатная производная программа, поддерживаемая Уве Зибером, под названием USBTreeView. Зайдите туда, скачайте, разархивируйте и просто запустите. Это всего ~ 300 килобайт. Он основан на том же открытом исходном коде Microsoft, но намного лучше, с большей функциональностью и меньшим количеством ошибок.

5

Загрузите и установите средства отладки для Windows. Этот набор инструментов занимает несколько сотен мегабайт, но он также включает в себя другие полезные инструменты, такие как WinDbg.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *