Problema con periferiche senza HAL

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema con periferiche senza HAL

Messaggio da 414N »

miklos ha scritto:Sicuro che sia cosi!??!! L'evento remove udev lo lancia quando lo hai staccato... non c'e' un evento del tipo... 'ho intenzione di staccarlo'.
Penso proprio che ti sbagli...
Ho appena fatto una prova con una chiavetta USB e ti invito a ripeterla.
Prima di attaccarla, apri una shell, diventa root e lancia

Codice: Seleziona tutto

udevadm monitor
Dopodiché, inserisci la chiavetta e comincerai a vedere una sfilza di eventi add e change.
Successivamente, montala e smontala: allo "smontaggio" vedrai apparire una serie di eventi remove.
L'evento remove viene scatenato anche quando stacchi fisicamente il dispositivo, percui, probabilmente, quell'azione che hai riportato serve più che altro a garantire di "tenere in ordine" /media in caso si stacchi senza smontare una periferica
miklos ha scritto: comunque guardando il man di umount ho scoperto che l'opzione -l è un umount forzato anche in caso di device occupato o non piu' inserito, quindi tutto torna
Veramente l'opzione -l non è l'unmount forzato (quello è con -f), ma, piuttosto, un unmount "tranquillo" che permette alle applicazioni che occupano il dispositivo di finire quel che stanno facendo mentre, per tutte le altre, il dispositivo è già smontato. Vedere qua per qualche altra delucidazione.
-sf ha scritto:Ho dato un occhiata ai wiki di arch, ma a essere onesto non ho capito granchè...

Ho comunque installato pmount come richiedeva il wiki e creato il file nella dir rules.d di udev; adesso? Finisce tutto li? Mi sembra troppo facile :D
La nuova regola la devi piazzare in /etc/udev/rules.d. Al prossimo riavvio di udev (è meglio riavviare il sistema per evitare macelli in un sistema già avviato) la regola sarà presa in considerazione e messa in pratica quando serve.
Occhio che se hai scelto la strada "udev + pmount" devi specificare il tuo username invece di "tomk" all'interno della regola udev.

Avatar utente
-sf
Linux 2.x
Linux 2.x
Messaggi: 209
Iscritto il: ven 15 lug 2011, 1:20
Slackware: 13.37
Kernel: 2.6.37.6-smp
Desktop: KDE

Re: Problema con periferiche senza HAL

Messaggio da -sf »

Si ho modificato l'username e, per non sbagliarmi, riavviato il sistema ma... non va!
O meglio, qualcosa fa e probabilmente monta, ma non riesco a capire dove.

Ho sbirciato con il comando che hai proposto prima per monitorare cosa succede e questo è quello che riporta:

Codice: Seleziona tutto

monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[1318517385.281514] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6 (usb)
KERNEL[1318517385.281656] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0 (usb)
KERNEL[1318517385.281815] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10 (scsi)
KERNEL[1318517385.281838] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/scsi_host/host10 (scsi_host)
KERNEL[1318517385.281999] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/usb_device/usbdev2.7 (usb_device)
UDEV  [1318517385.305397] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6 (usb)
UDEV  [1318517385.306198] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0 (usb)
UDEV  [1318517385.307608] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10 (scsi)
UDEV  [1318517385.308137] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/scsi_host/host10 (scsi_host)
UDEV  [1318517385.327129] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/usb_device/usbdev2.7 (usb_device)
KERNEL[1318517386.282327] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0 (scsi)
KERNEL[1318517386.282406] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0 (scsi)
KERNEL[1318517386.283027] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/scsi_disk/10:0:0:0 (scsi_disk)
KERNEL[1318517386.283111] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/scsi_device/10:0:0:0 (scsi_device)
KERNEL[1318517386.283166] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/scsi_generic/sg2 (scsi_generic)
KERNEL[1318517386.283220] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/bsg/10:0:0:0 (bsg)
UDEV  [1318517386.283265] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0 (scsi)
KERNEL[1318517386.286075] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1 (scsi)
UDEV  [1318517386.286135] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0 (scsi)
UDEV  [1318517386.286182] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/scsi_device/10:0:0:0 (scsi_device)
UDEV  [1318517386.286907] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/scsi_disk/10:0:0:0 (scsi_disk)
KERNEL[1318517386.286960] add      /devices/virtual/bdi/8:16 (bdi)
UDEV  [1318517386.287718] add      /devices/virtual/bdi/8:16 (bdi)
KERNEL[1318517386.288928] change   /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0 (scsi)
UDEV  [1318517386.289285] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1 (scsi)
KERNEL[1318517386.289552] add      /devices/virtual/bdi/11:1 (bdi)
KERNEL[1318517386.291606] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/block/sr1 (block)
UDEV  [1318517386.291631] add      /devices/virtual/bdi/11:1 (bdi)
KERNEL[1318517386.291652] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/scsi_device/10:0:0:1 (scsi_device)
KERNEL[1318517386.291676] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/scsi_generic/sg3 (scsi_generic)
KERNEL[1318517386.291700] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/bsg/10:0:0:1 (bsg)
UDEV  [1318517386.292012] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/bsg/10:0:0:0 (bsg)
UDEV  [1318517386.292035] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/scsi_device/10:0:0:1 (scsi_device)
UDEV  [1318517386.292990] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/scsi_generic/sg2 (scsi_generic)
UDEV  [1318517386.293433] change   /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0 (scsi)
UDEV  [1318517386.294162] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/scsi_generic/sg3 (scsi_generic)
KERNEL[1318517386.295332] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb (block)
KERNEL[1318517386.295366] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb1 (block)
KERNEL[1318517386.295392] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb2 (block)
KERNEL[1318517386.295416] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb3 (block)
UDEV  [1318517386.295452] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/bsg/10:0:0:1 (bsg)
KERNEL[1318517386.353120] change   /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1 (scsi)
UDEV  [1318517386.357762] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/block/sr1 (block)
KERNEL[1318517386.358107] change   /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/block/sr1 (block)
UDEV  [1318517386.358252] change   /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1 (scsi)
UDEV  [1318517386.416748] change   /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:1/block/sr1 (block)
UDEV  [1318517386.482287] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb (block)
UDEV  [1318517386.626262] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb3 (block)
UDEV  [1318517386.823367] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb2 (block)
UDEV  [1318517386.829529] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/host10/target10:0:0/10:0:0:0/block/sdb/sdb1 (block)
Che sta combinando?

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema con periferiche senza HAL

Messaggio da 414N »

Beh, nulla di che. Tutti quei messaggi di udev sono solo il riconoscimento del disco/chiavetta che hai connesso e delle 3 partizioni che contiene.
Se non hai sbagliato nulla, quelle 3 partizioni dovrebbero venire montate appena connetti il dispositivo.
Prova a vedere in dolphin la situazione oppure dando un semplice mount sulla shell.
Piccola nota: col passaggio a udisks ho notato che non veniva più scelto ntfs-3g come driver per montare le partizioni NTFS, rendendole fruibili in sola lettura.
Per rimediare, ho creato un semplice link simbolico:

Codice: Seleziona tutto

ln - /sbin/mount.ntfs-3g /sbin/mount.ntfs

Avatar utente
-sf
Linux 2.x
Linux 2.x
Messaggi: 209
Iscritto il: ven 15 lug 2011, 1:20
Slackware: 13.37
Kernel: 2.6.37.6-smp
Desktop: KDE

Re: Problema con periferiche senza HAL

Messaggio da -sf »

ho ripulito la chiavetta e gli ho assegnato una label per semplificare, visto che in teoria dovrebbe essere montata col nome della label (se presente), giusto?

Comunque label o non label non monta nulla in automatico :-k
il comando mount mi elenca 6 dischi/partizioni indifferentemente dal fatto che la chiavetta sia inserita o meno.

Se la monto manualmente allora viene listata dal comando mount.

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema con periferiche senza HAL

Messaggio da 414N »

Prova l'altra regola, rimuovendo prima quella attuale e riavviando.
Se funziona, forse bisogna aggiustare un po' quella con pmount.

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: Problema con periferiche senza HAL

Messaggio da ilmich »

414N ha scritto:Penso proprio che ti sbagli...
Ho appena fatto una prova con una chiavetta USB e ti invito a ripeterla.
lo faro appena rientrato dall'ufficio.. mi incuriosisce sta cosa e come dicevo prima mi piacerebbe imparare udev per bene.

riguardo al problema della regola che non funziona(la riporto qui' per brevità)

Codice: Seleziona tutto

KERNEL!="sd[a-z]*", GOTO="media_by_label_auto_mount_end"
ACTION=="add", PROGRAM!="/sbin/blkid %N", GOTO="media_by_label_auto_mount_end"

# Get label
PROGRAM=="/sbin/blkid -o value -s LABEL %N", ENV{dir_name}="%c"
# use basename to correctly handle labels such as ../mnt/foo
PROGRAM=="/usr/bin/basename '%E{dir_name}'", ENV{dir_name}="%c"
ENV{dir_name}=="", ENV{dir_name}="usbhd-%k"

ACTION=="add", ENV{dir_name}!="", RUN+="/bin/su tomk -c '/usr/bin/pmount %N %E{dir_name}'"
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/su tomk -c '/usr/bin/pumount /media/%E{dir_name}'"
LABEL="media_by_label_auto_mount_end"
non potrebbe essere qui' l'errore!??!!?

Codice: Seleziona tutto

KERNEL!="sd[a-z]*", GOTO="media_by_label_auto_mount_end"
ACTION=="add", PROGRAM!="/sbin/blkid %N", GOTO="media_by_label_auto_mount_end"
in pratica se non ho capito male queste due linee sono come delle specie di if -> then.
nel caso specifico se non siamo in presenza di device che iniziano per sd[a-z] vado alla fine della regola
come pure se in caso di aggiunta, l'esecuzione del programma

Codice: Seleziona tutto

blkid %n
se ha esito negativo salto alla fine della regola.
ora se questo è vero (e prego 414N di correggermi in caso di scemenze evidenti) googlando un po' ho letto che %N indica il numero del device(quindi sda1 -> 1 e via dicendo), di conseguenza tutti i comandi che hanno come parametro il %N, come il pmount falliscono perchè a loro serve il device, non il numero (sempre googlando ho letto che %k è il device completo).
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Avatar utente
-sf
Linux 2.x
Linux 2.x
Messaggi: 209
Iscritto il: ven 15 lug 2011, 1:20
Slackware: 13.37
Kernel: 2.6.37.6-smp
Desktop: KDE

Re: Problema con periferiche senza HAL

Messaggio da -sf »

impostando la regola senza pmount viene montato correttamente in media, utilizzando anche la label del device.
E' gia qualcosa :)

Prima con pmount non andava, quindi probabilmente sarà lui da configurare?

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: Problema con periferiche senza HAL

Messaggio da ilmich »

Allora, ho fatto i test per togliermi il dubbio sull'evento remove e come sospettavo, almeno a me, l'evento lo ricevo solo quando tolgo la pennina e non quando la smonto manualmente.

Relativamente alla regola per pmount è scorretta, l'ho modificata e quella che a me funziona è questa

Codice: Seleziona tutto

KERNEL!="sd[a-z]*", GOTO="media_by_label_auto_mount_end"
ACTION=="add", PROGRAM!="/sbin/blkid /dev/%k", GOTO="media_by_label_auto_mount_end"

# Get label
PROGRAM=="/sbin/blkid -o value -s LABEL /dev/%k", ENV{dir_name}="%c"
# use basename to correctly handle labels such as ../mnt/foo
PROGRAM=="/usr/bin/basename '%E{dir_name}'", ENV{dir_name}="%c"
ENV{dir_name}=="", ENV{dir_name}="usbhd-%k"

ACTION=="add", ENV{dir_name}!="", RUN+="/bin/su ilmich -c '/usr/bin/pmount /dev/%k %E{dir_name}'"
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/su ilmich -c '/usr/bin/pumount /media/%E{dir_name}'"
LABEL="media_by_label_auto_mount_end"
in pratica ho sostituito i %N con /dev/%k

comunque sia resta il fatto che vanno smontate manualmente.. altrimenti c'e' il rischio di perdita di dati.
Comunque, per me è stato un occasione per imparare cose nuove, ma di fatto credo che la soluzione migliore sia aggiornare il kde.. anche perchè il problema con l'audio penso che ti rimanga
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema con periferiche senza HAL

Messaggio da 414N »

miklos ha scritto:Allora, ho fatto i test per togliermi il dubbio sull'evento remove e come sospettavo, almeno a me, l'evento lo ricevo solo quando tolgo la pennina e non quando la smonto manualmente.
[...]comunque sia resta il fatto che vanno smontate manualmente.. altrimenti c'e' il rischio di perdita di dati.
Ho fatto qualche altro accertamento e ho rilevato il tuo stesso comportamento smontando manualmente una periferica.
Evidentemente, quando smonto una partizione tramite dolphin o l'applet per i dispositivi rimovibili di kde4, viene usato il comando eject invece di umount: questo provoca un evento remove registrato da udev.
Non c'è alcun rischio di perdita dati comunque, dato che eject smonta il dispositivo ed invia il comando per "espellerlo" dal PC :)

Avatar utente
-sf
Linux 2.x
Linux 2.x
Messaggi: 209
Iscritto il: ven 15 lug 2011, 1:20
Slackware: 13.37
Kernel: 2.6.37.6-smp
Desktop: KDE

Re: Problema con periferiche senza HAL

Messaggio da -sf »

Tenterò la strada dell'aggiornamento di kde allora!

Ma... come si fa l'upgrade dell'intero DE? :D
Sorgenti - compilazione - installazione ??

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: Problema con periferiche senza HAL

Messaggio da ilmich »

io ti consiglio di installarti la versione pacchettizzata da alienbob.
vai qui
e segui le semplici istruzioni che trovi in fondo alla pagina.
io ti ho linkato la versione 4.6.5, ma come ti ha detto pure 414N puoi usare quella ancora piu' nuova.. che è compilata per la current, ma va bene anche sulla stable.. questo poi decidilo tu :D

ciau
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Avatar utente
-sf
Linux 2.x
Linux 2.x
Messaggi: 209
Iscritto il: ven 15 lug 2011, 1:20
Slackware: 13.37
Kernel: 2.6.37.6-smp
Desktop: KDE

Re: Problema con periferiche senza HAL

Messaggio da -sf »

Ho messo su la 4.6.5 e funziona tutto a meraviglia :thumbright:

Risolti i problemi di audio e risolti i problemi di automount, però mi chiede ancora la passwd per smontare i volumi :|
Conviene provare a usare la regola di udev che prevede pmount per smontare i dispositivi o la nuova versione di kde ha già qualche tool simile?

Rispondi