Pagina 1 di 2
mi aiutereste a capire le regole di udev??
Inviato: sab 6 gen 2007, 13:38
da danix
Salve a tutti,
sto provando a capire come si fa a creare delle regole personalizzate per udev, ma non ci riesco... vi spiego il problema, ho un lettore di schede esterno con 4 ingressi, collegato tramite usb che lascio sempre attaccato, all'avvio viene riconosciuto e per ogni porta udev assegna il nome sda, sdb, sdc, sdd.
Quando inserisco una scheda SD (che corrisponde alla prima porta, quindi sda) gli viene assegnato il nome sda1, in fstab ho fatto in modo che il device sda1 venga montato in /mnt/player, in quanto quando collego il mio lettore mp3 (che viene riconosciuto anche come sda1) voglio che sia montato li... da quando ho collegato il lettore di schede ho dovuto modificare fstab in quanto collegando il lettore mi veniva dato come sde1 perchè le 4 lettere prima sono occupate, ho letto un pò in giro e ho visto che si può far in modo che udev si comporti di conseguenza in base al device che viene collegato al sistema, ma non sono riuscito a venire a capo al sistema delle regole, non ci ho capito molto...
qualcuno potrebbe farmi la gentilezza di spiegarmi il procedimento corretto per creare una regola??
Vi ringrazio anticipatamente...
Inviato: sab 6 gen 2007, 14:03
da gohanz
Ma perchè non installi HAL e DBUS presenti su Slacky, che ti automatizzano il tutto! Anche io ho un lettore di schede e funziona benissimo con HAL e DBUS! Senza toccare alcun file di configurazione!
Inviato: sab 6 gen 2007, 14:13
da danix
gohanz ha scritto:Ma perchè non installi HAL e DBUS presenti su Slacky, che ti automatizzano il tutto! Anche io ho un lettore di schede e funziona benissimo con HAL e DBUS! Senza toccare alcun file di configurazione!
perchè ho letto su s4d una frase di pat in cui dice che hal non è ancora abbastanza affidabile e per questo motivo non è stato inserito nella distro... comunque se mi dici che non ti da problemi provo ad installarlo e a documentarmi, anche se qualche info in più sulle regole di udev credo che potrebbe sempre tornarmi utile...
mi spiegheresti in poche parole cosa sono hal e dbus?? Giusto per sapere con cosa avrò a che fare...
ti ringrazio per avermi risposto...

Inviato: sab 6 gen 2007, 14:21
da gohanz
Puoi usare i due pacchetti di Slacky tranquillamente! Per le regole di Udev ti rimando alla pagina 110 di S4D per uno sguardo su Hal puoi leggere
http://www.ometer.com/hardware.html
Inviato: sab 6 gen 2007, 14:48
da danix
ok, ho installato dbus e hal e ho configurato tutto come dice in questa tabella:
Codice: Seleziona tutto
+--------------------------------------------------------------------------------------+
| Done. It's needed to create an HAL dedicated mounters group.. |
| |
| # groupadd mounters |
| |
| Now. It's needed to edit /etc/group and add all desired user |
| |
| mounters:x:105:user1,user2,user3 |
| |
| Now. Edit /etc/dbus-1/system.d/hal.conf |
| |
| <!-- You can change this to a more suitable user, or make per-group --> |
| <policy group=105> |
| <allow |
| send_interface=org.freedesktop.Hal.Device.SystemPowerManagement/> |
| <allow send_interface=org.freedesktop.Hal.Device.LaptopPanel/> |
| <allow send_interface=org.freedesktop.Hal.Device.Volume/> |
| <allow send_interface=org.freedesktop.Hal.Device.Volume.Crypto/> |
| </policy> |
| |
| Replace *105* with your mounters group number |
| |
| Now. Edit /etc/udev/rules.d/udev.rules |
| Uncomment #RUN+=socket:/org/freedesktop/hal/udev_event |
| Like RUN+=socket:/org/freedesktop/hal/udev_event |
| Save and restart all service and KDE or restart pc |
| |
| # /etc/rc.d/rc.messagebus start |
| # /etc/rc.d/rc.hal start |
| # /etc/rc.d/rc.udev reload |
+--------------------------------------------------------------------------------------+
però non ho capito una cosa, hal lo devo lanciare in qualche modo o è un demone che lavora in background??
In ogni caso, come faccio ad interagire con lui??
C'è un qualche eseguibile che posso lanciare?? Ti chiedo questo perchè uso fluxbox e quindi non ho a disposizione i vari tool di kde (a meno che non sia io ad aggiungerli al menù), ho provato a usare which e l'ho trovato nel path di ricerca di root, non posso usare hal anche da utente normale??
scusami per tutte queste domande, ma vorrei capirci qualcosa in più...
Comunque per quanto riguarda S4D ora vado a dargli un'occhiata più approfondita, ti ringrazio...
Inviato: sab 6 gen 2007, 16:58
da samiel
Attenzione, la parte su udev
è quella che devo aggiornare melgio
alla nuova configurazione di Slack 11.0.
M.
Inviato: sab 6 gen 2007, 19:05
da gohanz
danix85 ha scritto:ok, ho installato dbus e hal e ho configurato tutto come dice in questa tabella:
Codice: Seleziona tutto
+--------------------------------------------------------------------------------------+
| Done. It's needed to create an HAL dedicated mounters group.. |
| |
| # groupadd mounters |
| |
| Now. It's needed to edit /etc/group and add all desired user |
| |
| mounters:x:105:user1,user2,user3 |
| |
| Now. Edit /etc/dbus-1/system.d/hal.conf |
| |
| <!-- You can change this to a more suitable user, or make per-group --> |
| <policy group=105> |
| <allow |
| send_interface=org.freedesktop.Hal.Device.SystemPowerManagement/> |
| <allow send_interface=org.freedesktop.Hal.Device.LaptopPanel/> |
| <allow send_interface=org.freedesktop.Hal.Device.Volume/> |
| <allow send_interface=org.freedesktop.Hal.Device.Volume.Crypto/> |
| </policy> |
| |
| Replace *105* with your mounters group number |
| |
| Now. Edit /etc/udev/rules.d/udev.rules |
| Uncomment #RUN+=socket:/org/freedesktop/hal/udev_event |
| Like RUN+=socket:/org/freedesktop/hal/udev_event |
| Save and restart all service and KDE or restart pc |
| |
| # /etc/rc.d/rc.messagebus start |
| # /etc/rc.d/rc.hal start |
| # /etc/rc.d/rc.udev reload |
+--------------------------------------------------------------------------------------+
però non ho capito una cosa, hal lo devo lanciare in qualche modo o è un demone che lavora in background??
In ogni caso, come faccio ad interagire con lui??
C'è un qualche eseguibile che posso lanciare?? Ti chiedo questo perchè uso fluxbox e quindi non ho a disposizione i vari tool di kde (a meno che non sia io ad aggiungerli al menù), ho provato a usare which e l'ho trovato nel path di ricerca di root, non posso usare hal anche da utente normale??
scusami per tutte queste domande, ma vorrei capirci qualcosa in più...
Comunque per quanto riguarda S4D ora vado a dargli un'occhiata più approfondita, ti ringrazio...
No non devi fare niente il pacchetto è fatto in modo che al primo riavvio parta tutto in automatico. Oppure puoi direttamente lanciare i demoni con la classica procedura.
/etc/rc.d/rc.messagebus start
/etc/rc.d/rc.hald start
Inviato: dom 7 gen 2007, 20:31
da danix
gohanz ha scritto:
No non devi fare niente il pacchetto è fatto in modo che al primo riavvio parta tutto in automatico. Oppure puoi direttamente lanciare i demoni con la classica procedura.
/etc/rc.d/rc.messagebus start
/etc/rc.d/rc.hald start
ma in questo modo come faccio a controllare le periferiche?? basta inserirne una e viene automaticamente montata??
non c'è un'interfaccia grafica che mi permetta di interagire con le periferiche??
grazie per le risposte...
Inviato: dom 7 gen 2007, 20:33
da gohanz
Si vengono automaticamente montante, poi puoi interagire con esse tramite konqueror. Ti appare una finestra Pop-up che ti chiede quello che vuoi fare!
Inviato: lun 8 gen 2007, 13:35
da danix
gohanz ha scritto:Si vengono automaticamente montante, poi puoi interagire con esse tramite konqueror. Ti appare una finestra Pop-up che ti chiede quello che vuoi fare!
Allora devo avere io un problema, perchè se provo ad inserire una penna usb, piuttosto che una memory SD nel lettore non succede nulla...
Comunque ho fatto un sacco di ricerche su zio google per informarmi meglio sulle regole di udev e ho provato a scriverne qualcuna, ti posto sia l'output di dmesg che di tail -f /var/log/messages e poi ti scrivo le regole che ho creato:
Codice: Seleziona tutto
$ dmesg
...
Vendor: Generic Model: USB SD Reader Rev: 1.00
Type: Direct-Access ANSI SCSI revision: 00
sd 3:0:0:0: Attached scsi removable disk sda
Vendor: Generic Model: USB CF Reader Rev: 1.01
Type: Direct-Access ANSI SCSI revision: 00
sd 3:0:0:1: Attached scsi removable disk sdb
Vendor: Generic Model: USB SM Reader Rev: 1.02
Type: Direct-Access ANSI SCSI revision: 00
sd 3:0:0:2: Attached scsi removable disk sdc
Vendor: Generic Model: USB MS Reader Rev: 1.03
Type: Direct-Access ANSI SCSI revision: 00
sd 3:0:0:3: Attached scsi removable disk sdd
...
questa è la parte relativa al lettore di schede
Codice: Seleziona tutto
$ tail -f /var/log/messages
...
Jan 8 13:25:55 darkstar kernel: usb 2-2: new full speed USB device using uhci_hcd and address 4
Jan 8 13:25:55 darkstar kernel: usb 2-2: configuration #1 chosen from 1 choice
Jan 8 13:25:55 darkstar kernel: scsi4 : SCSI emulation for USB Mass Storage devices
Jan 8 13:26:00 darkstar kernel: Vendor: Packard Model: Portable Player Rev: 0100
Jan 8 13:26:00 darkstar kernel: Type: Direct-Access ANSI SCSI revision: 04
Jan 8 13:26:00 darkstar kernel: SCSI device sde: 250368 512-byte hdwr sectors (128 MB)
Jan 8 13:26:00 darkstar kernel: sde: Write Protect is off
Jan 8 13:26:00 darkstar kernel: SCSI device sde: 250368 512-byte hdwr sectors (128 MB)
Jan 8 13:26:00 darkstar kernel: sde: Write Protect is off
Jan 8 13:26:00 darkstar kernel: sde: sde1
Jan 8 13:26:00 darkstar kernel: sd 4:0:0:0: Attached scsi removable disk sde
Jan 8 13:26:00 darkstar kernel: sd 4:0:0:0: Attached scsi generic sg4 type 0
...
questa invece era la parte relativa al mio lettore mp3 inserito nella porta usb dopo aver dato tail -f
ora ti mostro le regole:
Codice: Seleziona tutto
BUS="scsi", SYSFS{model}="USB SD Reader", NAME{all_partitions}="card_sd"
BUS="scsi", SYSFS{model}="USB CF Reader", NAME{all_partitions}="card_cf"
BUS="scsi", SYSFS{model}="USB SM Reader", NAME{all_partitions}="card_sm"
BUS="scsi", SYSFS{model}="USB MS Reader", NAME{all_partitions}="card_ms"
BUS="scsi", SYSFS{vendor}="Packard", SYSFS{model}="Portable Player", KERNEL="sd?1", SYMLINK="mymp3"
BUS="scsi", SYSFS{vendor}="Generic", NAME{all_partition}="usb_memory"
queste sono le regole che ho scritto, le prime 4 dovrebbero creare dei devices non appena inserisco una scheda nel lettore, la quinta dovrebbe riconoscere il mio lettore da marca e modello e creare un symlink e l'ultima l'ho scritta per tutte le penne generiche che inserisco
però come si vede dall'output dei comandi che ho postato tutto ciò non succede perchè, ad esempio, inserendo il lettore mp3 viene riconosciuto ma non viene creato il device /dev/mymp3 che dovrebbe essere un link a /dev/sdX... qualcuno ha qualche idea del perchè ciò non avviene??
grazie delle risposte
Inviato: mar 9 gen 2007, 11:39
da gohanz
danix85 ha scritto:
Allora devo avere io un problema, perchè se provo ad inserire una penna usb, piuttosto che una memory SD nel lettore non succede nulla...
grazie delle risposte
Hai installato una versione di Kdebase con il supporto per l'automount?
Su Slacky c'è un pacchetto per disponibile per la versione 3.5.4
http://www.slacky.it/index.php?option=c ... fo&id=1491
Inviato: gio 11 gen 2007, 16:43
da danix
avevo la versione di default di slack 11 comunque adesso ci provo e ti faccio sapere com'è andata...
grazie mille per l'aiuto
EDIT:
ok, ho installato kdebase con l'automount abilitato, ora va tutto ok... ancora una volta grazie mille
Inviato: gio 11 gen 2007, 19:53
da gohanz
Prego!

In compenso non funziona più il mio!

Inviato: gio 11 gen 2007, 23:08
da absinthe
danix85 ha scritto:
...
ora ti mostro le regole:
Codice: Seleziona tutto
BUS="scsi", SYSFS{model}="USB SD Reader", NAME{all_partitions}="card_sd"
BUS="scsi", SYSFS{model}="USB CF Reader", NAME{all_partitions}="card_cf"
BUS="scsi", SYSFS{model}="USB SM Reader", NAME{all_partitions}="card_sm"
BUS="scsi", SYSFS{model}="USB MS Reader", NAME{all_partitions}="card_ms"
BUS="scsi", SYSFS{vendor}="Packard", SYSFS{model}="Portable Player", KERNEL="sd?1", SYMLINK="mymp3"
BUS="scsi", SYSFS{vendor}="Generic", NAME{all_partition}="usb_memory"
queste sono le regole che ho scritto, le prime 4 dovrebbero creare dei devices non appena inserisco una scheda nel lettore, la quinta dovrebbe riconoscere il mio lettore da marca e modello e creare un symlink e l'ultima l'ho scritta per tutte le penne generiche che inserisco
però come si vede dall'output dei comandi che ho postato tutto ciò non succede perchè, ad esempio, inserendo il lettore mp3 viene riconosciuto ma non viene creato il device /dev/mymp3 che dovrebbe essere un link a /dev/sdX... qualcuno ha qualche idea del perchè ciò non avviene??
grazie delle risposte
perchè dalle versioni più recenti di udev è cambiata la sintassi! ora le assegnazioni sono con un = e i test con un ==, ad esempio dovresti correggere la prima regola in:
Codice: Seleziona tutto
BUS=="scsi", SYSFS{model}=="USB SD Reader", NAME{all_partitions}="card_sd"
NB: non sono a conoscenza della variabile all_partitions, io di solito scrivo:
che mi crea i device per tutte le n partizioni. ma è ignoranza mia, te lo dico solo per avere un'altrnativa alla sintassi!
M
Inviato: gio 18 gen 2007, 14:51
da danix
Rieccomi,
speravo di non dover postare ancora in questo thread ma purtroppo ho di nuovo bisogno di un aiutino...
ho dovuto reinstallare slacky perchè avevo fatto degli errori e non andava più nulla, allora con il sistema nuovo nuovo ho installato kde-base con il supporto per l'automount, hal e dbus, ho impostato tutto in modo da permettere ai demoni di lavorare e ho riavviato il sistema.
non appena è ripartito tutto ho inserito un lettore mp3 per fare una prova e mi sono accorto con gioia che veniva visto e veniva creato il device automaticamente, solo che provando ad entrarci... la tragedia, è apparso un messaggio di errore di kde con scritto:
A security policy in place prevents this sender from sending this message to this recipient, see message bus configuration file (rejected message had interface "org.freedesktop.Hal.Device.Volume" member "Mount" error name "(unset)" destination "org.freedesktop.Hal")
la stessa cosa mi è apparsa quando ho provato ad inserire una memory SD, e anche con un altro lettore mp3, insomma, funziona tutto, mi riconosce tutto ma non mi permette di accedervi...
cosa posso fare per rimediare??
grazie mille per le risposte