Разное

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

Содержание

Ограничение доступа к USB накопителям

Примеры выбора устройств по определенным свойствам
Запрет автомонтирования с параметром UDISKS_IGNORE
Создание белого списка с параметром UDISKS_IGNORE
Запрет автомонтирования с параметром authorized
Создание белого списка с параметром authorized

 

Алгоритм создания белого списка USB-флеш-накопителей состоит из 2 этапов:

Вариант 1:

  1. Запрет монтирования всех USB-флеш-накопителей
  2. Разрешение монтирования некоторых устройств

Вариант 2:

  1. Разрешение монтирования некоторых устройств
  2. Запрет монтирования всех иных USB-флеш-накопителей

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

Примеры выбора устройств по определенным свойствам

Для создания белого списка USB-флеш-накопителей, нужно знать атрибуты накопителя.

1) Определяем нашу флешку:

ls -l /dev/sd*
brw-rw---- 1 root disk 8, 0 июн 30 12:59 /dev/sda brw-rw---- 1 root disk 8, 1 июл 22 12:59 /dev/sda1 brw-rw---- 1 root disk 8, 2 июл 22 12:59 /dev/sda2 brw-rw---- 1 root disk 8, 3 июн 30 12:59 /dev/sda3 brw-rw---- 1 root disk 8, 16 июл 22 13:43/dev/sdb # нужная нам строка brw-rw---- 1 root disk 8, 17 июн 30 13:43 /dev/sdb1

2) Смотрим атрибуты (символы после sd* вводите в соответствии с вашим выводом ls -l /dev/sd*):

udevadm info -a -p /sys/block/sdb

Запрет автомонтирования с параметром UDISKS_IGNORE

Для отключения автомонтирования USB-флеш-накопителей нужно будет создать правило для udev.

Создаем файл /etc/udev/rules.d/99-usb.rules

nano /etc/udev/rules.d/99-usb.rules

со следующим содержанием:

ENV{ID_USB_DRIVER}=="usb-storage",ENV{UDISKS_IGNORE}="1"

Флаг ENV{UDISKS_IGNORE} отвечает за «Игнорировать ли устройство». “0” – false, “1” — true

Для того, чтобы новое правило вступило в силу, нужно ввести команду обновления правил udev

sudo udevadm control --reload-rules

После этого, можете проверить и подключить USB-флеш-накопитель, как результат, он не откроется.

Создание белого списка с параметром UDISKS_IGNORE

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

udevadm info -a -p /sys/block/sdb | grep serialudevadm info -a -p /sys/block/sdb | grep modeludevadm info -a -p /sys/block/sdb | grep bMaxPower

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

ATTRS{serial}=="04GS1F3LBIBDWU05"
ATTRS{model}=="Silicon-Power8G "ATTRS{bMaxPower}=="200mA"

Запишем эти значения в файл правил в качестве разрешающих

Конечный вариант файла /etc/udev/rules. d/99-usb.rules:

ENV{ID_USB_DRIVER}=="usb-storage",ENV{UDISKS_IGNORE}="1"
ATTRS{serial}=="04GS1F3LBIBDWU05",ENV{UDISKS_IGNORE}="0"
ATTRS{model}=="Silicon-Power8G ",ENV{UDISKS_IGNORE}="0"
ATTRS{bMaxPower}=="200mA",ENV{UDISKS_IGNORE}="0"

Здесь:

1 - блокируем все usb-накопители
0 - разрешаем накопитель по определенным свойствам.

Для того чтобы новое правило вступило в силу, нужно ввести команду обновления правил udev

sudo udevadm control --reload-rules

Полный список атрибутов, по которым можно осуществить выборку, находится в выводе команды:

udevadm info -a -p /sys/block/sdb

Запрет автомонтирования с параметром authorized

Для отключения автомонтирования USB-флеш-накопителей нужно будет создать правило для udev и исполняемый скрипт запрета монтирования USB-флеш-накопителей.

Создадим скрипт:

nano /usr/bin/remove_usb.sh
#!/bin/bashvar=$1var2=$(echo $1 | sed 's/.*usb[[:digit:]]//' | sed 's/[a-z]. *//'| sed 's/[0-9]-[0-9].//')echo 0 > '/sys/bus/usb/devices'$var2'authorized'

Измените права на скрипт:

chmod +x /usr/bin/remove_usb.sh

Параметр authorized отвечает за монтирование USB-флеш-накопителя в момент подключения к ПК.

Создаем файл /etc/udev/rules.d/99-usb.rules

nano /etc/udev/rules.d/99-usb.rules

со следующим содержанием:

ENV{ID_USB_DRIVER}=="usb-storage",RUN+="/bin/sh -c '/usr/bin/remove_usb.sh $devpath'"

Для того, чтобы новое правило вступило в силу, нужно ввести команду обновления правил udev

sudo udevadm control --reload-rules

После этого, можете проверить и подключить USB-флеш-накопитель, как результат, он не откроется.

Создание белого списка с параметром authorized

Выборка по серийному номеру устройства

ATTRS{serial}=="0DM97KDQ", GOTO="dont_remove_usb"

Выборка по названию модели. Точное название смотрите в выводе команды

udevadm info -a -p /sys/block/sdb
ATTRS{model}=="Transcend 16GB ", GOTO="dont_remove_usb"

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

udevadm info -a -p /sys/block/sdb | grep "ATTRS{serial}"
udevadm info -a -p /sys/block/sdb | grep "ATTRS{model}"

Конечный вариант файла /etc/udev/rules. d/99-usb.rules:

ACTION!="add", GOTO="dont_remove_usb" 
ENV{ID_USB_DRIVER}!="usb-storage", GOTO="dont_remove_usb" 
ATTRS{model}=="Transcend 16GB ", GOTO="dont_remove_usb" 
ATTRS{serial}=="0DM97KDQ", GOTO="dont_remove_usb" 
ENV{ID_USB_DRIVER}=="usb-storage", RUN+="/bin/sh -c '/usr/bin/remove_usb.sh $devpath'" 
LABEL="dont_remove_usb"

Логика данного правила отлична от первого варианта. В 1 варианте происходило блокирование сразу всех usb флеш-накопителей  и лишь потом разграничение на белый список шло. В данном варианте сначала происходит разграничение на белый список.  Только потом добавление устройства в черный список. Такое действие связано с тем, что параметр authorizedпоявляется в момент монтирования и если его изменить в 0, то далее он становится недоступен. Соответственно, сначала требуется проверить подходит флешка под белый список и если да, то разрешить ей монтирование.

Для того, чтобы новое правило вступило в силу, нужно ввести команду обновления правил udev

sudo udevadm control --reload-rules

Полный список атрибутов, по которым можно осуществить выборку, находится в выводе команды:

udevadm info -a -p /sys/block/sdb

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

Отключение CD-ROM

Настройка протоколирования событий подключения usb накопителей

Самые быстрые способы исправить проблемы с USB-устройствами или портами в Linux

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

Чем это вызвано? Почему Linux не обнаруживает? Подключенные устройства? Это про Linux или это ваше USB-устройство прекратить работу?

USB-устройства не работают в Ubuntu?

USB-накопители , картридеры, телефоны,медиаплееры , и периферийные устройства мультимедиа … все они полезны, но если есть проблема с USB-порт или операционная система, она не будет работать, как раньше. Это может быть особенно неприятно, если вы используете Клавиатура Bluetooth (Вот почему вам не следует) или мышь (с USB-концентратором), потому что это означает поиск альтернативных проводных USB-устройств.

Однако это может быть не тот порт, который не работает. Возможно, на используемом USB-устройстве возникла ошибка, из-за которой устройство невозможно обнаружить.

может иметь дело с Проблемы с USB Выявить неисправность и произвести необходимый ремонт сложно, но возможно.

Чтобы решить проблемы с USB в Linux, необходимо выполнить пять шагов:

  • Убедитесь, что USB-устройство определено правильно.
  • Сделайте необходимый ремонт портов.
  • Отремонтировать или заменить USB-устройства
  • Перезагрузите операционную систему Linux.
  • Убедитесь, что у вас есть правильные драйверы устройств.

Давайте по очереди рассмотрим каждый из этих шагов и узнаем, как работать с USB-устройствами, которые Не обнаружен в Linux.

1. Определяется ли ваше устройство Linux?

Первое, что нужно проверить при вставке USB-устройства в Компьютер Linux Ваш — независимо от того, обнаружен он или нет. Оповещение об обнаружении нового USB-устройства обычно не так заметно или слышно, как в Windows или macOS, что означает, что часто вам необходимо проверить, было ли устройство обнаружено операционной системой.

К счастью, это просто.

Сначала отключите USB-устройство, для которого требуется диагностика. Затем откройте Терминал и введите команду для отображения списка USB-устройств:

lsusb

Запишите результаты, затем подключите USB-устройство и запустите lsusb снова.

На этот раз вы должны увидеть в списке дополнительное устройство с Идентификатор автобуса و Идентификатор устройства ، USB-идентификатор и описание. Если вы не можете понять, что это за дополнительное устройство (у вас может быть внутреннее USB-устройство, возможно, Ethernet), попробуйте что-нибудь другое.

dmesg | grep -i USB

Так и будет dmesg Перечисляет USB-устройства, подключенные к вашей системе. Он также будет включать устройства без USB, но, к сожалению, информации будет очень много. Чтобы обойти это, вы можете попробовать:

dmesg | less

Наконец, вы можете рассчитывать на гораздо более удобную команду:

usb-devices

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

Итак, USB здесь в списке? Если нет, это может быть Порт поврежден Или возникла проблема с USB-устройством. Точно так же USB-устройство может быть несовместимо с Linux.

2. Как проверить свой USB-порт

Если USB-устройство не отображается, это может быть связано с проблемой с USB-портом.

Лучший способ быстро проверить это — просто использовать другой порт USB на том же компьютере. Если теперь USB-устройство обнаружено, значит, у вас проблема с другим USB-портом.

Если нет другого доступного порта USB, вам нужно будет попробовать USB-устройство на другом ПК или ноутбуке. Однако это может быть не идеально, в качестве альтернативы у вас может быть только компьютер с Windows или macOS. Поскольку некоторые USB-устройства нельзя использовать в Linux, будет сложно проверить, является ли устройство USB или USB-порт причиной этих проблем.

Для достижения наилучших результатов при поиске и устранении неисправностей USB-устройств по возможности используйте Linux-совместимое оборудование. Нет времени устанавливать Linux на другой компьютер? Вместо этого рассмотрите возможность подтверждения статуса ваших USB-устройств с помощью недорогой Raspberry Pi Zero.

3. Восстановите поврежденные USB-устройства.

Если ваши USB-устройства неисправны, у вас есть два варианта: отремонтировать или заменить.

Ремонт обычно включает проверку Разъем USB , а также устройство, которое в данный момент не работает. Исправления всегда касаются USB-кабеля и порта на компьютере. Кабели USB обычно можно заменить, а порты — отремонтировать.

Хорошая идея — физический осмотр USB-оборудования. тросы должны быть прочными, без разрывов; Заглушки должны быть прочными, не двигаться вперед-назад, металлическая часть должна быть надежно закреплена.

Между тем, порты USB следует проверять при выключенном компьютере и отключении его от сети. Убедитесь, что порты надежно закреплены. Колебание портов USB указывает на то, что проблема в них.

Если порт USB переместился, вы можете припаять его на место. Конечно, вы уже должны знать, как паять.

Также проверьте наличие пыли и грязи в портах USB, особенно на задней панели компьютера, где регулярно собирается пыль. Пыль — враг компьютеров, поэтому для повышения производительности стоит хранить вашу систему в непыльной среде. Поскольку пыль может попасть на ваш компьютер через разъемы USB, не забывайте поддерживать эти порты в чистоте. Используйте баллончик со сжатым воздухом для рассеивания пыли и грязи.

Можете ли вы заменить свое USB-устройство? Если он новый. Проблема в том, что если он явно не помечен как работающий под Linux, продавец вряд ли примет обмен или возврат. Возможно, вам придется быть немного избирательным в отношении фактов, которыми вы с ним поделитесь …

4. Перезагрузите Linux, чтобы восстановить порт USB.

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

Так что ты можешь сделать?

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

Следующий шаг — убедиться, что этого больше не повторится. Следующие приемы командной строки предназначены для Ubuntu 18.10, поэтому проверьте правильность процедуры на Дистрибутив Linux твой любимый.

Откройте Терминал и введите:

cat /sys/module/usbcore/parameters/autosuspend

Это должно вернуть значение 2 , что означает, что выбор Автоприостановка Может быть. Вы можете исправить это, отредактировав файл Grub. Введите команду:

sudo nano /etc/default/grub

Здесь ищите:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Вы должны изменить эту строку на:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash usbcore.autosuspend=-1"

Нажмите на Ctrl + X Чтобы сохранить файл, затем выход. После этого обновите личинка:

sudo update-grub

Когда это будет завершено, перезапустите Ubuntu.

После перезагрузки войдите в свою учетную запись и снова введите команду cat:

cat /sys/module/usbcore/parameters/autosuspend

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

5. Проверьте драйверы USB-устройств в Linux.

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

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

Если драйвер недоступен, вы, вероятно, сможете найти его, связавшись с производителем USB-устройства.

Устранение проблем с USB в Linux: исправлено!

Со встроенными драйверами и обширной поддержкой многих типов USB-устройства Выявить проблемы с USB-устройствами вашего компьютера должно быть легко.

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

Если у вас есть Вы недавно перешли с Windows Попасть в проблемы с USB в Linux может быть непросто. К счастью, эти проблемы обычно легко решаются, что помогает сделать Перейти на Linux Легкий!

Источник

USB Redirector для Linux — Поделитесь USB через сеть в Linux

Этот бесплатный продукт позволяет обмениваться и получать доступ к USB-устройствам удаленно на платформе Linux. Это решение совместимо со всеми нашими продуктами. Это позволяет подключать USB-устройства с компьютеров под управлением Linux или Windows. Используя специальный патч для проекта с открытым исходным кодом rdesktop,вы можете подключить USB-устройства к серверу терминалов, на котором установлены USB Redirector RDP Edition или USB Redirector TS Edition.

Скачать сейчас | Руководство по запросу Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript

USB Redirector для Linux позволяет:
  • Перенаправить USB-устройства на виртуальную машину
  • Организация USB-сервера для пользователей в вашей локальной или корпоративной сети
  • Используйте USB-устройства, подключенные к тонкому клиенту Linux, в сеансе удаленного рабочего стола Windows
  • Используйте USB-устройства, подключенные к удаленному компьютеру под управлением Windows
  • Ограничьте физический доступ к USB-устройствам, но сделайте их доступными для пользователей в вашей сети

Сравнить выпуски USB Redirector

Как начать:

USB Redirector для Linux может быть установлен в трех режимах:

  • Режим USB-сервера . При установке в этом режиме USB Redirector позволяет совместно использовать ваши USB-устройства для доступа на удаленных компьютерах с операционными системами Linux или Windows;

  • Режим USB-клиента . При установке в этом режиме USB Redirecror позволяет подключать удаленные USB-устройства, которые использовались на удаленных компьютерах совместно с операционными системами Linux или Windows;

  • И USB-сервер, и USB-клиент . Вы можете предоставить общий доступ к своим USB-устройствам для удаленного доступа или подключить USB-устройства с удаленных компьютеров с операционными системами Linux или Windows.
Перенаправление USB-устройства в пять шагов:
  • Шаг 1.
    Установите USB Redirector для Linux в режиме USB-сервера на компьютер, на котором физически подключено USB-устройство, которое необходимо перенаправить. Этот компьютер будет USB-сервером .

. /installer.sh install-server


  • Шаг 2 : Поделитесь необходимым USB-устройством на USB-сервере:

./usbsrv -list


./usbsrv -share 8


  • Шаг 3 Теперь перейдите к компьютеру, на котором вам необходимо удаленно использовать USB-устройство, и установите USB Redirector для Linux в режиме USB-клиента. Этот компьютер будет USB-клиентом .

./installer.sh install-client


  • Шаг 4 Создайте прямое соединение с USB-клиента на USB-сервер (также можно использовать обратное соединение с USB-сервера на USB-клиент ).

./usbclnt -addserver 192.168.1.105:32032


  • Шаг 5 В списке удаленных USB-устройств выберите нужное и подключите его:

./usbclnt -list


./usbclnt -connect 1-8


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

Кроссплатформенные функции и поддержка удаленного рабочего стола:

USB Redirector для Linux совместим с USB Redirector, USB Redirector RDP Edition и USB Redirector TS Edition. Это означает, что вы можете свободно обмениваться USB-устройствами между системами Linux и Windows без каких-либо ограничений.

Можно перенаправить USB-устройства через RDP-соединение с тонкого клиента Linux на Windows Terminal Server (RD Sesssion Host). Для этого вам нужно использовать один из совместимых клиентов RDP. Мы поддерживаем самые популярные клиенты Linux Remote Desktop с открытым исходным кодом, rdesktop и FreeRDP . Мы предоставляем исправления для этих клиентов RDP, которые добавляют поддержку перенаправления USB через RDP.

После установки USB Redirector для Linux вам необходимо применить специальный патч, который поставляется внутри установочного пакета USB Redirector в каталоге rdp / rdesktop :

  • скопируйте usbrdr.c и usbrdr.patch в каталог исходного кода rdesktop
  • запустить патч -p3 -i usbrdr.patch
  • перекомпилируйте и переустановите пропатченный rdesktop
  • Запустите rdesktop с опцией -r usbrdr .

./rdesktop -r usbrdr терминал.сервер.хост



Системные Требования:

USB Redirector для Linux работает на следующих дистрибутивах Linux:

  • Debian 6 и новее
  • Fedora 10 и новее
  • Gentoo 10.1 и новее
  • openSUSE 11.1 и новее
  • RedHat 6 и новее
  • Ubuntu 8.10 и новее
  • Другие системы, которые отвечают следующим требованиям:
    • Ядро с версии 2.6.27 до 5.1
    • glibc 2.9 или новее, uclibc или musl libs
    • подсистема udev
    • Файловая система для чтения и записи ( не только для чтения )
    • Исходный код ядра или заголовки ядра необходимы для установки
  • Старые системы поддерживаются в предыдущих выпусках USB Redirector благодаря обратной совместимости его протокола

Поддерживаемые архитектуры:

  • x86
  • x86_64 (amd64)
  • Arm
  • MIPS

Подключение USB-устройств | Microsoft Learn

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 3 мин

В этом руководстве описаны действия, необходимые для подключения USB-устройства к дистрибутиву Linux, работающему в WSL 2, с помощью проекта с открытым исходным кодом USB/IP, usbipd-win.

Настройка проекта USB/IP на компьютере Windows позволит реализовать распространенные сценарии USB разработчика, такие как мигание Arduino или доступ к средству чтения смарт-карт.

Предварительные требования

  • Выполнение Windows 11 (сборка 22000 или более поздняя версия). (Windows 10 поддержка возможна, см. примечание ниже.
  • Требуется компьютер с процессором x64/x86. (Arm64 в настоящее время не поддерживается с usbipd-win).
  • Дистрибутив Linux установлен и установлен в WSL 2.
  • Запуск ядра Linux 5.10.60.1 или более поздней версии.

Примечание

Чтобы проверить версию и номер сборки Windows, нажмите клавиши WINDOWS+R, введите winver и щелкните ОК. Вы можете выполнить обновление до последней версии Windows, выбрав Пуск>Параметры>Центр обновления Windows>Проверить наличие обновлений. Чтобы проверить версию ядра Linux, откройте дистрибутив Linux и введите команду: uname -a. Чтобы вручную обновить ядро до последней версии, откройте PowerShell и введите команду wsl —update.

Важно!

Windows 11 рекомендуется подключать USB-устройства к дистрибутиву Linux, работающему на WSL 2. Однако Windows 10 можно использовать для подключения USB-устройств путем создания собственного ядра WSL 2 с поддержкой USBIP, следуя инструкциям в репозитории проекта USBIP-WIN.

Установка проекта USBIPD-WIN

Поддержка подключения USB-устройств в WSL изначально недоступна, поэтому вам потребуется установить проект с открытым кодом usbipd-win.

  1. Перейдите на последнюю страницу выпуска проекта usbipd-win.
  2. Выберите файл .msi, который скачивает установщик. (Вы можете получить предупреждение с просьбой подтвердить, что вы доверяете этому скачиванию).
  3. Запустите скачанный файл установщика usbipd-win_x.msi.

Примечание

Кроме того, можно установить проект usbipd-win с помощью Диспетчер пакетов Windows (winget). Если вы уже установили winget, просто используйте команду: winget install --interactive --exact dorssel. usbipd-win чтобы установить usbipd-win. Если выйти из режима —interactive, winget может немедленно перезагрузить компьютер, если это необходимо для установки драйверов.

Будет установлено:

  • Служба называется usbipd (отображаемое имя: узел устройства USBIP). Состояние этой службы можно проверить с помощью приложения «Службы» из Windows.
  • Программа usbipdкомандной строки. Расположение этого средства будет добавлено в переменную среды PATH.
  • Правило брандмауэра, вызываемое usbipd для разрешения подключения всех локальных подсетей к службе. Это правило брандмауэра можно изменить, чтобы настроить управление доступом.

Установка средств USBIP и аппаратной базы данных в Linux

После завершения установки проекта USB/IP необходимо установить средства пользовательского пространства и базу данных идентификаторов оборудования USB. Эти инструкции предназначены для Ubuntu— для других дистрибутивов может потребоваться другой пакет клиента USBIP.

В Ubuntu выполните следующую команду:

sudo apt install linux-tools-5.4.0-77-generic hwdata
sudo update-alternatives --install /usr/local/bin/usbip usbip /usr/lib/linux-tools/5.4.0-77-generic/usbip 20

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

Подключение USB-устройства

Перед подключением USB-устройства убедитесь, что командная строка WSL открыта. Это приведет к активной виртуальной машине WSL 2.

  1. Выведите список всех USB-устройств, подключенных к Windows, открыв PowerShell в режиме администратора и введя команду:

    usbipd wsl list
    
  2. Выберите идентификатор шины устройства, которое вы хотите подключить к WSL, и выполните следующую команду. WSL запросит пароль для выполнения команды sudo. Подключенный дистрибутив Linux должен быть дистрибутивом по умолчанию. (Чтобы изменить дистрибутив по умолчанию, ознакомьтесь с основными comands for WSL .

    usbipd wsl attach --busid <busid>
    
  3. Откройте Ubuntu (или предпочитаемую командную строку WSL) и перечислите подключенные USB-устройства с помощью команды:

    lsusb
    

    Вы увидите только что подключенное устройство и сможете взаимодействовать с ним с помощью обычных средств Linux. В зависимости от приложения может потребоваться настроить правила udev, чтобы разрешить пользователям, не являющиеся корневыми, доступ к устройству.

  4. После завершения работы с устройством в WSL можно физически отключить USB-устройство или выполнить эту команду из PowerShell в режиме администратора :

    usbipd wsl detach --busid <busid>
    

Дополнительные сведения о том, как это работает, см. в блоге Windows командной строки и репозитории usbipd-win на GitHub.

Демонстрацию видео см. в статье WSL 2: Подключение USB-устройства (вкладки и пробелы).

утилита расширенной аналитики использования USB-устройств в Linux

В этой статье рассказывается об инструменте Usbrip, который позволяет автоматизировать отслеживание истории использования USB-устройств в системе.

Вступление

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

  • /var/log/dmesg
  • /var/log/daemon.log
  • /var/log/kern.log
  • /var/log/syslog
  • /var/log/messages

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

О Usbrip

Usbrip — это инструмент для проведения расследований по истории использования USB-устройств в Linux. Он анализирует данные журнала вашей системы с помощью команды journelctl а также черпает информацию из файлов журналов системы, таких как /var/log/syslog, /var/log/messages и отображает собранную историю событий USB в стандартном выводе или файле.

Программа usbrip отслеживает характеристики USB-устройств и отображает их в следующих столбцах:

  • Connected (Дата и время подключения)
  • Host (Хост)
  • VID (vendor ID) (идентификатор производителя)
  • PID (product ID) (идентификатор продукта)
  • Product (Имя устройства)
  • Manufacturer (Производитель)
  • Serial Number (Серийный номер)
  • Port (Порт)
  • Disconnected (Дата и время отключения)

Usbrip — это бесплатный инструмент с открытым исходным кодом, написанный на Python 3. Для тех, кому интересно, название Usbrip образовано от двух слов — USB и Ripper.

Возможности Usbrip

Usbrip имеет несколько интересных функций. Отметим следующие три примечательные особенности.

1. Поиск информации об использовании в системе несанкционированных USB устройств

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

Usbrip позволяет экспортировать полученные данные по USB-соединениям в JSON файл. Почему используется именно JSON формат? Потому что он позволяет легко найти любые «несанкционированные события». Например, например можно создать файл, скажем auth.json, и сохранить в нем список авторизованных или доверенных USB-устройств.

Этот auth.json файл можно использовать, чтобы выяснить, какие USB-устройства были подключены и являются ли они авторизованными устройствами. Таким образом можно узнать, скопировал ли какой-либо пользователь что-то из вашей системы без вашего разрешения.

Обратите внимание, что если вы устанавливаете usbrip с помощью сценария установщика, auth.json файл будет автоматически создан в папке /var/opt/usbrip/trusted/, то есть в том же месте куда устанавливается программа. Однако есть возможность выбрать произвольный каталог размещения для auth.json

2. Отображение подробных характеристик USB устройств

Если требуется узнать подробные технические характеристики USB-устройств, это можно сделать зная VID и PID устройства. Usbbrip черпает подробную информацию о поставщиках, устройствах и производимых моделях из usb.ids из публичной базы данных.

3. Резервное копирование событий USB

Если вы вручную установили Usbrip с опцией -s (—storages), вы можете автоматически создавать резервные копии событий USB с помощью планировщика crontab.

Давайте посмотрим, как установить и использовать Usbrip в Linux для сбора событий USB-подключения.

Установка Usbrip в Linux

Поскольку Usbrip написан на Python, мы можем установить его с помощью диспетчера пакетов Pip.

$ pip install usbrip

Но есть одно «но» — если установить usbrip с помощью pip, некоторые функции будут недоступны.

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

Во-первых, убедитесь, что вы установили необходимые зависимые пакеты:

  • python3-venv
  • p7zip

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

$ sudo apt install python3-venv p7zip-full

Теперь приступим к установке самой программы. Загрузите репозиторий usbrip:

$ git clone https://github.com/snovvcrash/usbrip.git usbrip

Приведенная выше команда клонирует содержимое репозитория usbrip и сохраняет его в каталоге с именем «usbrip» в текущем каталоге.

Переходим в каталог usbrip:

$ cd usbrip

Делаем скрипт установщика исполняемым:

$ chmod +x ./installers/install.sh

И, наконец, запускаем установщик при помощи команды:

$ sudo -H ./installers/install.sh -s

Здесь мы использовали -s флаг для включения модуля хранения. Это не только установит программу usbrip, но и создаст список доверенных USB-устройств, историю и также базу несанкционированных событий. В ходе установки устанавливается секретный пароль. Он будет использован при дальнейшем использовании программы.

После завершения установки можно удалить клонированный каталог:

$ cd
$ rm -r usbrip/

Как отобразить историю событий USB-устройств с помощью Usbrip в Linux

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

1. Получение помощи

Чтобы просмотреть раздел справки программы Usbrip, просто запустите:

$ usbrip --help

Результат данной команды:

usage: usbrip [-h] {banner,events,storage,ids} ...

positional arguments:
  {banner,events,storage,ids}
    banner show tool banner
    events work with USB events
    storage work with USB event storage
    ids work with USB IDs

optional arguments:
  -h, --help show this help message and exit

Как вы можете увидеть, есть четыре основные команды, а именно banner, events, storage и ids.

Чтобы просмотреть список возможностей данных команд, запустите:

$ usbrip <command> --help

Пример:

$ usbrip events --help

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

$ usbrip events genauth --help

2. Просмотр истории подключений USB-устройств.

Чтобы показать историю подключений USB-устройств, запустите:

$ usbrip events history

Вам будет предложено отобразить историю событий USB в консоли или сохранить в файле JSON. Если вы хотите отобразить результат, просто нажмите ENTER (по умолчанию) или введите цифру 2, чтобы сохранить его в файле JSON.

Выберем вывод по умолчанию и получаем следующее:

         _     {{4}}    {v2.2.2-1}
 _ _ ___| |_ ___[e]___ 
| | |_ -| . |  _[n] . |
|___|___|___|_| [5]  _|
               x[1]_|   https://github.com/snovvcrash/usbrip
                       

[*] Started at 2021-03-27 14:28:31
[14:28:31] [INFO] Trying to run journalctl. ..
[14:29:10] [INFO] Successfully runned journalctl
[14:29:11] [INFO] Reading journalctl output
100%|█████████████████████████████| 912197/912197 [00:04<00:00, 188838.07line/s] [?] How would you like your event history list to be generated? 1. Terminal stdout 2. JSON-file [>] Please enter the number of your choice (default 1): 1
[14:29:48] [INFO] Preparing collected events
[14:29:48] [WARNING] Terminal window is too small to display table properly
[14:29:48] [WARNING] Representation: list

USB-History-Events
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Connected:      2020-12-26 21:24:23
Host:           ostechnix
VID:            0cf3
PID:            3002
Product:        ∅
Manufacturer:   ∅
Serial Number:  ∅
Bus-Port:       1-1.4
Disconnected:   2020-12-26 21:24:24
.
.
.
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Connected:      2021-03-27 11:52:19
Host:           ostechnix
VID:            046d
PID:            c52b
Product:        USB Receiver
Manufacturer:   Logitech
Serial Number:  ∅
Bus-Port:       1-1. 2
Disconnected:   ∅
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
[*] Shut down at 2021-03-27 14:29:48
[*] Time taken: 0:01:17.624936

По умолчанию Usbrip отображает результат табличном формате. Если окно терминала слишком мало для правильного отображения таблицы, вывод отображается в формате списка. Если вы хотите, чтобы Usbrip все равно отображал результат в формате таблицы добавьте ключ -t:

$ usbrip events history -t

Вы можете настроить вывод по своему вкусу. В следующем примере используем флаг -q/—quiet для исключения WARNING сообщений терминала. Опция -l/—list используется для отображения вывода в формате списка, опция -n/—number позволяет задать количество значений для вывода.

$ usbrip events history -ql -n 2

Приведенная выше команда покажет только 2 последних события истории USB без отображения WARNING и других информационных сообщений в терминале.

Пример вывода:

100%|█████████████████████████████| 912890/912890 [00:05<00:00, 159754. 38line/s]

USB-History-Events
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Connected: 2021-03-27 10:16:08
Host: ostechnix
VID: 0cf3
PID: 3005
Product: ∅
Manufacturer: ∅
Serial Number: ∅
Bus-Port: 1-1.4
Disconnected: ∅
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Connected: 2021-03-27 11:52:19
Host: ostechnix
VID: 046d
PID: c52b
Product: USB Receiver
Manufacturer: Logitech
Serial Number: ∅
Bus-Port: 1-1.2
Disconnected: ∅
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

3. Как сохранить историю USB событий в файле

Вместо того, чтобы отображать историю событий в стандартном выводе, мы можем сохранить ее в файл в формате JSON.

Для этого запустите следующую команду:

$ usbrip events history

Введите 2, когда вам будет предложено выбрать, как вы хотите сохранить вывод. Вам будет предложено ввести расположение и имя выходного файла. Просто введите местоположение по вашему выбору, а также можете просто нажать ENTER, чтобы сохранить вывод в файл с именем history. json в $HOME директорию.

_ {{4}} {v2.2.2-1}
_ _ ___| |_ ___[3]___
| | |_ -| . | _[N] . |
|___|___|___|_| [5] _|
x[1]_| https://github.com/snovvcrash/usbrip


[*] Started at 2021-03-29 11:49:40
[11:49:40] [INFO] Trying to run journalctl...
[11:49:41] [INFO] Successfully ran journalctl
[11:49:41] [INFO] Reading journalctl output
100%|███████████████████████████████| 15910/15910 [00:00<00:00, 235574.33line/s]
[?] How would you like your event history list to be generated?

1. Terminal stdout
2. JSON-file

[>] Please enter the number of your choice (default 1): 2
[>] Please enter the output file name
(default is "history.json")
:
[11:49:46] [INFO] Generating event history list (JSON)
[11:49:46] [INFO] New event history list: "/home/ostechnix/history.json"
[*] Shut down at 2021-03-29 11:49:46
[*] Time taken: 0:00:05.852216

Вы можете просмотреть содержимое полученного файла использовав команду:

$ usbrip events open history. json

4. Отображение истории событий внешних USB-устройств

Чтобы показать историю подключений внешних устройств, используйте флаги -e, —external:

$ usbrip events history -q -e

5. Отображение истории USB событий за определенный период времени

Мы можем использовать флаг -d, —date для просмотра истории USB устройств в заданный промежуток времени. Например, следующая команда отображает историю событий, которые произошли с января 2021 года по март 2021 года:

$ usbrip events history -q -d '2021-01-01' '2021-03-29'

6. Отображение информации о конкретном USB устройстве

Возможно, вам будет интересно просмотреть события USB-подключений по определенному устройству. Следующая команда предоставит вам короткую информацию с перечнем устройств, которая содержит только колонки «Connected», «Disconnected», «Serial» и «Product»:

$ usbrip events history -q -c conn disconn serial prod -n 20

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

7. Поиск информации о конкретных USB-устройствах

Возможно, вам будет интересно просмотреть историю событий определенного устройства. Для этого вы можете использовать флаг —manufact:

В следующем примере отобразим 15 недавних событий моего беспроводного приемника Logitech. Я также перечислил детали только в 4 столбцах, а именно: «Connected», «Disconnected», «Serial» и «Product».

$ usbrip events history -q -c conn disconn serial prod --manufact Logitech -n 15

Точно так же вы можете фильтровать события USB, объединив множество полей, таких как PID, VID, порт, имя хоста, серийный номер и т. д.

8. Создание списка доверенных USB-устройств

Чтобы создать список авторизованных USB-устройств, используйте опцию authgen:

$ sudo usbrip events genauth ~/auth.json -a vid pid -n 10 -d '2021-03-29'

Эта команда генерирует список доверенных USB-устройств в виде файла JSON с именем auth.json содержащем информацию о первых 10 устройствах, подключенных с 29 марта 2021 года. Этот файл будет содержать сведения об атрибутах VID и PID.

9. Поиск нарушений безопасности

Если вы хотите проверить наличие несанкционированного доступа к USB, просто найдите auth.json файл, который был создан ранее:

$ sudo usbrip events violations ~/auth.json

Вы также можете фильтровать вывод по своему вкусу.

Пример:

$ sudo usbrip events violations ~/auth.json -a pid -et --host ostechnix --manufact Logitech --serial 0123456789 -c conn disconn

Эта команда будет искать в истории событий внешних USB-устройств нарушения на основе списка доверенных USB-устройств (~/auth.json) по атрибуту «PID», ограничивать результирующие события теми, у которых в качестве имени хоста указано «ostechnix», «Logitech» в качестве производителя и «0123456789» в качестве серийного номера. Выводимый результат будет представлен в форме таблицы со столбцами «Connected» и «Disconnected».

Если USB-устройство отображается в истории, но не в auth. json файле, мы можем сказать, что произошло событие нарушения политики безопасности

Дополнительные сведения об использовании Usbrip можно найти на странице проекта в GitHub.

1422500cookie-checkUSBrip — утилита расширенной аналитики использования USB-устройств в Linuxno

Автор публикации

Работа с услугой — документация Аренда USB-портов. Руководство пользователя

Работа с услугой — документация Аренда USB-портов. Руководство пользователя

Для работы с USB-портами в виртуализированной ИТ-инфраструктуре рекомендуется использовать приложение SEH UTN manager, разработанное компанией SEH. Это приложение поддерживает операционные системы:

  • Microsoft Windows 7 и выше.

  • Apple Mac OS 10.12 и выше.

  • Linux (дистрибутивы на базе DEB и RPM, 64bit), производитель рекомендует следующие версии:

    • Debian 10 и выше.

    • Ubuntu 18.04 и выше.

    • Red Hat Enterprise Linux 8 и выше.

    • Oracle Linux 8 и выше.

    • CentOS 8 и выше.

    • SUSE Linux Enterprise 15.1 и выше.

    • openSUSE Leap 15.1 и выше.

Внимание

Приложение SEH UTN manager должно быть установлено на гостевую операционную систему, на базе которой работает виртуальная машина во ВЦОД, или на выделенный сервер, доступный в рамках услуги Bare Metal.

На этой странице

  • Microsoft Windows

    • Установка приложения

    • Запуск и настройка приложения

    • Подключение USB-устройства

    • Автоматизация работы с USB-устройствами

  • Ubuntu Linux

    • Установка приложения

    • Запуск приложения

    • Подключение USB-устройства

    • Автоматизация работы с USB-устройствами

Рассмотрим работу SEH UTN manager на примере версии для Microsoft Windows. Полное руководство пользователя доступно на сайте разработчика.

Установка приложения

  1. Скачайте Windows-версию SEH UTN manager с сайта разработчика.

  2. Распакуйте архив и запустите установочный файл с правами Администратора.

  3. Выберите опцию Complete и дождитесь завершения установки приложения.

Запуск и настройка приложения

  1. Запустите приложение SEH UTN manager.

  2. При первом запуске SEH UTN manager попросит указать USB-устройства и UTN-серверы, нажмите на кнопку Yes.

  3. В меню Selection List → Edit Selection List нажмите на кнопку Scan. После завершения сканирования вы увидите список доступных устройств.

  4. В окне Edit Selection List выберите одно из найденных устройств и нажмите Add → Ok.

  5. Если не удалось найти устройство в автоматическом режиме, укажите вручную нужную сеть или диапазон сетевых адресов для сканирования, нажав на кнопку Options и зайдя на вкладку Network Scan.

  6. Чтобы добавить найденное устройство, нажмите Add → Ok.

  7. Чтобы настроить автоматический запуск SEH UTN manager вместе с операционной системой, в окне Edit Selection List нажмите на кнопку Options, выберите вкладку Automatisms и поставьте галочку в пункте Autostart.

Подключение USB-устройства

  1. Запустите приложение SEH UTN manager. В главном окне будут отображены все добавленные устройства.

  2. Выберите из списка доступных USB-устройств нужное и нажмите на кнопку Activate.

  3. Возле устройства появится статус Activated, и оно станет доступно в Проводнике Windows как обычный USB-диск.

  4. Для отключения активированного USB-устройства выберите его и нажмите на кнопку Deactivate.

Внимание

Если на подключение USB-устройства задан пароль, оно не отобразится в списке доступных для подключения. Чтобы ввести пароль, необходимо нажать правой кнопкой мыши по сетевому устройству myUTN (оно отображается в виде IP-адреса) и выбрать пункт Set USB Port Keys, а затем задать пароль в строке того USB-порта, к которому нужно получить доступ.

Автоматизация работы с USB-устройствами

Для автоматического подключения USB-диска при запуске операционной системы:

  1. Выберите необходимый диск и зайдите в меню Port → Settings в главном окне SEH UTN manager.

  2. Отметьте галочкой пункт The device connected to this port is available again after having been occupied.

Рассмотрим работу SEH UTN manager на примере версии для Ubuntu Linux. Полное руководство пользователя доступно на сайте разработчика.

Установка приложения

  1. Скачайте версию для Ubuntu Linux 64-bit в виде бинарного DEB-пакета с сайта разработчика.

  2. Распакуйте архив и запустите установку с правами суперпользователя (root).

  3. Выберите опцию Complete и дождитесь завершения установки.

Запуск приложения

  1. Запустите приложение SEH UTN manager.

  2. При первом запуске SEH UTN manager попросит указать USB-устройства и UTN-серверы, нажмите на кнопку Yes.

  3. В меню Selection List → Edit Selection List нажмите на кнопку Scan. После завершения сканирования вы увидите список доступных устройств.

  4. В окне Edit Selection List выберите одно из найденных устройств и нажмите Add → Ok.

  5. Если не удалось найти устройство в автоматическом режиме, укажите вручную нужную сеть или диапазон сетевых адресов для сканирования, нажав на кнопку Options и зайдя на вкладку Network Scan.

  6. Чтобы добавить найденное устройство, нажмите Add → Ok.

  7. Если вы не хотите, чтобы устройство было доступно постоянно, в окне Edit Selection List нажмите на кнопку Options, выберите вкладку Automatisms и в пункте Auto-Disconnect поставьте галочку. При необходимости укажите время, по истечении которого устройство будет отключаться (по умолчанию установлено значение 60 минут).

Подключение USB-устройства

  1. Запустите приложение SEH UTN manager. В главном окне будут отображены все добавленные устройства.

  2. Выберите из списка доступных USB-устройств нужное и нажмите на кнопку Activate.

  3. Возле устройства появится статус Activated, и оно будет доступно в системе Ubuntu Linux как обычный USB-диск.

  4. Для отключения активированного USB-устройства выберите его и нажмите на кнопку Deactivate.

Внимание

Если на подключение USB-устройства задан пароль, оно не отобразится в списке доступных для подключения. Чтобы ввести пароль, необходимо нажать правой кнопкой мыши по сетевому устройству myUTN (оно отображается в виде IP-адреса) и выбрать пункт Set USB Port Keys, а затем задать пароль в строке того USB-порта, к которому нужно получить доступ.

Автоматизация работы с USB-устройствами

Для автоматического подключения USB-диска при запуске операционной cистемы:

  1. Выберите необходимый диск и зайдите в меню Port → Settings в главном окне SEH UTN manager.

  2. Отметьте галочкой пункт The device connected to this port is available again after having been occupied.

Была ли эта статья полезной?

Обнаружение и монтирование USB-устройств в Linux из консоли

Изображение: Использование флешки с Linux (Лицензия: CC-BY-SA Marcelo Canina)

Монтировать флешки с командами в терминале Linux

Опубликовано:

Последнее изменение:

Обзор

порт и смонтировать его в Linux.

Мы рассмотрим различные стратегии, которые помогут, когда некоторые из инструменты недоступны.

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

Понимание

Что именно означает монтировать ?

Все файлы, доступные в системе Unix, расположены в одном большом дереве, файловая иерархия с корнем /. Эти файлы могут быть распределены по несколько устройств. Команда mount служит для подключения файловой системы найденный на каком-то устройстве в большое файловое дерево. И наоборот, umount(8) Команда снова отсоединит его. Файловая система используется для управления тем, как данные хранятся на устройстве или предоставляются виртуальным способом по сети или другие услуги.

Чтобы подключить эти новые файловые системы устройств, мы используем команду mount в форма: mount -t type device dir .

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

  1. Имя файла
    • с использованием имени файла , связанного с устройством.
    • например: /dev/sdb2
  2. Метка файловой системы
    • Использование ярлыка, связанного с устройством.
    • например: PENDRIV
  3. UUID
    • Универсальный уникальный идентификатор (UUID) Единое пространство имен ресурсов 2 .
    • Например: ba108o135-80bf-1cci-b2za-082eafd02y0g

Listing

Список смонтированных устройств/файловых систем,

findmnt.

Например, в Ubuntu 18.10 показывает:

 
$  найти 
ЦЕЛЕВОЙ ИСТОЧНИК ВАРИАНТЫ FSTYPE
//dev/mmcblk0p3 ext4 rw,relatime,errors=remount-ro
├─/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime
│ ├─/sys/kernel/security securityfs securityfs rw,nosuid,nodev,noexec,relatime
│ ├─/sys/fs/cgroup tmpfs tmpfs ro,nosuid,nodev,noexec,mode=755
│ │ ├─/sys/fs/cgroup/unified cgroup2 cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate
│ │ ├─/sys/fs/cgroup/systemd cgroup cgroup rw,nosuid,nodev,noexec,relatime,xattr,name=systemd
│ │ ├─/sys/fs/cgroup/cpu,cpuacct cgroup cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct
│ │ ├─/sys/fs/cgroup/hugetlb cgroup cgroup rw,nosuid,nodev,noexec,relatime,hugetlb
│ │ ├─/sys/fs/cgroup/blkio cgroup cgroup rw,nosuid,nodev,noexec,relatime,blkio
│ │ ├─/sys/fs/cgroup/memory cgroup cgroup rw,nosuid,nodev,noexec,relatime,memory
│ │ ├─/sys/fs/cgroup/devices cgroup cgroup rw,nosuid,nodev,noexec,relatime,devices
│ │ ├─/sys/fs/cgroup/net_cls,net_prio cgroup cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio
│ │ ├─/sys/fs/cgroup/cpuset cgroup cgroup rw,nosuid,nodev,noexec,relatime,cpuset
│ │ ├─/sys/fs/cgroup/freezer cgroup cgroup rw,nosuid,nodev,noexec,relatime,freezer
│ │ ├─/sys/fs/cgroup/pids cgroup cgroup rw,nosuid,nodev,noexec,relatime,pids
│ │ ├─/sys/fs/cgroup/perf_event cgroup cgroup rw,nosuid,nodev,noexec,relatime,perf_event
│ │ └─/sys/fs/cgroup/rdma cgroup cgroup rw,nosuid,nodev,noexec,relatime,rdma
│ ├─/sys/fs/pstore pstore pstore rw,nosuid,nodev,noexec,relatime
│ ├─/sys/firmware/efi/efivars efivarfs efivarfs rw,nosuid,nodev,noexec,relatime
│ ├─/sys/fs/bpf bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700
│ ├─/sys/kernel/debug debugfs debugfs rw,relatime
│ ├─/sys/fs/fuse/connections fusectl fusectl rw,relatime
│ └─/sys/kernel/config configfs configfs rw,relatime
├─/proc proc proc rw,nosuid,nodev,noexec,relatime
│ └─/proc/sys/fs/binfmt_misc systemd-1 autofs rw,relatime,fd=33,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=16216
├─/dev udev devtmpfs rw,nosuid,relatime,size=931092k, номер_инодес = 232773, режим = 755
│ ├─/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000
│ ├─/dev/shm tmpfs tmpfs rw,nosuid,nodev
│ ├─/dev/hugepages hugetlbfs hugetlbfs rw,relatime,pagesize=2M
│ └─/dev/mqueue mqueue mqueue rw,relatime
├─/run tmpfs tmpfs rw,nosuid,noexec,relatime,size=192560k,режим=755
│ ├─/run/lock tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k
│ ├─/run/snapd/ns tmpfs[/snapd/ns] tmpfs rw,nosuid,noexec,relatime,size=192560k,mode=755
│ │ └─/run/snapd/ns/hugo. mnt nsfs[mnt:[4026532555]]
│ │ нсфс рв
│ └─/run/user/1000 tmpfs tmpfs rw,nosuid,nodev,relatime,size=192556k,mode=700,uid=1000,gid=1000
│ └─/run/user/1000/gvfs gvfsd-fuse fuse.gvfsd-fu rw,nosuid,nodev,relatime,user_id=1000,group_id=1000
├─/snap/gnome-logs/45 /dev/loop0 squashfs ro,nodev,relatime
├─/snap/tree/15 /dev/loop1 squashfs ro,nodev,relatime
├─/snap/символы-гномы/139/dev/loop2 squashfs ro,nodev,relatime
├─/snap/core/6130 /dev/loop3 squashfs ro,nodev,relatime
├─/snap/gnome-3-26-1604/74 /dev/loop5 squashfs ro,nodev,relatime
├─/snap/node/1544 /dev/loop4 squashfs ro,nodev,relatime
├─/snap/gnome-characters/124 /dev/loop6 squashfs ro,nodev,relatime
├─/snap/gtk-common-themes/701 /dev/loop7 squashfs ro,nodev,relatime
├─/snap/gnome-3-26-1604/70 /dev/loop8 squashfs ro,nodev,relatime
├─/привязка/ядро/5662 /dev/loop9squashfs ro,nodev,relatime
├─/snap/heroku/3685 /dev/loop10 squashfs ro,nodev,relatime
├─/snap/hugo/3565 /dev/loop11 squashfs ro,nodev,relatime
├─/snap/gtk-common-themes/818 /dev/loop12 squashfs ro,nodev,relatime
└─/boot/efi /dev/mmcblk0p1 vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mi
 
 

Существует также по-старому , поддерживается только для совместимости, но широко используется: крепление -l или просто крепление .

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

1. Идентификация вновь подключенного устройства

После того, как мы подключим флешку, нам нужен способ найти мы можем получить его метку или UUID .

В следующем списке показаны доступные альтернативы, любой из они помогут вам найти информацию об устройстве, перечислив большинство полным и простым в использовании в первую очередь.

1.1 Использование команд blk

Команда lsblk печатает все блочные устройства (кроме ОЗУ дисков) в древовидной формат по умолчанию.

Мы можем взглянуть на него, чтобы попытаться определить новое устройство с параметр файловой системы: --fs для печати информации о каждой файловой системе, LABEL и UUID s на доступных блочных устройствах.

Пример вывода:

 
$  lsblk --fs 
ИМЯ FSTYPE МЕТКА UUID ТОЧКА МОНТАЖА
loop0 squashfs /snap/gnome-logs/45
loop1 squashfs /щелчок/дерево/15
loop2 squashfs /snap/gnome-characters/139loop3 squashfs /щелчок/ядро/6130
loop4 squashfs / привязки / узел / 1544
loop5 squashfs / snap / гном-3-26-1604/74
loop6 squashfs /snap/gnome-characters/124
loop7 squashfs /snap/gtk-common-themes/701
loop8 squashfs / snap / гном-3-26-1604/70
петля9squashfs / оснастки / ядра / 5662
loop10 squashfs /snap/heroku/3685
loop11 squashfs /snap/hugo/3565
loop12 squashfs /snap/gtk-common-themes/818
sda iso9660 Ubuntu 18.10 amd64 2018-XX-XX-XX-44-30-00
├─sda1 iso9660 Ubuntu 18.10 amd64 2018-XX-XX-XX-44-30-00
└─sda2 vfat Ubuntu 18.10 amd64 B29Б-М89Б
mmcblk0
├─mmcblk0p1 vfat DXXX-1XXX /boot/efi
├─mmcblk0p2 ext4 a1031234-80bf-2xds-ba5a-05asdlfk824c3 /home
└─mmcblk0p3 ext4 34asdf82-248n-g8us-fs56-jdfskf8401b25/
mmcblk0boot0
mmcblk0boot1
 
 

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

 
$  lsblk --fs >/tmp/nousb.txt 
$ # штекер usb 
$  lsblk --fs >/tmp/withusb.txt 
$  diff --ignore-space-change /tmp/withusb.txt /tmp/nousb.txt 
15,17д14
sda iso9660 Ubuntu 18.10 amd64 2018-XX-XX-XX-44-30-00
├─sda1 iso9660 Ubuntu 18.10 amd64 2018-XX-XX-XX-44-30-00
└─sda2 vfat Ubuntu 18.10 amd64 BXXX-6XXX
 
 

1.2 Проверка кольцевого буфера ядра

Сразу после подключения устройства мы можем проверить ядро ​​ кольцевой буфер с командой dmesg

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

Там мы можем найти строку типа sda или sdb и т. д., которая будет принадлежать самому последнему подключенному устройству.

 
$  dmesg | хвост 
[12548.711522] scsi host0: usb-хранилище 1-2:1.0
[12549.741820] scsi 0:0:0:0: Kingston DataTraveler 112 с прямым доступом 1,00 PQ: 0 ANSI: 2
[12549.743566] sd 0:0:0:0: присоединенный scsi generic sg0 type 0
[12549.752414] sd 0:0:0:0: [sda] 7831552 Логические блоки по 512 байт: (4,01 ГБ/3,73 ГБ)
[12549.752699] sd 0:0:0:0: [sda] Защита от записи отключена
[12549.752702] sd 0:0:0:0: [sda] Значение режима: 23 00 00 00
[12549.752992] sd 0:0:0:0: [sda] Страница режима кэширования не найдена
[12549.752998] sd 0:0:0:0: [sda] Предполагая, что кэш диска: сквозная запись
[12550.748224] sda: sda1 sda2
[12550.751694] sd 0:0:0:0: [sda] Подключенный съемный диск SCSI
 
 

В этом случае мы можем обнаружить строку sda: sda1 sda2 , которая указывает на это. имеет два раздела: sda1 и sda2 .

Затем мы используем команду blkid -p устройство , чтобы узнать его UUID , метка и другие свойства.

блок найти/распечатать блок атрибуты устройства.
-p, --probe переключает в режим низкоуровневого зондирования суперблока (в обход кэш)

 
$  sudo blkid -p /dev/sda1 
/dev/sda1: UUID="2018-XX-XX-XX-44-30-00" BOOT_SYSTEM_ID="EL TORITO SPECIFICATION" VERSION="Joliet Extension" LABEL="Ubuntu 18.10 amd64" TYPE="iso9660" USAGE=" файловая система" PTUUID="133XXXXe" PTTYPE="dos" PART_ENTRY_SCHEME="dos" PART_ENTRY_UUID="133XXXXe-01" PART_ENTRY_TYPE="0x0" PART_ENTRY_FLAGS="0x80" PART_ENTRY_NUMBER="1" PART_ENTRY_OFFSET="0" PART_ENTRY_SIZE="30" PART_ENTRY_DISK="8:0"
$  sudo blkid -p /dev/sda2 
/dev/sda2: SEC_TYPE="msdos" UUID="B4XX-XXXA" VERSION="FAT12" TYPE="vfat" USAGE="filesystem" PART_ENTRY_SCHEME="dos" PART_ENTRY_UUID="13XXXXXe-02" PART_ENTRY_TYPE="0xef" PART_ENTRY_NUMBER ="2" PART_ENTRY_OFFSET="3828884" PART_ENTRY_SIZE="4928" PART_ENTRY_DISK="8:0"
 
 

1.3 dev-by-directory

Проверить каталоги: /dev/disk/by-{метка,uuid,partuuid,partlabel} .

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

 
$  ls -l /dev/disk/by-* >/tmp/nousb.txt 
$ # штекер usb 
$  ls -l /dev/disk/by-* >/tmp/withusb.txt 
$  diff --ignore-space-change /tmp/withusb.txt /tmp/nousb.txt 
7,13d6
 lrwxrwxrwx 1 root root 9 24.01.2019 14:18 usb-Kingston_DataTraveler_112_001XXXXXXXXXXXXXXXXXXX69-0:0 -> ../../sda
 lrwxrwxrwx 1 root root 10 24.01.2019 14:18 usb-Kingston_DataTraveler_112_001XXXXXXXXXXXXXXXXXXX69-0:0-part1 -> ../../sda1
 lrwxrwxrwx 1 корень корень 10 2019-01-24 14:18 usb-Kingston_DataTraveler_112_001XXXXXXXXXXXXXXXXXXX69-0:0-part2 -> ../../sda2
 
 /dev/диск/по метке/:
 всего 0
 lrwxrwxrwx 1 root root 10 24.01.2019 14:18 Ubuntu\x2018.10\x20amd64 -> ../../sda2
17,18d9
 lrwxrwxrwx 1 root root 10 24.01.2019 14:18 13XXXXe-01 -> ../../sda1
 lrwxrwxrwx 1 root root 10 24.01.2019 14:18 13XXXXe-02 -> ../../sda2
25,27д15
 lrwxrwxrwx 1 root root 9 2019-01-24 14:18 pci-0000:00:14. 0-usb-0:2:1.0-scsi-0:0:0:0 -> ../../sda
 lrwxrwxrwx 1 корень корень 10 2019-01-24 14:18 pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0-part1 -> ../../sda1
 lrwxrwxrwx 1 root root 10 24.01.2019 14:18 pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0-part2 -> ../../sda2
37д24
 lrwxrwxrwx 1 root root 10 2019-01-24 14:18 2018-10-17-22-44-30-00 -> ../../sda1
39д25
 lrwxrwxrwx 1 root root 10 24.01.2019 14:18 BXXX-6XXX -> ../../sda2
 
 

Эти каталоги следует избегать в `fstab` в пользу `UUID`.

2. Установите устройство

Какой метод следует использовать?

Имена устройств разделов диска нестабильны .

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

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

Лучший способ установить устройство — использовать UUID , как вы можете быть уверены он не изменится со временем.

Мы установим его по адресу /media/usb-stick .

Для этого создайте каталог: sudo mkdir /media/usb-stick

А затем смонтируйте его одним из этих способов, предпочтительно UUID :

 sudo mount -t auto /dev/sda2/ носитель/usb-флешка/
# монтируем по метке
# mount -L метка
sudo mount -L Ubuntu 18.10
# монтируем с использованием UUID
# mount -U uuid
sudo mount -U BXXX-6XXX
 

3. Сделать постоянным

Существует специальный файл /etc/fstab , в котором каждая строка описывает:

  • какие устройства обычно монтируются,
  • куда,
  • с помощью каких опций.

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

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

Если вы не добавите параметр nofail , ваш система будет иметь некоторые проблемы во время загрузки, где вы должны прокомментируйте добавленные строки в /etc/fstab

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

В /etc/fstab :

 # флешка негр кингстон 2гб
UUID=2018-XX-XX-XX-44-30-00 /media/usb-stick auto defaults, nofail
 

3.1 Смонтируйте флешку, просто указав каталог

Теперь, когда fstab знает, что наша USB-флешка должна быть помещена в /media/usb-stick , мы можем подключить флешку, просто используя это каталог в следующий раз, когда мы подключим флешку:

mount /media/usb-stick

Лично мне нравится, чтобы каждая флешка или устройство идентифицировались как /media/kingstone-2gb , поэтому я могу легко смонтировать его с каталогом имя после подключения.

4. Удалите флешку

Когда вы хотите Окончательно удалить USB -флешка, нужно выпустить сначала из файловой системы с umount .

sudo umount /media/usb-stick

Дополнительно

Установить метку флешки

Чтобы установить создание или переименование метки флешки, есть несколько программы:

  • e2label — изменить метку в файловой системе ext2/ext3/ext4
  • tune2fs — настроить настраиваемые параметры файловой системы в файловых системах ext2/ext3/ext4
  • mke2fs — создать файловую систему ext2/ext3/ext4

Установить метку флешки как usb-stick

 e2label /dev/sda1 usb-stick
tune2fs -L USB-флешка /dev/sda1
 

Или создайте файловую систему:

 mke2fs pubsw /dev/hdb1
 

И изменить метку

 mke2fs -L pubsw /dev/hdb1
 

Сводка

Суммирование команд, использованных выше, в один список:

 # найти файловую систему / список точек монтирования
найти
# вывести информацию обо всех файловых системах блочных устройств
lsblk --fs
# ищите UUID
mount -t авто -U ХХХХХХХХХХ
 

Ресурсы

  • http://man7. org/linux/man-pages/man8/mount.8.html
  • http://man7.org/linux/man-pages/man5/fstab.5.html
  • https://www.tldp.org/HOWTO/Partition/labels.html

    1. Специальный файл блока: Обычно специальный файл блока выделяется из символьного специального файла, предоставив доступ к устройству в таким образом, чтобы аппаратные характеристики устройства невидимый. http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/v1_chap03.html#TAG_03_79 ↩︎

    2. Уникально уникальный идентификатор (UUID) Урн. ключ как модификатор в i3wm в 6 шагов 20 января 2021

    3. Добавление памяти подкачки в Linux из командной строки в 6 шагов 2 апреля 2020
    4. Освобождение места в Linux (Ubuntu) 27 марта 2020
    5. Переключение между языками в Linux с помощью xkb. Пишите на нескольких языках с одной и той же клавиатуры. 21 марта 2020 г.
    6. Как заставить Ubuntu отображать эмодзи 12 февраля 2020 г.
    7. Обнаружение и монтирование USB-устройств в Linux из консоли оконный менеджер в Linux 7 января 2019 г.
    8. Настройка свежего сервера Linux 25 августа 2018 г.
    9. Как правильно загрузить веб-сайт с помощью Wget 30 июня 2017 г.
    10. Репликация установленных пакетов из одной системы Ubuntu в другую 24 апреля 2017 г.
    11. Использование антивируса Clamav в Ubuntu 25 января 2017 г. Как вводить испанские иероглифы, диакритические знаки и символы в Linux0002 4 марта 2021 г.
    12. Разница между приостановкой и гибернацией в Ubuntu и их запуском из командной строки Устранение сообщения об ошибке работы секретной службы Google Chrome в Ubuntu Linux 7 января 2019 г.
    13. Запустите Emacs в Ubuntu The Right Way 10 июня 2017 г.
      • Unix Shell
        • Подключение к устройству Bluetooth из командной строки в Ubuntu Linux 23 июня 2020 г.
        • Добавить сценарий информационных ссылок на существующий веб-сайт из консоли с помощью команды Sed 4 апреля 2017 г.
        • Как изменить права доступа ко всем файлам 644 и каталоги на 755 10 января 2017 г.
        • Перенаправление вывода и ошибок оболочки на нулевое устройство в Bash 9 декабря 2016 г.
        • Предотвращение запуска повторяющихся заданий Cron 8 декабря 2016 г.
        • Рекурсивное удаление всех файлов резервных копий в Bash 28 ноября 2016 г.
        • Сценарий Bash для определения того, работает ли MySQL 9 ноября 2016 г. страница находится под лицензией CC BY-NC-ND 4.0. Условия и политика.

          Powered by SimpleIT Hugo Theme

          ·

          usb-устройств(1) [справочная страница linux]

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

          Справочные страницы Linux и UNIX

           USB-устройства(1) Linux USB-утилиты USB-устройства(1)
            ИМЯ  
          usb-devices — распечатать информацию об устройстве USB ОБЗОР
          usb-устройства ОПИСАНИЕ
          usb-devices — это (bash) сценарий оболочки, который можно использовать для отображения сведений о шинах USB в системе и подключенных к ним устройствах. Вывод сценария аналогичен файлу usb/devices, доступному либо в /proc/bus (если смонтирован usbfs), либо в /sys/ker- nel/debug (если туда смонтирован debugfs). Скрипт в первую очередь предназначен для использования, если файл недоступен. В отличие от файла usb/devices, в этом сценарии перечислены только активные интерфейсы (помеченные знаком «*» в файле usb/devices) и их конечные точки. Имейте в виду, что могут быть различия в способе сортировки информации, а также в формате вывода. ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
          Если sysfs не смонтирована, возвращается ненулевой код выхода. ФАЙЛЫ
          /sys/bus/usb/devices/usb* Часть дерева sysfs, через которую проходит скрипт для сборки печатной информации. /proc/шина/usb/устройства Место, где обычно можно найти файл usb/devices для ядер Linux до 2.6.31, если смонтирован usbfs. /sys/ядро/отладка/usb/устройства Место, где обычно можно найти файл usb/devices для ядра Linux 2.6.31 и более поздних версий, если смонтирован debugfs. СМ. ТАКЖЕ
          lsusb(8), usbview(8). АВТОРЫ
          Грег Кроа-Хартман Рэнди Данлэп Франс Поп usbutils-001 23 июня 2009 г. USB-устройства(1)

          Проверьте эту связанную справочную страницу

           lsusb(8) USB-утилиты Linux lsusb(8)
            ИМЯ  
          lsusb — список USB-устройств СИНТАКСИС
          lsusb [ варианты ] ОПИСАНИЕ
          lsusb — утилита для отображения информации о шинах USB в системе и подключенных к ним устройствах. ОПЦИИ
          -v , --verbose Указывает lsusb быть подробным и отображать подробную информацию об отображаемых устройствах. Сюда входят дескрипторы конфигурации для Текущая скорость устройства. Дескрипторы классов будут показаны, если они доступны, для классов USB-устройств, включая концентраторы, аудио, HID, коммуникационные устройства. катионы и чип-карты. -s [[автобус]:][devnum] Показать только устройства в указанной шине и/или devnum. Оба идентификатора задаются в десятичном формате и могут быть опущены. -d [поставщик]:[продукт] Показать только устройства с указанным производителем и идентификатором продукта. Оба идентификатора задаются в шестнадцатеричном формате. -D устройство Не сканируйте каталог /dev/bus/usb, вместо этого отображайте только информацию об устройстве, для которого указан файл устройства. Устройство файл должен иметь вид /dev/bus/usb/001/001. Эта опция отображает подробную информацию, как и опция v; ты должен быть root сделать это. -t Указывает lsusb сбросить иерархию физических USB-устройств в виде дерева. Это переопределяет параметр v. -V , --версия Вывести информацию о версии на стандартный вывод, затем успешно завершить работу. ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
          Если указанное устройство не найдено, возвращается ненулевой код выхода. ФАЙЛЫ
          /var/lib/usbutils/usb. ids Список всех известных идентификаторов USB (поставщиков, продуктов, классов, подклассов и протоколов). СМ. ТАКЖЕ
          lspci(8), usbview(8). АВТОР
          Томас Сайлер, . usbutils-005 6 мая 2009 г. lsusb(8)

          справочная страница

          Еще 15 обсуждений, которые могут вас заинтересовать

          1. Программирование оболочки и создание сценариев

          Я новичок в написании сценариев оболочки. Мне удалось собрать сценарий, который делает именно то, что мне нужно. Однако я собираю информацию с более чем 700 устройств. Этот сценарий занимает несколько часов, чтобы выполнить задачу. Есть ли лучший способ сделать это, чем то, что я перечислил здесь? Этот скрипт… (10 ответов)

          Обсуждение начато: Garlandxj

          2. Solaris

          AM ПОПЫТАЮСЬ ПОДКЛЮЧИТЬ ВНЕШНИЙ НАКОПИТЕЛЬ USB ДЛЯ РЕЗЕРВНОГО КОПИРОВАНИЯ, РАЗЪЕМ USB ДОСТУПЕН, НО Я НЕ ЗНАЮ, ГОТОВ ЛИ ОН, КОГДА Я ПОДКЛЮЧАЮ ЕГО, И КАКИЕ КОМАНДЫ МНЕ НУЖНЫ. СПАСИБО (10 ответов)

          Обсуждение начато: tomjones

          3. Программирование оболочки и создание сценариев

          Здравствуйте. Это мой первый пост на этом форуме. Я прочитал много постов за последние два или три года и многому научился. Я создаю живой дистрибутив Linux, используя Linux Live Scripts — просто как хобби — и я хочу создать автоматизированный способ для пользователя копировать… (7 ответов)

          Обсуждение начато: godzillarama

          4. UNIX для чайников Вопросы и ответы

          Привет, мой маршрутизатор — это мое встроенное устройство Linux. У меня система установлена ​​​​на жестком диске USB-накопителя 4 ГБ, часть 1 подкачка, часть 2 / opt , часть 3 данных. Мне нужно скопировать мою систему на новый жесткий диск 8 ГБ USB-накопитель. Каков способ для 4GB > 4GB HDD а нафига 4гб > 8гб Насколько я помню, я могу скопировать образ моего жесткого диска на 4 Гб на флешку… (7 ответов)

          Обсуждение начато: jack2

          5.

          Программирование оболочки и создание сценариев

          Спасибо всем за помощь в понимании того, как управлять пробелами в путях. Результатом является следующий скрипт. Сценарий использует rsync для резервного копирования файлов на USB-устройство. Отдельное спасибо Scrutinizer :b:. rsync2u — это бесплатный скрипт, управляемый меню. Загрузите скрипт с… (7 ответов)

          Обсуждение начато: wolfv

          6. Программирование оболочки и создание сценариев

          HI специалисты Я обновил свой вопрос здесь, чтобы например: $cat файл ABC: abc ABC FDFD USB: usb usb_name usb_disk usbdriver USB ПА: ПА па па Я хочу, чтобы количество usb точно соответствовало (не соответствовало usb_name или usbdriver) в строке cotains «USB:» заранее спасибо (19Ответы)

          Обсуждение начато: yanglei_fage

          7. Программирование оболочки и создание сценариев

          Привет, У меня есть некоторые данные в текстовом файле как 123 45 34 5 66 Я хочу создать файл в формате таблицы, как показано ниже: таблица1 123 45 5 таб2 66 34 tabllllll 123 23 (19 ответов)

          Обсуждение начато: fidelis

          8.

          Fedora

          У меня есть несколько вопросов: 1, я успешно смонтировал свой USB-накопитель с помощью «sudo mount /dev/sdb1 /mnt», но я не могу писать, он говорит «файловая система только для чтения». Но я могу написать это в окнах. 2. После того, как я размонтировал USB-накопитель, его светодиод все еще горит, но не мигает. Безопасно ли отключать его? Как это сделать… (17 ответов)

          Обсуждение начато: vistastar

          9. Программирование оболочки и создание сценариев

          Привет, Я бы написал сценарий bash для форматирования, а затем создал диапазон папок (имя папки — номер) на USB-накопителе. для чисел в $(seq -w 001 999) делать пауза «Нажмите любую клавишу, чтобы начать» mkfs.vfat -F32 /dev/sdc1 смонтировать /dev/sdc1 /media/usb mkdir/медиа/$номера umount /dev/sdc1… (8 ответов)

          Обсуждение начато: wayneliao38

          10. Программирование оболочки и создание сценариев

          Привет всем. У меня есть сценарий ожидания, который для обхода серверов проверяет свободное пространство и предоставляет отсортированный список самых больших файлов. #!/usr/bin/ожидание — установить тайм-аут 600 стти-эхо log_user 0 spawn -noecho sudo -u introot /home/introot/bin/twssh ожидать корень send_user «Вход \r» отправить «uname\r»… (15 ответов)

          Обсуждение начато: urello

          11. Solaris

          Привет. Я пытаюсь сохранить файл на USB-накопитель из Solaris 10. Если я выполняю rmformat, я вижу свой USB-накопитель, но не могу найти место, где можно указать, что нужно сохранить, или выяснить, как сохранять/просматривать файлы на диске. Будем признательны за любую помощь/мысли/и т.д. Спасибо! ~K (20 ответов)

          Обсуждение начато: kuriosity_prime

          12. UNIX для продвинутых и опытных пользователей

          Здравствуйте, знатоки! Я надеюсь, что пишу в правильную категорию для моего вопроса. У меня есть очень простой сценарий оболочки для архивирования файлов на внешний жесткий диск USB (WD Studio Edition II 2 ТБ, отформатированный как FAT32 для совместимости). Сценарий оболочки нужно запускать только один раз в день. Это в основном… (8 ответов)

          Обсуждение начато: johankor

          13. BSD

          Я бы, наверное, поставил все свои резиновые точки здесь, чтобы получить реальную помощь в создании загрузочного устройства на флешке. На этой машине нет CD-привода, поэтому мне нужно использовать USB-флешку. А копаться в CD-приводе, чтобы возиться в fstab или что-то в этом роде, не по силам. Моя мудрость такая… (9Ответы)

          Обсуждение начато: 1in10

          14. Solaris

          Привет, Хочу установить Солярис-11 на Т5220. Я создал USB из sol-11_4-text-sparc.usb с помощью usbcopy на другом сервере Solaris-11, который выглядит неплохо. Я попытался сделать «сбросить все» и все еще та же проблема. Могу ли я получить некоторую помощь по этому поводу. {0} ок, сбросить все Sun Netra T5220, без клавиатуры Copyright… (8 ответов)

          Обсуждение начато: solaris_1977

          15.

          AIX

          У меня есть старый сервер IBM p5 570, состоящий из двух корпусов и сделанный кабелем FC1847, одиночный 8-процессорный сервер. Так вот, после того, как одна его часть, случайно отключилась, у меня пропали все устройства с него. Теперь они все в определенном режиме, например: dodo:/# lsdev -Cc процессор proc0 Доступен 00-00… (8 ответов)

          Обсуждение начато: mcgvaer

          Популярные технические видео

          Linux USB не обнаружен или не работает? 5 Общие проблемы и исправления

          Вы подключили флэш-накопитель USB, клавиатуру или мышь к ПК с Linux. Но ничего не происходит.

          Что происходит? Почему ваш флеш-накопитель не определяется в Ubuntu 20.04 или каком-либо другом дистрибутиве? Это проблема Linux или ваше USB-устройство перестало работать? Вот что делать в Linux, если ваш USB-накопитель не обнаружен или не распознан.

          Игнорировать «xvideoservicethief 2021 linux hdd usb порт не работает» Решения

          Если вы ищете исправления для проблем с USB-портом вашей системы Linux, есть большая вероятность, что вы наткнетесь на ссылки, предваряемые «xvideoservicethief», за которыми следует последний год (2018, 2019, 2020, 2021).

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

          Вместо этого отдавайте предпочтение веб-сайтам, предлагающим решения без термина «xvideoservicethief» в результатах поиска.

          USB-устройство не работает в Ubuntu?

          Дисководы, устройства для чтения карт памяти, телефоны, медиаплееры и периферийные мультимедийные устройства… все они полезны, но если есть проблема с USB-портом или драйверами вашей системы, они не будут работать. Это может быть особенно неприятно, если вы используете клавиатуру или мышь Bluetooth (с USB-адаптером), поскольку это означает, что вам придется искать проводные альтернативы USB.

          Однако это может быть не тот порт, который не работает. Возможно, используемое вами USB-устройство неисправно и не может быть обнаружено.

          Устранение проблем с USB может быть сложным, но можно диагностировать неисправность и внести необходимые исправления.

          Для устранения проблем с USB в Linux необходимо выполнить пять шагов:

          1. Подтверждение обнаружения USB-порта
          2. Выполните необходимый ремонт порта
          3. Исправление или ремонт USB-устройств
          4. Перезагрузите операционную систему Linux.
          5. Подтвердите наличие драйверов устройств.

          Давайте рассмотрим каждый из них по очереди и узнаем, что делать, если Linux не распознает USB-устройства. Хотя следующие шаги основаны на том, что USB-устройство не обнаруживается в Ubuntu, они должны работать в Linux.

          1. USB-устройство не обнаружено Linux

          Первое, что нужно проверить при подключении USB-устройства к компьютеру с Linux, — обнаруживается ли оно. Обнаружение USB-устройства обычно не такое словесное или звуковое, как в Windows или macOS, а это означает, что вам часто нужно проверять, было ли устройство обнаружено операционной системой.

          К счастью, это просто.

          Сначала отключите запрашиваемое USB-устройство. Затем откройте окно терминала и введите команду «list USB»:

           лсуб 

          Запишите результаты, затем подключите USB-устройство и снова запустите lsusb.

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

           dmesg | grep -i USB 

          Команда dmesg выведет список подключенных USB-устройств в вашей системе. Он также будет включать оборудование, отличное от USB, и, к сожалению, предлагает огромное количество информации. Чтобы противостоять этому, вы можете попробовать

           dmesg | меньше 

          Наконец, вы можете просто положиться на более удобный

           usb-устройства 

          Это нечто среднее между командами dmesg и lsusb, перечисляющее подключенное USB-оборудование с достаточной информацией для его идентификации.

          Итак, есть ли здесь USB, который вы подключили? Если нет, то, возможно, поврежден порт или проблема с устройством. Точно так же устройство может быть несовместимо с Linux.

          2. Linux не распознает USB? Как проверить порт USB

          Если USB не обнаружен в Ubuntu или других дистрибутивах, это может быть связано с проблемой с портом USB.

          Лучший способ быстро проверить это — просто использовать другой USB-порт на том же компьютере. Если оборудование USB теперь обнаружено, значит, проблема связана с другим портом USB.

          Если другой USB-порт недоступен, вам необходимо попробовать USB-устройство на другом ПК или ноутбуке. Однако это может быть не идеально, поскольку в качестве альтернативы у вас может быть только компьютер с Windows или macOS. Поскольку некоторые USB-устройства нельзя использовать в Linux, будет сложно определить, что вызывает проблемы: USB-устройство или USB-порт.

          Для достижения наилучших результатов при устранении неполадок USB-устройств, по возможности, используйте оборудование, совместимое с Linux.

          3. USB-устройство Ubuntu не отображается? Как починить сломанное оборудование USB

          Если ваш USB-накопитель не отображается в Ubuntu и вы подозреваете, что он неисправен, у вас есть два варианта: исправить или вернуть.

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

          Связано: Общие сведения о типах USB-кабелей

          Рекомендуется провести физическую проверку USB-оборудования. Кабели должны быть прочными, без разрывов; пробки должны быть сплошными, с прочно закрепленной металлической частью.

          Порты USB

          , тем временем, следует проверять при выключенном компьютере и отсоединенном от сети. Убедитесь, что порты надежно закреплены; шаткие USB-порты являются признаком изнашивания оборудования.

          Если порт USB отсоединяется, вы можете припаять его на место. Конечно, вы уже должны знать основы пайки; никогда не пытайтесь делать самодельные работы без предварительного опыта.

          Кроме того, проверьте порты USB на наличие пыли и грязи, особенно на задней панели компьютера, где регулярно скапливается пыль. Пыль — враг ПК, поэтому для повышения производительности стоит поддерживать систему в чистоте. Поскольку пыль может попасть на ваш компьютер через разъемы USB, найдите время, чтобы содержать эти порты в чистоте. Используйте баллончик со сжатым воздухом, чтобы рассеять пыль и грязь.

          Можете ли вы вернуть USB-устройство? Если новый, то наверное. Проблема в том, что если он явно не помечен как работающий под Linux, продавец вряд ли примет возврат. Возможно, вам придется быть немного избирательнее с фактами, которыми вы с ними делитесь…

          4. Перезапуск Linux для исправления порта USB

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

          Итак, что ты можешь сделать?

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

          Следующий шаг — убедиться, что это больше не повторится. В Ubuntu 20.04 LTS вы можете открыть терминал и ввести:

           udisksctl отключение питания -b /dev/sdX 

          Если вы используете более старую версию Ubuntu, требуются другие команды.

          Проверьте правильность действий в предпочитаемом вами дистрибутиве Linux.

          5. Проверка драйверов USB-устройств в Linux

          Когда-то USB-устройства не всегда работали в Linux. Только устройства, произведенные OEM-производителями, заинтересованными в Linux (возможно, они использовали его для разработки), будут предлагать драйвер Linux.

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

          Если драйвер недоступен, вы, вероятно, сможете найти его, обратившись к производителю USB-устройства.

          USB-устройство не обнаружено в Linux? Попробуйте это

          Для USB-накопителей поиск и устранение неисправностей — это другое дело. Флэш-память подвержена сбоям, особенно если устройство часто падает или используется. В этом случае попробуйте использовать хранилище на другом компьютере; если это не сработает, попробуйте восстановить данные и переформатировать.

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

          Самое главное, не полагайтесь на флэш-память для резервного копирования данных. Хотя механические жесткие диски медленнее, они более надежны.

          Устранение неполадок USB в Linux: исправлено!

          Благодаря встроенным драйверам и широкой поддержке многих типов USB-устройств диагностика проблем с USB-оборудованием вашего компьютера должна быть простой.

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

          Если вы недавно перешли с Windows, проблемы с USB в Linux могут стать проблемой. К счастью, эти проблемы обычно легко решаются.

          Подключение USB-устройств к WSL

          Ben McMorran

          4 ноября 2021 г. 10 0

          Я инженер-программист, создающий инструменты для Visual Studio и Visual Studio Code для поддержки разработки встроенных устройств на C++. Эти физические устройства обычно подключаются к компьютеру через USB, но мы обнаружили, что не можем использовать WSL для тестирования наших инструментов в Linux, поскольку он не поддерживает USB. Мы были не одиноки — поддержка подключения физических USB-устройств к WSL также очень востребована сообществом.

          Хотя эта функциональность по-прежнему недоступна в WSL, я рад сообщить, что наш летний стажер, Нельсон Даниэль Тронкосо Алдас , внес изменения в проект usbipd-win с открытым исходным кодом, чтобы включить общие сценарии USB для разработчиков, такие как перепрошивка. Arduino или доступ к считывателю смарт-карт.

          Настройка

          Чтобы начать работу с этой функцией, сначала убедитесь, что вы используете Windows 11 и установили все обновления WSL. Работает uname -a из WSL должен сообщать о версии ядра 5.10.60.1 или более поздней версии. Вам понадобится дистрибутив WSL 2.

          Установите последнюю версию usbipd-win.

          Из WSL установите инструменты пользовательского пространства для USB/IP и базу данных идентификаторов оборудования USB. Инструкции ниже предназначены для Ubuntu — для других дистрибутивов может потребоваться другой клиентский пакет usbip. В Ubuntu 20.04 LTS выполните следующие команды:

           sudo apt install linux-tools-5.4.0-77-generic hwdata
          sudo update-alternatives --install /usr/local/bin/usbip usbip /usr/lib/linux-tools/5.4.0-77-generic/usbip 20
           

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

          Подключение устройства

          Сначала убедитесь, что командная строка WSL открыта. Это сохранит активную упрощенную виртуальную машину WSL 2.

          Из командной строки администратора в Windows выполните эту команду. В нем будут перечислены все USB-устройства, подключенные к Windows.

           список usbipd wsl
           

          Выберите идентификатор шины устройства, которое вы хотите подключить к WSL, и выполните эту команду. WSL запросит у вас пароль для запуска команды sudo.

           usbipd wsl attach --busid 
           

          Из WSL запустите lsusb , чтобы получить список подключенных USB-устройств. Вы должны увидеть только что подключенное устройство и иметь возможность взаимодействовать с ним с помощью обычных инструментов Linux. Обратите внимание, что в зависимости от вашего приложения вам может потребоваться настроить правила udev, чтобы разрешить пользователям без полномочий root доступ к устройству.

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

           usbipd wsl отсоединить --busid 
           
          Как это работает

          Эта функция использует преимущества протокола USB/IP для пересылки USB-трафика через виртуальный сетевой интерфейс между Windows и WSL. Код для поддержки USB/IP существует в ядре Linux с 2009 года, но несколько недавних изменений упростили его использование в WSL.

          • Мы обновили параметры конфигурации ядра WSL Linux, чтобы включить поддержку USB/IP. Это упрощает настройку в WSL и избавляет пользователей от необходимости собирать ядро ​​самостоятельно.
          • Хотя в Linux существует поддержка подключения устройств через USB/IP (клиент ), в Windows не было соответствующей поддержки сервера для USB/IP. usbipd-win заполняет этот пробел. Мы добавили в проект интерфейс командной строки, чтобы включить USB-устройство для совместного использования в Windows и подключить его из WSL.

          Мы также хотели бы поблагодарить Frans van Dorsselaer , системного архитектора из Нидерландов, который основал usbipd-win. По его собственным словам:

          Это началось как личный хобби-проект, чтобы заставить работать одно устройство. Недавно я перешел с VirtualBox на Hyper-V, но мне не хватало функции сквозного подключения USB для моего устройства. Недовольный существующими решениями, будь то дорогие коммерческие решения или проекты с открытым исходным кодом, требующие неподписанных драйверов, я решил, что могу это сделать! Я прочитал о стандарте USB, реализации USBIP в ядре Linux и исходном коде драйвера VirtualBox. Затем мой коллега спросил, будет ли работать его USB-токен. Конечно, нет, но я решил опубликовать проект на GitHub и довести его до функциональности. Microsoft нашла мой проект и решила помочь сделать его более зрелым с помощью надлежащего интерфейса управления и поддержки WSL. И вот где мы сейчас: настраиваемый сквозной порт USB для Hyper-V и WSL.

          Куда оставить отзыв

          Мы рады, что вы можете попробовать подключить USB-устройства к WSL. Если у вас есть отзывы об этом проекте, пожалуйста, откройте вопрос в проекте usbipd-win с открытым исходным кодом. Узнайте больше о WSL, в том числе о том, как настроить распространенные инструменты разработки, такие как Git, VS Code, контейнеры Docker, базы данных, ускорение графического процессора для машинного обучения и многое другое, посетив документацию WSL. Наконец, следите за будущими объявлениями от команды разработчиков встраиваемых систем C++ об инструментах для улучшения опыта разработки встраиваемых систем независимо от устройства или компилятора. Удачного кодирования!

          Опубликовано в Подсистема командной строки Windows для Linux (WSL)

          Управление портами USB | Linux.org

          Джаррет Б.
          Активный член