Portál AbcLinuxu, 5. listopadu 2025 17:52
...
Pro psaní pravidel pro udev se může hodit tento nástroj udevbrowser
Následující příkaz Ti vypíše informace, které se Ti budou hodit až budeš přidávat nové udev pravidlo:
$ udevinfo -a -p $(udevinfo -q path -n /dev/ttyS0)
Takhle nějak by jsem si představoval nové pravidlo:
SUBSYSTEM=="tty" DRIVERS=="xxx" ATTRS{product}=="xxx" name="ttyS1"
Nové pravidlo můžeš přidat např. do local.rules a udělat link:
# cd /etc/udev/rules.d
# ln -s ../local.rules 010_local.rules
.
looking at device '/devices/pci0000:00/0000:00:1e.0/0000:02:0b.1/1.0/ttyS0':
KERNEL=="ttyS0"
SUBSYSTEM=="tty"
DRIVER==""
ATTR{dev}=="4:64"
looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:02:0b.1/1.0':
KERNELS=="1.0"
SUBSYSTEMS=="pcmcia"
DRIVERS=="serial_cs"
ATTRS{modalias}=="pcmcia:m0221c2000f02fn00pfn00paE83885C1pbE014099BpcE2F9A539pd00000000"
ATTRS{prod_id3}=="ML2029"
ATTRS{prod_id2}=="GC75 PC Card"
ATTRS{prod_id1}=="Sony Ericsson"
ATTRS{card_id}=="0x2000"
ATTRS{manf_id}=="0x0221"
ATTRS{func_id}=="0x02"
ATTRS{pm_state}=="on"
ATTRS{function}=="0x00"
looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:02:0b.1':
KERNELS=="0000:02:0b.1"
SUBSYSTEMS=="pci"
DRIVERS=="yenta_cardbus"
ATTRS{msi_bus}=="1"
ATTRS{broken_parity_status}=="0"
ATTRS{enable}=="2"
ATTRS{modalias}=="pci:v00001179d00000617sv00001179sd00000001bc06sc07i00"
ATTRS{local_cpus}=="f"
ATTRS{irq}=="11"
ATTRS{class}=="0x060700"
ATTRS{subsystem_device}=="0x0001"
ATTRS{subsystem_vendor}=="0x1179"
ATTRS{device}=="0x0617"
ATTRS{vendor}=="0x1179"
looking at parent device '/devices/pci0000:00/0000:00:1e.0':
KERNELS=="0000:00:1e.0"
SUBSYSTEMS=="pci"
DRIVERS==""
ATTRS{msi_bus}=="1"
ATTRS{broken_parity_status}=="0"
ATTRS{enable}=="1"
ATTRS{modalias}=="pci:v00008086d00002448sv00000000sd00000000bc06sc04i00"
ATTRS{local_cpus}=="f"
ATTRS{irq}=="0"
ATTRS{class}=="0x060400"
ATTRS{subsystem_device}=="0x0000"
ATTRS{subsystem_vendor}=="0x0000"
ATTRS{device}=="0x2448"
ATTRS{vendor}=="0x8086"
looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"
SUBSYSTEMS==""
DRIVERS==""
Pak jsem si napsal pravidlo:
SUBSYSTEM=="tty", ATTRS{dev}=="4:64", NAME="ttyS1"
(bráno z prvního odstavce výpisu).
a) s/ATTRS/ATTR/
b) řekl bych, že to nebude nejvhodnější atribut
A co třeba:
SUBSYSTEM=="tty", DRIVERS=="serial_cs", ATTRS{prod_id3}=="ML2029", NAME="ttyS1"
).
Momentálně IR port nepoužívám, takže mi toto řešení vyhovuje, ale zajímalo by mě, jak by se to řešilo, kdybych najednou chtěl ten IR port používat např. pro připojení mobilního telefonu. Musel bych ten modul zase nahrát a pak bych měl zase problémy s ttyS0.
Nebyl by nějaký nápad?
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.