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

Данные авторизации для разных операторов

Мастер создания подключения подставляет почти все
необходимые данные автоматически, но имя пароль нужно вводить вручную. Для
разных операторов пары имя/пароль такие:

  • Мегафон: можно оставить эти поля пустые.
  • МТС: mts/mts.
  • Билайн: beeline/beeline
  • Скайлинк: mobile/internet.

Иван Сухов, 2011 г.

Поделитесь этим сайтом с друзьями!

Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь — поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354. Или на телефон +7 918-16-26-331.

Даже небольшая сумма может помочь написанию новых статей :)

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

Сопутствующие статьи

  • Настройка L2TP VPN (Beeline) на Ubuntu 14.04
  • Настройка 4G ZTE MF823 на Zyxel Keenetic
  • 4G ZTE MF823 (Мегафон М100-3) на Windows XP и Vista
  • QMI модем Anydata W140 Zyxel Keenetic
  • Смартфон (планшет) — USB модем
  • Как подключить 4G USB модем в Ubuntu 12.04
  • Настройка pppoe Ubuntu 12.04
  • Настройка домашнего интернета Windows 7
  • Настройка домашнего интернета Windows XP
  • Ошибки PPPoE в Windows 7
  • Установка и настройка 3G USB модема в Windows XP / 7
  • Диагностика USB модемов (Билайн, Мегафон, МТС)
  • Как подключить 3G USB модем в Ubuntu 12.04
  • Установка и настройка 3G USB модема в Ubuntu Linux
  • Настройка Beeline (Corbina) VPN на Ubuntu Linux

Как подключиться к расшаренной папке Ubuntu из Windows?

Для этого нам надо узнать наш ip или название устройства (hostname).

Это можно сделать в графическом интерфейсе через «Параметры» системы.

В пункте «Сеть» посмотреть подробности вашего подключения:

В пункте «Подробности» (О системе):

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

После чего в Windows подключаемся, введя в адресной строке Проводника два обратных слеша , а затем ip адрес или имя устройства Ubuntu:

Отобразятся все расшаренные каталоги на Ubuntu машине. Но если мы попытаемся зайти в нашу папку LinuxFiles, то получим ошибку доступа:

Есть два пути решения данной проблемы.

Если хотите, чтобы любой имел доступ к вашей расшаренной папке, то надо в свойствах её общего доступа проставить галочку «Гостевой доступ» и нажать «Применить»:

Если хотите подключаться к папке с помощью учетной записи вашего текущего пользователя Ubuntu, то придется задать ему Samba пароль и это сделать можно в терминале (да, я вас обманул, один раз придется в терминал зайти):

Теперь можно в Windows зайти в нашу расшаренную папку. Либо с вводом имени пользователя и пароля (вашего Ubuntu пользователя). Либо, если проставили галочку «Гостевого входа», то сразу.

Но если в Windows вы попытаетесь создать, изменить или удалить файл/папку, то получите ошибку:

У вас нет доступа на изменение в этом каталоге.

Если это проблема, и вы хотите, чтобы пользователи в локальной сети могли изменять файлы в этой папке, то для решения этой проблемы нужно в свойствах общего доступа папки проставить галочку «Разрешить другим пользователям изменять содержимое папки» и нажать «Применить»:

После чего у вас будет запрошено подверждение на изменение прав на папку:

Соглашаемся на изменение прав на каталог.

Теперь пользователи локальной сети смогут изменять файлы внутри вашей расшаренной папки.

Давайте теперь расшарим папку на Windows и подключимся к ней из Ubuntu.

Настройка общего доступа папки в Windows и подключение к ней из Ubuntu.

Создаём папку в Windows где-нибудь, кликаем правой кнопкой мыши, выбираем «Свойства» — «Доступ» и жмём «Расширенная настройка»:

Далее проставляем галочку «Открыть общий доступ к этой папке» и нажимаем «Применить»:

Всё, мы расшарили папку в Windows и к ней можно подключаться.

Компьютер не видит флешку из-за проблем с разделом

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

Решение: Проблема решается путем принудительного задания буквы раздела. Для этого нажимаем комбинацию клавиш “Win” + ”R” и вбиваем простую команду “diskmgmt.msc”.

В появившемся диспетчере ищем наше USB устройство (рядом с флешкой не будет задана буква раздела). Нажимаем правой кнопкой мыши на съемное устройство и выбираем пункт “Изменить букву диска”.

При этом появится маленькое окошко, в котором нужно ввести букву раздела и нажать “Изменить”. Далее выбираем конкретную букву и нажимаем “ОК”.

Удаление старых драйверов USB

Если компьютер при использовании флешки выбивает окно «Вставьте диск», то скорее всего ваши драйвера являются сильно устаревшими. Вообще старое программное обеспечение для USB является причиной многих ошибок ПК, когда подключается накопитель в USB порт. Проблема в том, что при использовании флешки Windows сама устанавливает драйвера для USB-накопителей, которые после её отсоединении остаются в системе. При работе с новой флешкой, Windows захочет использовать уже имеющиеся драйвера к другому USB-накопителю. Зачастую это приводи к ошибкам и некорректной работе системы. Если на ПК флешка не видна можно попробовать удалить старые драйвера для этого:

  1. Производим включение компьютера и отсоединяем все устройства USB. Оставляем мышь и клавиатуру, если же в них не установлен кард-ридер.
  2. В интернете нужно скачать программу DriveCleanup.
  3. В зависимости от разрядности вашей ОС, скопируйте версию drivеcleanup.exe. После чего поместите её в папку C:\Windows\System32. Либо, выполните запуск утилиты непосредственно из папки, где находится файл «drivеcleanup.exe».
  4. От имени администратора запускаем PowerShell либо командную строку, в которой прописываем drivеcleanup.exe.
  5. Наблюдаем как исчезают все записи о драйверах в реестре Windows. 
  6. Выполняем перезагрузку и вставляем флешку, теперь система установит новый драйвер.

Еще одним простым вариантом является удаление записей USB-устройства с помощью бесплатной утилиты USBObliviо. Про что было описано выше в статье.

Часть вторая, серверно-линуксовая

Сервер USB/IP, расшаривающий USB-девайсы по сети, может быть поднят только в Linux-based OS. Ну что ж, линукс так линукс, устанавливаем на виртуалку Debian 8 в минимальной конфигурации, стандартное движение руками:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install usbip

Установились. Дальше интернет подсказывает, что нужно бы загрузить модуль usbip, но — здравствуйте, первые грабли. Нет такого модуля. А всё оттого, что большинство руководств в сети относятся к более старой ветке 0.1.x, а в крайней 0.2.0 модули usbip имеют другие названия.

Поэтому:

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

Запустим сервер usbip:

sudo usbipd -D

Дальше всемирный разум нам подсказывает, что в комплекте с usbip идут скрипты, позволяющие нам управлять сервером — показать, какое устройство он будет расшаривать по сети, посмотреть статус, и так далее. Тут нас поджидает еще один садовый инструмент — эти скрипты в ветке 0.2.x, опять же, переименованы. Получить список команд можно с помощью

sudo usbip

Почитав описание команд, становится понятно, что для того, чтобы расшарить требуемый USB-девайс, usbip хочет узнать его Bus ID. Уважаемые зрители, на арене грабли номер три: тот Bus ID, который выдаст нам lsusb (казалось бы, самый очевидный путь) — ей не подходит! Дело в том, что железки вроде USB-хабов usbip игнорирует. Поэтому, воспользуемся встроенной командой:

user@usb-server:~$ sudo usbip list -l
- busid 1-1 (064f:0bd7)
  WIBU-Systems AG : BOX/U (064f:0bd7)

Примечание: здесь и далее в листингах я буду всё описывать на примере моего конкретного USB-ключа. Ваши название железки и пара VID:PID могут и будут отличаться. Моя называется Wibu-Systems AG: BOX/U, VID 064F, PID 0BD7.

Теперь мы можем расшарить наше устройство:

user@usb-server:~$ sudo usbip bind --busid=1-1
usbip: info: bind device on busid 1-1: complete

Ура, товарищи!

user@usb-server:~$ sudo usbip list -r localhost
Exportable USB devices
======================
- localhost
       1-1: WIBU-Systems AG : BOX/U (064f:0bd7)
          : /sys/devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb1/1-1
          : Vendor Specific Class / unknown subclass / unknown protocol (ff/00/ff)

Троекратное ура, товарищи! Сервер расшарил железку по сети, и мы можем её подключать! Осталось только дописать автозапуск демона usbip в /etc/rc.local

usbipd -D

Настройка DNS

Служба DNS используется для преобразования доменных имен сайтов в IP-адреса. При получении IP-адреса автоматически через DHCP мы используем правильные DNS-серверы, но если мы выбрали статический IP, то DNS можно и не получить, поэтому придётся сделать всё вручную.

Если вам нужно настроить DNS так, чтобы он не сбивался после перезагрузки, необходимо использовать систему настройки сети Ubuntu. Для этого откройте файл /etc/network/interfaces и добавьте в него строчку после директив для нужного интерфейса:

Здесь 8.8.8.8 и 4.4.4.4 это IP-адреса DNS серверов, можете заменить их на свои. И можно использовать один, а не два. Дальше сохраните файл и перезапустите сеть:

Если же вам нужно настроить DNS только для этого сеанса, то добавьте строчку в /etc/resolv.conf

После сохранения файла сеть будет работать полностью так, как нужно. Но последний способ пригоден только до перезагрузки, поскольку файл /etc/resolv.conf генерируется автоматически.

Автозапуск

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

Автозапуск сервера

Добавляем модули в автозапуск:

vi /etc/modules

usbip-core
usbip-host
vhci-hcd

Создаем юнит в systemd:

vi /etc/systemd/system/usbipd.service

Description=USBIPd

ExecStart=/scripts/usbipd
Type=oneshot
RemainAfterExit=yes

WantedBy=multi-user.target

Перечитываем конфигурацию systemd и разрешаем запуск созданного нами юнита:

systemctl daemon-reload

systemctl enable usbipd

Создаем каталог хранения скрипта и сам скрипт:

mkdir /scripts

vi /scripts/usbipd

#!/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin

bindID=’2-1.3′

usbipd -D
usbip bind -b $bindID

usbip attach —remote=localhost —busid=$bindID
sleep 2
usbip detach —port=00

Разрешаем запуск скрипта:

chmod +x /scripts/usbipd

Запускаем демона:

systemctl start usbipd

systemctl status usbipd

Для окончательного тестирования можно перезагрузить сервер.

Автозапуск клиента Windows

Пишем небольшой батник:

@echo off

cd C:\Users\user\Downloads\usbip
usbip.exe -a 192.168.0.15 2-1.3

* C:\Users\user\Downloads\usbip — путь, где хранится распакованная утилита; 192.168.0.15 — адрес  сервера USB; 2-1.3 — идентификатор USB устройства на сервере.

Сохраняем скрипт с расширением bat или cmd. Запускаем планировщик заданий и добавляем новую задачу.

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

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

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

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

Ручная настройка сети в Ubuntu

Предыдущий вариант хорош, если вы собираетесь его использовать постоянно, но если нужно только один раз настроить сеть через терминал, то редактировать конфигурационные файлы необязательно. Мы можем всё сделать с помощью команды ip. Дальше будет рассмотрена настройка сети вручную Ubuntu.

Эта команда используется для управления сетью и входит во все дистрибутивы по умолчанию.

Как и в предыдущем примере, смотрим сетевые интерфейсы:

После того, как мы узнали интерфейс, можно переходить к настройке.

Получение IP-адреса по DHCP

Сначала включаем интерфейс:

Затем с помощью команды dhclient запрашиваем ip:

Всё, настройка сети Ubuntu 16.04 завершена, у нас есть IP-адрес, и осталось только настроить DNS, но это мы рассмотрим ниже.

Настройка статического IP

Включаем интерфейс:

Устанавливаем IP-адрес, маску сети и broadcast-адрес для нашего интерфейса:

Указываем IP-адрес шлюза:

Здесь 192.168.1.7 — наш IP-адрес, 255.255.255.0 — маска сети, 192.168.1.255 — широковещательный адрес. Замените эти значения на свои.

Как видите, сеть работает. Если хотите поэкспериментировать на машине с рабочей сетью, её можно сбросить командой:

Сбой драйверов или использование устаревших драйверов

Проблема: Нередки случаи, когда компьютер не хочет видеть флешку из-за устаревших драйверов или неправильно работающего драйвера. Для примера, некоторые старые компьютеры не могут работать с флешками объемом более 32 ГБ. Сбой в драйвере может появиться по различным причинам. В любом случае проблема с драйверами решается с помощью их обновления.

Решение: Заходим в “Пуск” и в строке поиска вводим “Диспетчер устройств”, переходим в найденный раздел.

Подключаем флешку к компьютеру и в диспетчере устройств переходим в раздел “Контроллеры USB”. Правой кнопкой мыши нажимаем на “Запоминающее устройство для USB”, выбираем “Свойства” и нажимаем “Удалить”.

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

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

Как работает сеть?

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

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

Как только компьютер подключился к сети, независимо от того проводное это соединение или беспроводное,  он может общаться только с компьютерами в локальной сети и только по физическим адресам. Для того, чтобы получить доступ в Глобальную сеть, машине в ней нужно получить IP-адрес. Для этого используется протокол DHCP. Если кратко: наш компьютер спрашивает все компьютеры в локальной сети, кто здесь DHCP-сервер, DHCP ему отвечает и выдаёт IP-адрес. Таким же образом компьютер узнаёт IP маршрутизатора, через который он может получить доступ к Сети, а затем пытается найти DNS-серверы или узнать стандартные у маршрутизатора. С теорией разобрались, перейдем к практике.

Исправление поврежденного USB-оборудования

Если ваше оборудование USB неисправно, у вас есть два варианта: исправить или вернуть.

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

Физическая проверка оборудования USB – хорошая идея. Кабели должны быть прочными, без каких-либо разрывов, металлическая секция надежно закреплена.

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

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

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

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

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

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

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

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

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

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

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

Здесь ищите

Изменить это на

Нажмите Ctrl + X, чтобы сохранить файл и выйти. Далее обновите grub:

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

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

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

⇡#Комплектация и внешний вид

SEH myUTN-2500 внешне представляет собой небольшую лёгкую коробочку из матового синего пластика с габаритами 99 × 140 × 32 мм и массой 160 г. Вентиляционных отверстий нет, но устройство во время работы всё равно сильно не греется. Оно предназначено только для использования внутри помещений с температурой окружающей среды от 5 до 40 °C и относительной влажностью 20-80 %. На передней панели находятся семь светодиодов, указывающих на состояние устройства в целом и активность сети и портов USB. Все индикаторы маленькие и неяркие. На днище есть информационная наклейка, а также очень небольшие, но на удивление цепкие резиновые ножки по углам.

Сзади находятся три порта USB 3.0, разъём RJ-45 для гигабитного сетевого подключения, утопленная внутрь корпуса кнопка сброса настроек и гнездо для кабеля питания. Третий USB-порт также можно использовать для подзарядки других устройств, он отдаёт ток 1,5 А. SEH myUTN-2500 поддерживает одновременную работу до 12 USB-устройств, но тут есть одна особенность — для составных USB-устройств или хабов нельзя выбрать отдельные VID/PID для проброса клиенту: будет отдан именно физический порт USB целиком, а вместе с ним и все его «подчинённые», виртуальные и реальные. Одновременно myUTN-2500 могут использовать до 16 пользователей, что явно избыточно.

Вместе с устройством поставляется стандартный набор: документация, гарантийный талон и блок питания. БП довольно крупный (98 × 49 × 33 мм), зато универсальный: вход AC 100-240 В, 50/60 Гц; выход DC 12 В, 3 А. У блока есть стандартное гнездо C8, в комплекте идёт подходящий кабель длиной 1,7 м с вилкой типа C на конце, а от самого БП тянется шнур длиной чуть больше метра. В режиме ожидания myUTN-2500 потребляет от блока питания около 0,2 А, а при полной нагрузке на все три USB-порта — около 2,4 А. Формально производитель предоставляет на устройство гарантию 3 года, а ещё 2 года сверх этого можно получить при регистрации на сайте, но в России, видимо, придётся уточнять гарантийные обязательства у продавца.

Восстановить файлы с недоступного USB-накопителя после исправления USB-накопителя, который продолжает отключаться

MiniTool Power Data Recovery — это специальный инструмент для восстановления файлов, который можно использовать для восстановления файлов с различных типов устройств хранения данных, таких как компьютерные жесткие диски, SD-карты, карты памяти, USB-накопители и т. Д.

Имеет четыре модуля восстановления. Если вы хотите восстановить данные с обычного USB-устройства, вам необходимо использовать Съемный диск модуль; если вы хотите восстановить файлы с внешнего жесткого диска, вам нужно выбрать Этот ПК Режим.

Этот Программа для восстановления данных MiniTool имеет пробную версию, с помощью которой вы можете увидеть, сможет ли он найти элементы, которые вы хотите восстановить с USB-устройства.

Теперь вы можете нажать следующую кнопку, чтобы загрузить и установить это бесплатное ПО на свой компьютер, чтобы попробовать.

В качестве примера возьмем обычный USB-накопитель.

Шаг 1. Подключите USB-накопитель к компьютеру, на котором установлено программное обеспечение для восстановления данных. Затем откройте программу, и вы увидите Этот ПК интерфейс напрямую. Тогда выбирай Съемный диск из левого списка.

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

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

Когда все будет готово, нажмите на Сканировать кнопку, чтобы начать процесс сканирования.

Шаг 2: Через некоторое время процесс сканирования завершится, и вы увидите интерфейс результатов сканирования.

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

С другой стороны, вы можете быстро искать файлы с помощью Тип , найти и Фильтр особенности этого программного обеспечения. Все эти функции просты в использовании. Вы можете выбрать один или несколько, чтобы испытать их мощные функции.

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

Не волнуйся. Если вы обнаружите, что это программное обеспечение может находить файлы, которые вы хотите восстановить, вы можете обновить его до полной версии, чтобы восстановить данные без ограничений. Если вы личный пользователь, Pro Deluxe Edition может полностью удовлетворить ваши требования.

Более того, если целевым USB-устройством является внешний жесткий диск, вам необходимо использовать Этот ПК модуль этого программного обеспечения для восстановления данных. Этапы восстановления данных этого модуля так же просты, как Съемный диск . Мы не будем их здесь повторять.

Отформатируйте недоступный USB-накопитель до нормального состояния

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

Вы знаете, как при необходимости отменить форматирование в процессе? Есть 3 разных способа в зависимости от 3 различных ситуаций. Изучите их в этом посте.

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

Вы когда-нибудь сталкивались с проблемой прекращения работы проводника Windows? Теперь вы можете прочитать этот пост, чтобы узнать, как эффективно решать эту проблему.

Но сторонняя менеджер разделов может сделать это проще и эффективнее. Это инструмент MiniTool Partition Wizard и его Форматировать раздел это именно та функция, которую необходимо использовать для форматирования USB-накопителя.

Теперь вы можете прочитать этот предыдущий пост, чтобы узнать обо всех этих 4 методах форматирования USB-накопителей: Как с легкостью отформатировать жесткий диск в Windows 10/8/7?

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

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

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

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

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

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

Это должно вернуть значение 2 , что означает, что функция autosuspend включена. Вы можете исправить это, отредактировав файл grub. Войти:

Вот, ищите:

Измените это на:

Нажмите Ctrl + X для сохранения файла и выхода. Далее, обновите grub:

После этого перезапустите Ubuntu.

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

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

Часть третья, клиентская и запутанная

Подключить расшаренное устройство по сети к машине под управлением Debian я попробовал сразу же на том же сервере, и всё прекрасно подключилось:

sudo usbip attach --remote=localhost --busid=1-1

Переходим к Windows. В моем случае это был Windows Server 2008R2 Standard Edition. Официальное руководство просит сначала установить драйвер. Процедура прекрасно описана в прилагаемом к windows-клиенту readme, делаем всё как написано, всё получается. На XP тоже работает без каких-либо трудностей.

Распаковав клиент, пробуем примонтировать наш ключик:

C:\Program Files\USB-IP>usbip -a %server-ip% 1-1
usbip err: usbip_network.c: 121 (usbip_recv_op_common) recv op_common, -1
usbip err: usbip_windows.c: 756 (query_interface0) recv op_common
usbip err: usbip_windows.c: 829 (attach_device) cannot find device

Ой-ой. Что-то пошло не так. Используем навык гугла. Встречаются отрывочные упоминания, что что-то там не так с константами, в серверной части разработчики при переходе на версию 0.2.0 изменили версию протокола, а вот в клиенте под Win сделать это забыли. Предлагаемое решение — поменяйте константу в исходнике и пересоберите клиент.

Вот только очень мне не хочется качать Visual Studio ради этой процедуры. Зато у меня есть старый-добрый Hiew. В исходнике константа объявлена как двойное слово. Поищем в файле 0х00000106, заменяя на 0х00000111. Не забываем, порядок байт обратный. Итог — два совпадения, патчим:

00000CBC: 06 11
00000E0A: 06 11
Ииии… да!
C:\Program Files\USB-IP>usbip -a %server-ip% 1-1
new usb device attached to usbvbus port 1

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

C:\Program Files\USB-IP>usbip -a %server-ip% 1-1
usbip err: usbip_windows.c: 829 (attach_device) cannot find device

И всё. На это мне не смог ответить даже всезнающий гугл. А при этом команда отобразить доступные на сервере устройства вполне корректно показывает — вот он, ключ, можете монтировать. Пробую примонтировать из-под Linux — работает! А если теперь попробовать из-под Windows? О ужас — это работает!

Грабли последние: что-то там в коде сервера не дописано. При расшаривании устройства он не считывает с него количество USB-дескрипторов. А при монтировании устройства из-под Linux, это поле заполняется. К сожалению, с разработкой под Linux я знаком на уровне «make && make install». Поэтому проблема решена с помощью довольно грязного хака — добавлением в /etc/rc.local

usbip attach --remote=localhost --busid=1-1
usbip port
usbip detach --port=00

Комп не видит флешку через usb, переустановка в диспетчере устройств Windows

Если представленные ранее варианты вам не помогли и ПК по-прежнему не видит никакие USB-накопители, то можно попробовать еще один способ:

  1. Зайдите в диспетчер устройств, с помощью клавиш Win+R и введите там devmgmt.msc. 
  2. Находим в раздел «Контроллеры USB» и открываем его. 
  3. Удаляем все устройства в названиях которых содержится Корневой USB концентратор, USB Host Controller и Generic USB Hub. 
  4. Выбираем в меню «Действия» «Обновить конфигурацию оборудования».

Одной из причин не корректной работы системы, являются вирусы. Они так же могут повлиять на USB устройство, поэтому стоит проверить ПК на их наличие. Так же просмотрите реестр, а точнее ключ HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer, если же он содержит параметр «NоDrives» удалите его, после чего выполните перезагрузку компьютера. Проверьте раздел реестра Windows HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control, на наличие параметра StorageDevicePolicies и удалите. После проделанной работы проверьте, видит ли ваш ПК USB-накопитель.

Не работает сама USB флешка

Проблема: Этот вариант самый неблагоприятный для пользователя потому как вернуть флешку к жизни в этом случае практически невозможно. Флешка становится непригодной при механическом повреждении чипа, при выходе из строя встроенного контроллера или при замыкании электрической цепи. Также потерять работоспособность USB флешки можно при физическом повреждении контактов на плате (при активном механическом воздействии на USB порт флешки).

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

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

При нефатальной неисправности (компьютер не видит флешку, но после подключения световой индикатор горит) следует попробовать методы, которые будут рассмотрены далее.

Возможные проблемы

1. usbip_common_mod.ko and usbip.ko must be loaded

Ошибка появляется при попытке выполнить usbipd -D.

Причина: был установлен пакет usbip вместо linux-tools-<версия ядра>.

Решение: удаляем usbip:

apt-get remove usbip

Ставим нужный пакет:

apt-get install linux-tools-`uname -r`

2. /usr/sbin/usbipd: No such file or directory

Данная ошибка также появляется при попытке выполнить usbipd -D.

Причина: Нужный бинарник для запуска находится по другому пути — /usr/bin/usbipd.

Решение: создаем симлинк:

ln -s /usr/bin/usbipd /usr/sbin/usbipd

3. usbip: error: failed to open /usr/share/hwdata//usb.ids

Выскакивает при попытке посмотреть список устройств командой usbip list -l.

Причина: необходимый файл usb.ids находится в другой директории.

Решение: создаем каталог /usr/share/hwdata:

mkdir /usr/share/hwdata

Создаем симлинк на существующий файл:

ln -s /usr/share/misc/usb.ids /usr/share/hwdata/usb.ids

4. usbip err … recv op_common

При попытке запустить утилиту в командной строке Windows получаем ошибки:

usbip err: usbip_network.c: 121 (usbip_recv_op_common) recv op_common, -1
usbip err:       usbip.c: 216 (query_exported_devices) recv op_common
usbip err:       usbip.c: 288 (show_exported_devices) query

Причина: ошибка в бинарном файле для Windows.

Решение: открыть exe-файл в HEX редакторе, например, HxD. И в адресах смещения 00000CBC и 00000E0A заменить 06 на 11:

* было

* стало

5. (attach_device) cannot find device

При попытке монтирования устройства в Windows, выскакивает ошибка с похожим текстом:

usbip err: usbip_windows.c: 829 (attach_device) cannot find device

Причина: недоработка серверного ПО — при расшаривании USB не считывается количество дескрипторов.

Решение: примонтировать устройство на сервере с последующим отмонтированием:

usbip attach —remote=localhost —busid=2-1.3

* в моем случае устройство имеет идентификатор 2-1.3.

usbip port

* смотрим номер порта, на котором висит наше примонтированное устройство. 

usbip detach —port=00

6. udev_device_new_from_subsystem_sysname failed

При попытке монтирования устройства на клиенте получаем ошибку с текстом:

libusbip: error: udev_device_new_from_subsystem_sysname failed
usbip: error: open vhci_driver
usbip: error: query

Причина: не подключен модуль vhci-hcd.

Решение: разово выполняем команду:

modprobe vhci-hcd

и добавляем в файл /etc/modules строку vhci-hcd.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: