LINUX.ORG.RU

UDEV: Написание правил

 ,


0

0

А.Дмитриев перевел статью Д.Дрейка (Daniel Drake) "UDEV: Установление правил".

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

  • Изменить имя файла устройства с умолчального на какое-либо другое.
  • Создать альтернативное/постоянное имя файла устройства, путем создания символической ссылки на файла по умолчанию.
  • Проименовать файл устройства на основании вывода (output) произвольной программы.
  • Изменить права доступа и владельца файла устройства.
  • Запустить скрипт, которым создается (либо удаляется) файл устройства (обычно, когда устройство подключается или отключается).
  • Переименовать сетевые интерфейсы.

// Внимание, перевод содержит много неудобоваримых калек с английских терминов. (Shaman007)

>>> Подробности

★★★

Проверено: Shaman007 ()

это на русский язык перевод?

anonymous
()

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

PolarFox ★★★★★
()

Вот это, я понимаю, перевод! Такое нужно еще и на русский переводить отдельно.

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

гы, а у вас звезда потухла!

anonymous
()

Твой udev. Твои правила.

anonymous
()

Это в оригинале «Writing udev rules» что ли? Установление правил, блин.

Sphinx ★★☆☆
()

Установление правил.... Бугога!

Farcaller ★★
()

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

luckyme
()

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

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

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

А возможно ли в festival указать, через какую звуковуху это говорить (у меня их две, и для вывода системных сообщений использую встроенную)?

avol
()

В %*&%# такой перевод, учите английский, неучи.

anonymous
()

ссылка работает?

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

>Перевод не принимает во внимание то, что разработчики udev категорически против написания пользователями любых правил. См. http://marc.info/?l=linux-hotplug&m=121846825230235&w=2

Не любых, а большинства. Читайте внимательнее. Что плохого
в том, если кто-то добавит правило для звуковой индикации о
подключении устройства или для инициализации USB-устройства
(например загрузка firmware в принтер)?
 

Цитата:

I see the new policy of shipping the default rules in /lib just as a reinforcement of the fact that (most) udev rules are not to be edited by users nor admins. Of course the world isn't as black as white as 
you paint it hence why udev will still read files from /etc/udev/rules.d so hackers, ppl building embedded systems and
hobbyist users can override rules there.

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

>разработчики udev категорически против написания пользователями любых правил

А если разработчики дистриба написали кривые правила? Например, мне по работе требуется общение с разными нестандартными USB-девайсами. На рабочей машине Ubuntu, и в нём /dev/bus/usb/*/* по-умолчанию (если не камера, не сканер и пр.) принадлежат root'у, а не спец. группе ("usb", например). Пришлось дописывать.

AsphyX ★★★
()

>А.Дмитриев перевел статью Д.Дрейка (Daniel Drake) "UDEV: Установление правил".

Респект и Уважуха ! ;)

srgaz
()

> Внимание, перевод содержит много неудобоваримых калек с английских терминов

У нас будет свой перевод с очком и калеками?

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

> Может спецы по udev'у подскажут где я прокололся

Блин, ну я же приводил там тебе решение! Вот тебе еще одно, работающее на Fedora 3/8/9 (это те, которые у меня есть сейчас
чтобы проверить):

$ cat /sbin/mkscsi 
#!/bin/sh
if [ -d "/sys/$1/device" ] ; then
    cd "/sys/$1/device">/dev/null|| exit
    if [ -e scsi_disk* ] ; then
        for fname in scsi_disk* ; do
            path=`echo -n "$fname" | cut -f 2,3,4,5 -d ":"`
            ssdn_controller=`echo -n "$path" | cut -f 1 -d ":"`
            ssdn_bus=`echo -n "$path" | cut -f 2 -d ":"`
            ssdn_device=`echo -n "$path" | cut -f 3 -d ":"`
            ssdn_lun=`echo -n "$path" | cut -f 4 -d ":"`
            echo SSDN_CTR=$ssdn_controller
            echo SSDN_BUS=$ssdn_bus
            echo SSDN_DEV=$ssdn_device
            echo SSDN_LUN=$ssdn_lun
            if [ "_$ssdn_controller" != "_" -a "_$ssdn_bus" != "_" -a "_$ssdn_device" != "_" ] ; then
                echo SSDN_PATH=c"$ssdn_controller"t"$ssdn_bus"d"$ssdn_device"
            fi
            exit
        done
    fi
fi
$ cat /etc/udev/rules.d/99-sun-disk.rules 
#
# Solaris-style cNtMdXpY device naming scheme
#
# Tracing SCSI disks and CD/DVD drives
#
KERNEL=="sd*[!0-9]", IMPORT{program}="/sbin/mkscsi %p"
KERNEL=="sr*[0-9]", IMPORT{program}="/sbin/mkscsi %p"
KERNEL=="sd*[!0-9]", ENV{SSDN_PATH}=="?*", SYMLINK+="rdsk/$env{SSDN_PATH}"
KERNEL=="sr*[0-9]", ENV{SSDN_PATH}=="?*", SYMLINK+="rdsk/$env{SSDN_PATH}"

#
# Tracing partitions
#
ENV{DEVTYPE}="partition", IMPORT{parent}="SSDN_PATH"
KERNEL=="sd*[0-9]", ENV{SSDN_PATH}=="?*", SYMLINK+="rdsk/$env{SSDN_PATH}p%n"

$ cat /etc/udev/rules.d/

no-dashi ★★★★★
()
Ответ на: комментарий от luckyme

> Человек старался переводил

Старался??? Ржунимагу. За такой перевод в школе самое большее три с минусом поставят. И по русскому языку тоже.

> за это ему большой плюс,

Милейший А. Дмитриев, не переводите больше ничего. Никогда. Не занимайтесь не своим делом.

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

То что ты приводил я и сам накорябал, но оно не работает (хотя у тебя работает)

И напрягают след. строки:

udev_node_update_symlinks: update symlink 'dsk/c0t0d0s1' of '/block/sda/sda2'
update_link: found -1 devices with name 'dsk/c0t0d0s1'
update_link: no reference left, remove 'dsk/c0t0d0s1'

Какого хрена оно "no reference left, remove"

sdio ★★★★★
()

Написано же: "Свободный перевод: Алексей Дмитриев" с какого хрена претензии-то к нему?

dagger
()
Ответ на: комментарий от no-dashi

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

no-dashi ★★★★★
()
Ответ на: комментарий от sdio

> Спасибо, наконец то все прояснилось. Сработало.

Документация рулит, а также автодополнение в bash к слову udev :-)

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

Я в курсе, но этого линка официально в дебиане нет.

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

Это неудобоваримые КАЛЬКИ. В данном случае имелось в виду "Калек" с ударением на первом слоге.

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

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

Мну представил озвучку текстом: "А, опять эта флешка с авторановым вирусом! Хрю-хрю!!!"

Если серьёзно - статья полезная.

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