View previous topic :: View next topic |
Author |
Message |
Adrien Advocate
Joined: 13 Jul 2004 Posts: 2295 Location: Bretagne
|
Posted: Fri Jan 17, 2014 11:16 pm Post subject: [udev] règles disques amovibles |
|
|
Bonsoir à tous! et... meilleurs vœux! ^^
Après une looooongue période d'absence, me revoilà de retour sur notre distro favorite.
Je viens de terminer -ou presque- deux installations (PC fixe et portable) et tout fonctionne comme je veux, sauf les règles udev que j'essaie d'écrire pour mes disques amovibles (clés USB, microsd, HD externes etc...).
J'ai rédigé trois règles pour mes adaptateurs wifi, qui fonctionnent parfaitement:
Code: | # cat /etc/udev/rules.d/10-wireless.rules
# Adaptateurs Wifi
KERNEL=="wlan0", NAME="ra0"
KERNEL=="wlan*", ATTR{address}=="00:60:b3:2b:78:8a", NAME="zd0"
KERNEL=="wlan*", ATTR{address}=="90:e6:ba:f0:08:b3", NAME="ra1" |
Une fois les adaptateurs branchés:
Code: | # ifconfig -a
...
ra0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 08:3e:8e:56:89:e3 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ra1: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 90:e6:ba:f0:08:b3 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
zd0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 00:60:b3:2b:78:8a txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
...
|
Jusqu'ici tout va bien
Mais pour les clés USB et compagnie, c'est la débandade :\
Exemple simple pour une des clés que je souhaite renommer "stick":
Code: | # cat /etc/udev/rules.d/20-amovible.rules
# clé USB Kingston
SUBSYSTEMS=="scsi", ATTRS{model}=="DataTraveler 3.0", ATTRS{vendor}=="Kingston", NAME="stick" |
Je reboote et là, rien, ma clé s'appelle toujours /dev/sdb...
Au passage, j'ai ça dans dmesg:
Code: | # dmesg
...
[ 17.070704] systemd-udevd[2152]: NAME="stick" ignored, kernel device nodes can not be renamed; please fix it in /etc/udev/rules.d/20-amovible.rules:2
... |
Versions udev/systemd
Code: | # emerge -pv udev systemd
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-apps/systemd-208-r2:0/1 USE="acl filecaps firmware-loader gudev introspection kmod pam policykit tcpd -audit -cryptsetup -doc -gcrypt -http -lzma -python -qrcode (-selinux) {-test} -vanilla -xattr" ABI_X86="(64) (-32) (-x32)" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7" 2,335 kB
[ebuild R ] virtual/udev-208 USE="gudev introspection kmod (-selinux) -static-libs" ABI_X86="(64) (-32) (-x32)" 0 kB |
J'ai essayé d'autres règles qui semblent pourtant correctes mais rien n'y fait.
Peut-être est-ce normal et vu le message de dmesg, je devrais uniquement me contenter d'un lien symbolique...?
Toutes vos suggestions sont bienvenues s'il y en a car je n'ai pas touché à Gentoo /udev depuis très très longtemps.
J'ai peut-être simplement oublié d'installer un paquet...? Oublié une option dans le noyau...?
Merci à vous! |
|
Back to top |
|
|
GentooUser@Clubic l33t
Joined: 01 Nov 2004 Posts: 829
|
Posted: Sat Jan 18, 2014 12:10 am Post subject: Re: [udev] règles disques amovibles |
|
|
EDIT: même avec l'équivalent de Quote: | SUBSYSTEMS=="block", IMPORT{parent}=="ID_*", ENV{ID_MODEL}=="DataTraveler 3.0", ENV{ID_VENDOR}=="Kingston" | la seule action possible est SYMLINK désolé pour la fausse piste.
Disclaimer: je connait pas trop la soupe interne de udev moi non plus
/dev/sdb c'est périphérique de type bloc, avec SUBSYSTEMS=="scsi" tu vise son parent qui n'a pas de node dans /dev à proprement parler vu que c'est une adresse SCSI (qui doit exister dans /sys cependant) peu utile et apparemment impossible de la renommer.
Cependant le périphérique bloc lui même n'a pas d'ATTRS{model} rattaché, peut-être qu'en jouant avec IMPORT on dois arriver à quelque chose : |
|
Back to top |
|
|
Adrien Advocate
Joined: 13 Jul 2004 Posts: 2295 Location: Bretagne
|
Posted: Sat Jan 18, 2014 11:38 pm Post subject: |
|
|
Merci de ta réponse GentooUser! Effectivement, je faisait complètement fausse route avec ma règle à la noix...
Alors, je poursuis, ce qui m'ennuie c'est que même avec des règles plus simples, ça ne fonctionne pas (mais peut-être que j'ai tout faux là-aussi)
Voilà la sortie sur laquelle je me base:
Code: | # udevadm info -a -p /sys/block/sdc
looking at device '/devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/host7/target7:0:0/7:0:0:0/block/sdc':
KERNEL=="sdc"
SUBSYSTEM=="block"
DRIVER==""
ATTR{ro}=="0"
ATTR{size}=="15810560"
ATTR{stat}==" 168 1 1352 101 0 0 0 0 0 101 101"
ATTR{range}=="16"
ATTR{discard_alignment}=="0"
ATTR{events}=="media_change"
ATTR{ext_range}=="256"
ATTR{events_poll_msecs}=="-1"
ATTR{alignment_offset}=="0"
ATTR{inflight}==" 0 0"
ATTR{removable}=="1"
ATTR{capability}=="51"
ATTR{events_async}=="" |
Et ma nouvelle règle:
Code: | # cat 20-amovible.rules
KERNEL=="sd?1", SUBSYSTEM=="block", ATTR{size}=="15810560", NAME="stick%n" |
Je me suis basé principalement sur ce guide:
http://doc.ubuntu-fr.org/udev |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|