LINUX.ORG.RU

помогите создать правило для UDEV

 


0

1

Linux Mint 19

При каждом включении мне приходиться постоянно делать ручную установку драйвера ath9k Wi-Fi usb модуля (AR9374).

При этом я выполняю указанные команды

modprobe ath6kl_usb

echo 27d5 0080 > /sys/bus/usb/drivers/ath6kl_usb/new_id

Чтобы не требовалось это делать при каждой загрузке я пробовал создать правило nano /etc/udev/rules.d/10-own.rules

SUBSYSTEM==«net», ATTR{address}==«c0:3e:0f:12:d9:8c», RUN+=«СКРИПТ???»,

Помогите составить именно СКРИПТ..не имею еще опыта

спасибо



Последнее исправление: IURII (всего исправлений: 1)

Надо просто понимать механику работы линукса:

  1. ядро обнаруживает bus-устройство и генерирует uevent
  2. udev ловит uevent и запускает modprobe с агрументом modalias устройства
  3. modprobe по файлу modules.alias находит модуль и загружает его
  4. модуль регистрирует драйвер, ядро генерирует uevent
  5. драйвер биндится к устройству, которое знает, создаёт class-устройство, ядро генерирует uevent

У тебя уже на шаге 3 сбой: modprobe не находит модуль по modalias-у. Надо добавить алиас в modprobe.conf вручную:

alias usb:v27D5p0080d*dc*dsc*dp*ic*isc*ip* ath6kl_usb

Возможно я здесь слишком много звёздочек наставил, лучше посмотреть реальный modalias твоего устройства. Если можешь, пришли lsusb -v твоего устройства.

На шаге 5 следующий сбой: драйвер не сбиндится к неизвестному ему устройству. Надо добавить udev-правило для обработки uevent-а, посылаемого ядром на шаге 4, чтобы вдвинуть в драйвер новый идентификатор устройства:

ACTION=="add", DEVPATH=="/bus/usb/drivers/ath6kl_usb", ATTR{new_id}+="27D5 0080"

iliyap ★★★★★
()
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

root@iurii-desktop:/home/iurii# lsusb -v

Bus 001 Device 007: ID 27d5:0080

Device Descriptor:

bLength 18

bDescriptorType 1

bcdUSB 2.00

bDeviceClass 255 Vendor Specific Class

bDeviceSubClass 255 Vendor Specific Subclass

bDeviceProtocol 255 Vendor Specific Protocol

bMaxPacketSize0 64

idVendor 0x27d5

idProduct 0x0080

bcdDevice 1.00

iManufacturer 1 Qualcomm Atheros.

iProduct 2 USBWLAN

iSerial 3 12345678

bNumConfigurations 1

Configuration Descriptor:

bLength 9

bDescriptorType 2

wTotalLength 111

bNumInterfaces 1

bConfigurationValue 1

iConfiguration 0

bmAttributes 0xa0

(Bus Powered)

Remote Wakeup

MaxPower 200mA

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 0

bAlternateSetting 0

bNumEndpoints 8

bInterfaceClass 255 Vendor Specific Class

bInterfaceSubClass 255 Vendor Specific Subclass

bInterfaceProtocol 255 Vendor Specific Protocol

iInterface 2 USBWLAN

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x81 EP 1 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x82 EP 2 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x83 EP 3 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x84 EP 4 IN

bmAttributes 3

Transfer Type Interrupt

Synch Type None

Usage Type Data

wMaxPacketSize 0x0040 1x 64 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x01 EP 1 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x02 EP 2 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x03 EP 3 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x04 EP 4 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 0

bAlternateSetting 1

bNumEndpoints 4

bInterfaceClass 255 Vendor Specific Class

bInterfaceSubClass 255 Vendor Specific Subclass

bInterfaceProtocol 255 Vendor Specific Protocol

iInterface 2 USBWLAN

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x01 EP 1 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x82 EP 2 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 8

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x04 EP 4 OUT

bmAttributes 1

Transfer Type Isochronous

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 1

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x83 EP 3 IN

bmAttributes 1

Transfer Type Isochronous

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 1

Device Qualifier (for other device speed):

bLength 10

bDescriptorType 6

bcdUSB 2.00

bDeviceClass 255 Vendor Specific Class

bDeviceSubClass 255 Vendor Specific Subclass

bDeviceProtocol 255 Vendor Specific Protocol

bMaxPacketSize0 64

bNumConfigurations 1

Device Status: 0x0000

(Bus Powered)

IURII
() автор топика
Ответ на: комментарий от Bloody

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

Спасибо попробовал..но что то не срабатывает...переименовать получается ..через UDEV...ну SUBSYSTEM==«net», ATTR{address}==«c0:3e:0f:12:d9:8c», NAME=«wlan0» а вот загружать драйвер только вручную..тот скрипт RUN что написали не срабатывает

IURII
() автор топика

«Может ли машина написать симфонию, создать шедевр»

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

Типикал мясные мешки.

anonymous
()
Ответ на: комментарий от anonymous

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

Да...подумав...но почему то в падлу не захотел разбираться..ну шо я сделаю не в кайф разбираться...посыл тут конечно иной...тому кто делал эти теги разметки надо что то переделать..чтобы и дауну было понятно...ИМХО

IURII
() автор топика
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

Выслал lsusb -v. Помогите составить как все это правильно мне проделать чтобы было счастье...

IURII
() автор топика
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

Как добавить алиас в modprobe.conf вручную:

alias usb:v27D5p0080d*dc*dsc*dp*ic*isc*ip* ath6kl_usb

разясните как мне это сделать пожалуста..

IURII
() автор топика

Открываешь /etc/modprobe.conf в текстовом редакторе, добавляешь эту строчку, сохраняешь изменения.

Проверяшь: Извлекаешь устройство из usb разъема, выгружаешь модуль командой modprobe -r ath6kl_usb, вставляешь устройство обратно, смотришь список загруженных модулей командой lsmod |grep ath6kl_usb. Если модуль загрузился, значит алиас работает, ура.

iliyap ★★★★★
()
Ответ на: комментарий от iliyap

Супер все сработало как вы говорили Илья.

Но теперь вишенка на торте так сказать..

iwconfig мне выдает такое устройство

wlxc03e0f12d98c IEEE 802.11

к открытой сети нет проблем подключаться..

но к скрытой сети никак...

нашел выход вводя команду

sudo iwconfig wlxc03e0f12d98c essid NETGEAR2 (скрытая сеть называется NETGEAR2 - это понятно)

в этом случае все подключается..но

помогите как сделать (наверное создать правило , чтобы во первых

переименовать wlxc03e0f12d98c в просто wlan0 ,

а второе чтобы каждый раз не вводить

sudo iwconfig wlxc03e0f12d98c essid NETGEAR2

и тогда будет полное счастье.Спасибо.

ну и хочу добавить Вас в друзья на фейсбуке

я - https://www.facebook.com/nord.lviv?ref=bookmarks

IURII
() автор топика
Ответ на: комментарий от iliyap

переименовать я сам смог в udev создав

правило

SUBSYSTEM==«net», ATTRS{product}==«USBWLAN», NAME=«wlan0»

а вот что делать с постоянным

sudo iwconfig wlan0 essid NETGEAR2

причем при каждом втыке в другой юсб порт не знаю

нужна помощь

IURII
() автор топика
Ответ на: комментарий от iliyap

так все через NetworkManager...там есть подключение к скрытой сети...но удается это сделать..только после sudo iwconfig wlan0 essid «ССИД скр.сети»..вот в чем дело..

IURII
() автор топика
Ответ на: комментарий от IURII

может есть еще какие то варианты..но я пробовал разные в NetworkManager в т.ч. с назначением ip...и др.

IURII
() автор топика
Ответ на: комментарий от iliyap

может завтра попробую правило

SUBSYSTEM==«net», ATTRS{product}==«USBWLAN», RUN+=«/sbin/sudo

iwconfig wlan0 essid NETGEAR2»

что скажете?

IURII
() автор топика
Ответ на: комментарий от iliyap

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

NetworkManager имеется как и других дистрибутивах линукс

IURII
() автор топика
Ответ на: комментарий от IURII

Что именно не удаётся? По указанной ссылке две команды:

nmcli c add type wifi con-name <name> ifname wlan0 ssid <ssid>
nmcli c modify <name> wifi-sec.key-mgmt wpa-psk wifi-sec.psk <password>

Какая из них не работает?

iliyap ★★★★★
()
Ответ на: комментарий от iliyap

root@iurii-desktop:/home/iurii# nmcli c add type wifi con-name <NETGEAR2> ifname wlan0 ssid <NETGEAR2>

bash: синтаксическая ошибка рядом с неожиданным маркером «newline»

root@iurii-desktop:/home/iurii# nmcli c modify <NETGEAR2> wifi-sec.key-mgmt wpa-psk wifi-sec.psk <ufkz1986>

bash: синтаксическая ошибка рядом с неожиданным маркером «newline» root@iurii-desktop:/home/iurii#

IURII
() автор топика
Ответ на: комментарий от IURII

почему то скрипт

SUBSYSTEM==«net», ATTRS{product}==«USBWLAN», RUN+=«/sbin/sudo

iwconfig wlan0 essid NETGEAR2»

не срабатывает только вручную

IURII
() автор топика
Ответ на: комментарий от IURII

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

IURII
() автор топика
Ответ на: комментарий от Bloody

подозреваю что скрипт не срабатывает потому что его надо выполнять под правами суперпользователяюА как это задать?

IURII
() автор топика
Ответ на: комментарий от ados

скрипт не срабатывает потому что его надо выполнять под правами суперпользователяю А как это задать?

IURII
() автор топика
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

root@iurii-desktop:/home/iurii# nmcli c add type wifi con-name BFSS ifname wlan0 ssid NETGEAR2 Соединение «BFSS» (bca72c8d-f957-4181-a1ee-9af64e58c3c7) добавлено.

root@iurii-desktop:/home/iurii# nmcli c modify BFSS wifi-sec.key-mgmt wpa-psk wifi-sec.psk ufkz1986

root@iurii-desktop:/home/iurii# nmcli c up BFSS

на короткое время соединение работает -секунд5-10 а потом

Ошибка: сбой активации соединения: Не удалось обнаружить сеть Wi-Fi root@iurii-desktop:/home/iurii#

IURII
() автор топика

вот и выходит что кроме как вручную вводить

sudo iwconfig wlan0 essid NETGEAR2

ничего не работает

теперь вопрос в том как автоматически делать это при подключении модуля в любой юсб порт

IURII
() автор топика
Ответ на: комментарий от IURII

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

я так и не нашел где ошибка

IURII
() автор топика
Ответ на: комментарий от IURII

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

anonymous
()
Ответ на: комментарий от anonymous

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

IURII
() автор топика
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

Спасибо Илья! Эта команда выполняется но она есть также и в НМ(Подключиться к скрытой сети)..но не помогает «соединение разорвано») Единственное что помогает sudo iwconfig wlan0 essid NETGEAR2, но после каждой перезагрузки или перевтыке юсб ее вручную надо вводить.Я сделал скрипт он выполняется но всегда надо вручную вводить пароль судо..ну да ладно..оставлю так

IURII
() автор топика
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

создал скрипт my_script такого содержания «#!/bin/bash sudo iwconfig wlan0 essid NETGEAR2» добавил в UDEV правило строку SUBSYSTEM==«net», NAME=«wlan0», RUN+="./my_script" но она не выполняется ..а вручную - пожалуйста..только предлагает ввести пароль (понятно,что если не под рутом выполняю в терминале)

IURII
() автор топика

Попробуй такое правило udev:

ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", RUN+="/sbin/iwconfig %k essid NETGEAR2"

ACTION==«add» — должно срабатывать только на добавление сетевого интерфейса. ENV{DEVTYPE}==«wlan» — должно срабатывать только на беспроводные интерфейсы. Имя интерфейса не указано специально, чтобы оно срабатывало на любой беспроводной интерфейс. /sbin/iwconfig — надо указывать полный путь к запускаемой программе. %k — udev раскроет в реальное имя интерфейса при срабатывании правила. sudo не нужен, так как udev запускает программы от имени рута.

iliyap ★★★★★
()
Последнее исправление: iliyap (всего исправлений: 1)
Ответ на: комментарий от iliyap

Помогите установить драйвер ath9k Wi-Fi usb модуля (AR9374)

Хочу вас добавить в друзья в соцсетях..fb,ok,vk напишите где вы и ссылки..или viber?watsfp ибо с меня кофе...

IURII
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.