<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>lug.vn.ua &#187; Debian</title>
	<atom:link href="http://lug.vn.ua/category/linux/debian/feed/" rel="self" type="application/rss+xml" />
	<link>http://lug.vn.ua</link>
	<description>Група користувачів ОС GNU/Linux м. Вінниці</description>
	<lastBuildDate>Tue, 29 Jun 2010 23:29:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Настройка имен устройств через udev (Debian Squeeze)</title>
		<link>http://lug.vn.ua/2010/02/02/nastrojka-ymen-ustrojstv-cherez-udev-debian-squeeze/</link>
		<comments>http://lug.vn.ua/2010/02/02/nastrojka-ymen-ustrojstv-cherez-udev-debian-squeeze/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 18:08:33 +0000</pubDate>
		<dc:creator>Щепановський Костя</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[rules]]></category>
		<category><![CDATA[squeeze]]></category>
		<category><![CDATA[udev]]></category>
		<category><![CDATA[usb]]></category>
		<category><![CDATA[usb-serial]]></category>

		<guid isPermaLink="false">http://lug.vn.ua/?p=859</guid>
		<description><![CDATA[Понадобилось мне подключить к компьютеру несколько usb-serial преобразователей, при этом необходимо было как-нибудь но однозначно идентифицировать преобразователи (а заодно и устройства подключенные к ним, чтобы пользователь переключая устройство в другой usb порт не перенастраивал программу). 
Правило для udev вышло таким:

ACTION!=&#34;add&#124;change&#34;, GOTO=&#34;my_serial_end&#34;
SUBSYSTEM!=&#34;tty&#34;, GOTO=&#34;my_serial_end&#34;
KERNEL!=&#34;ttyUSB[0-9]*&#124;ttyACM[0-9]*&#34;, GOTO=&#34;my_serial_end&#34;
SUBSYSTEMS==&#34;usb-serial&#34;, ENV&#123;ID_PORT&#125;=&#34;$attr{port_number}&#34;
IMPORT=&#34;path_id %p&#34;
&#160;
IMPORT=&#34;usb_id --export %p&#34;
ENV&#123;ID_SERIAL&#125;==&#34;&#34;, GOTO=&#34;my_serial_end&#34;
SUBSYSTEMS==&#34;usb&#34;, ENV&#123;ID_IFACE&#125;=&#34;$attr{bInterfaceNumber}&#34;
ENV&#123;ID_IFACE&#125;==&#34;&#34;, GOTO=&#34;my_serial_end&#34;
SYMLINK+=&#34;ttyUSB_$env{ID_SERIAL}&#34;
&#160;
LABEL=&#34;my_serial_end&#34;

Сохраняем файл с этим содержанием в [...]]]></description>
			<content:encoded><![CDATA[<p>Понадобилось мне подключить к компьютеру несколько usb-serial преобразователей, при этом необходимо было как-нибудь но однозначно идентифицировать преобразователи (а заодно и устройства подключенные к ним, чтобы пользователь переключая устройство в другой usb порт не перенастраивал программу). <span id="more-859"></span></p>
<p>Правило для udev вышло таким:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ACTION<span style="color: #000000; font-weight: bold;">!</span>=<span style="color: #ff0000;">&quot;add|change&quot;</span>, <span style="color: #007800;">GOTO</span>=<span style="color: #ff0000;">&quot;my_serial_end&quot;</span>
SUBSYSTEM<span style="color: #000000; font-weight: bold;">!</span>=<span style="color: #ff0000;">&quot;tty&quot;</span>, <span style="color: #007800;">GOTO</span>=<span style="color: #ff0000;">&quot;my_serial_end&quot;</span>
KERNEL<span style="color: #000000; font-weight: bold;">!</span>=<span style="color: #ff0000;">&quot;ttyUSB[0-9]*|ttyACM[0-9]*&quot;</span>, <span style="color: #007800;">GOTO</span>=<span style="color: #ff0000;">&quot;my_serial_end&quot;</span>
<span style="color: #007800;">SUBSYSTEMS</span>==<span style="color: #ff0000;">&quot;usb-serial&quot;</span>, ENV<span style="color: #7a0874; font-weight: bold;">&#123;</span>ID_PORT<span style="color: #7a0874; font-weight: bold;">&#125;</span>=<span style="color: #ff0000;">&quot;<span style="color: #007800;">$attr</span>{port_number}&quot;</span>
<span style="color: #007800;">IMPORT</span>=<span style="color: #ff0000;">&quot;path_id %p&quot;</span>
&nbsp;
<span style="color: #007800;">IMPORT</span>=<span style="color: #ff0000;">&quot;usb_id --export %p&quot;</span>
ENV<span style="color: #7a0874; font-weight: bold;">&#123;</span>ID_SERIAL<span style="color: #7a0874; font-weight: bold;">&#125;</span>==<span style="color: #ff0000;">&quot;&quot;</span>, <span style="color: #007800;">GOTO</span>=<span style="color: #ff0000;">&quot;my_serial_end&quot;</span>
<span style="color: #007800;">SUBSYSTEMS</span>==<span style="color: #ff0000;">&quot;usb&quot;</span>, ENV<span style="color: #7a0874; font-weight: bold;">&#123;</span>ID_IFACE<span style="color: #7a0874; font-weight: bold;">&#125;</span>=<span style="color: #ff0000;">&quot;<span style="color: #007800;">$attr</span>{bInterfaceNumber}&quot;</span>
ENV<span style="color: #7a0874; font-weight: bold;">&#123;</span>ID_IFACE<span style="color: #7a0874; font-weight: bold;">&#125;</span>==<span style="color: #ff0000;">&quot;&quot;</span>, <span style="color: #007800;">GOTO</span>=<span style="color: #ff0000;">&quot;my_serial_end&quot;</span>
SYMLINK+=<span style="color: #ff0000;">&quot;ttyUSB_<span style="color: #007800;">$env</span>{ID_SERIAL}&quot;</span>
&nbsp;
<span style="color: #007800;">LABEL</span>=<span style="color: #ff0000;">&quot;my_serial_end&quot;</span></pre></div></div>

<p>Сохраняем файл с этим содержанием в /etc/udev/rules.d/ с именем типа 99-serial.rules (чтобы они вызывальсь после всех остальных сначала имени идут цифры &#8211; порядок по приоритету)</p>
<p>В результате при подключении нескольких устройств даного типа получаем:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">konstantin<span style="color: #000000; font-weight: bold;">@</span>konstantin-dev:~$ <span style="color: #c20cb9; font-weight: bold;">ls</span> <span style="color: #660033;">-l</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB<span style="color: #000000; font-weight: bold;">*</span>
crw-rw---- <span style="color: #000000;">1</span> root dialout <span style="color: #000000;">188</span>, <span style="color: #000000;">0</span> лют  <span style="color: #000000;">2</span> <span style="color: #000000;">19</span>:08 <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB0
crw-rw---- <span style="color: #000000;">1</span> root dialout <span style="color: #000000;">188</span>, <span style="color: #000000;">1</span> лют  <span style="color: #000000;">2</span> <span style="color: #000000;">18</span>:<span style="color: #000000;">44</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB1
lrwxrwxrwx <span style="color: #000000;">1</span> root root         <span style="color: #000000;">7</span> лют  <span style="color: #000000;">2</span> <span style="color: #000000;">18</span>:<span style="color: #000000;">44</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB_FTDI_USB__-__Serial_Cable_FTR4K233 -<span style="color: #000000; font-weight: bold;">&amp;</span>gt; ttyUSB1
lrwxrwxrwx <span style="color: #000000;">1</span> root root         <span style="color: #000000;">7</span> лют  <span style="color: #000000;">2</span> <span style="color: #000000;">18</span>:<span style="color: #000000;">43</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB_ftdi_usb_serial_converter_ftDGUU5S -<span style="color: #000000; font-weight: bold;">&amp;</span>gt; ttyUSB0</pre></div></div>

<p>Подробное описание по работе с udev можно найти <a title="здесь" href="http://reactivated.net/writing_udev_rules.html" target="_blank">http://reactivated.net/writing_udev_rules.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lug.vn.ua/2010/02/02/nastrojka-ymen-ustrojstv-cherez-udev-debian-squeeze/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
