@Vash, ci sono due tipi di regole per udev, una di identificazione e l'altra di esecuzione. Tramite la prima devi identificare il device, con l'altra dici a udev di fare determinate azione, una volta che il device è stato identificato. L'identificazione può avvenire con molti programmi o cat nel sysfs. Tu usi udevinfo, ma non puoi prendere output a caso. A esempio, da questo pezzo di output:
Codice: Seleziona tutto
looking at device '/block/sdw/sdw1':
KERNEL=="sdw1"
SUBSYSTEM=="block"
DRIVER==""
ATTR{dev}=="65:97"
ATTR{start}=="63"
ATTR{size}=="625137282"
ATTR{stat}==" 696 1225 1 1"
looking at parent device '/block/sdw':
KERNELS=="sdw"
SUBSYSTEMS=="block"
DRIVERS==""
ATTRS{dev}=="65:96"
ATTRS{range}=="16"
ATTRS{removable}=="0"
ATTRS{size}=="625142448"
ATTRS{stat}==" 219 486 1297 304 1 0 1 0 0 224 304"
ATTRS{capability}=="12"
non puoi usare ATTR{stat}==" 696 1225 1 1" e metterlo in AND con ATTRS{removable}=="0", perchè sono in rami differenti del sysfs, quindi la regola non matcherà mai.
Io ti consiglierei di utilizzare:
Codice: Seleziona tutto
SUBSYSTEMS=="usb", ATTRS{product}=="LaCie Desktop Hard Drive", ATTRS{serial}=="ST3320820A 6QF2JDAB", SYMLINK+="HD_usb"
Ricorda che con questa regola stai dicendo a udevd:"Se incontri una periferica attaccata al sottosistema "usb" AND il suo attributo di prodotto è:
"LaCie Desktop Hard Drive" AND il suo seriale è: "ST3320820A 6QF2JDAB", allora creami anche il link simbolico "HD_usb"".
Udevd si limita a creare un link simbolico chiamato "HD_usb" che punta al device al quale il tuo HD è stato collegato, non importa se lui è /dev/sda1 o /dev/sda2...
Per montare questo HD basta dare
Spina
P.S. Non importa riavviare udevd, usa il tracciamento dei file del kernel (non ricordo il nome ora) e quindi viene avvisato dal kernel se un file di regole viene modificato.