[Risolto] Udev o non Udev? Ma come si fa a fissare un device al boot?
- smurf
- Rampante Reduce

- Messaggi: 5610
- Iscrizione: domenica 9 luglio 2006, 9:18
- Desktop: MATE con Compiz
- Distribuzione: Ubuntu 20.04.4
- Sesso: Maschile
- Località: Lima - Perú
[Risolto] Udev o non Udev? Ma come si fa a fissare un device al boot?
Ho una scheda tv interna che al boot normalmente viene rilevata come /dev/video0 ed una web cam usb che normalmente viene rilevata come /dev/video1.
Ma purtroppo normalmente non è sempre e così ogni tanto il sistema inverte i device, risultato: devo fare reboot per poter vedere la tv oppure per poter video chattare.
Ho trovato un pochino di documentazione in rete, ma nessuna guida funziona, soprattutto perché si basano quasi sempre sul riconoscimento dell' HW in base a parametri che Udev non usa più.
Ho provato anche a chiedere su Launchpad, ma nessuna risposta.
Qualche anima pia saprebbe spiegarmi per favore come fare per fissare i device?
Ma purtroppo normalmente non è sempre e così ogni tanto il sistema inverte i device, risultato: devo fare reboot per poter vedere la tv oppure per poter video chattare.
Ho trovato un pochino di documentazione in rete, ma nessuna guida funziona, soprattutto perché si basano quasi sempre sul riconoscimento dell' HW in base a parametri che Udev non usa più.
Ho provato anche a chiedere su Launchpad, ma nessuna risposta.
Qualche anima pia saprebbe spiegarmi per favore come fare per fissare i device?
Ultima modifica di smurf il lunedì 2 agosto 2010, 20:33, modificato 1 volta in totale.
La terra non è una eredità che riceviamo dai nostri genitori, ma un prestito che ci fanno i nostri figli.
- steff
- Moderatore Globale

- Messaggi: 40351
- Iscrizione: domenica 18 febbraio 2007, 19:48
- Desktop: LXQt+labwc
- Distribuzione: Arch; Debian; Ubuntu Server
- Sesso: Maschile
- Località: Toscana
- Contatti:
Re: Udev o non Udev? Ma come si fa a fissare un device al boot?
Non so se puoi scrivere una regola precisa per la webcam usb almeno, questo comando di dovrebbe dare le info. Non so neanche se è lecito ancora che appena hai imparato qualcosa non vale più 
Per le regole ti posta una che monta una penna esegue un comando e la smonta se la levi, per l'ispirazione...
tipo qualcosa come
SUBSYSTEM=="usb", ATTR{products}=="CIF Single Chip ", SYMLINK+="video1"
Codice: Seleziona tutto
udevadm info -a -p $(udevadm info -q path -n /dev/video1)
Per le regole ti posta una che monta una penna esegue un comando e la smonta se la levi, per l'ispirazione...
Codice: Seleziona tutto
cat /etc/udev/rules.d/12-pennina.rules
KERNEL=="sd?1",ENV{ID_MODEL}="TS256MJF2B/2L", SYMLINK+="penna"
ACTION=="add", KERNEL=="sd?1",ENV{ID_MODEL}="TS256MJF2B/2L", RUN+="/bin/mkdir /mnt/penna"
ACTION=="add", KERNEL=="sd?1", ATTRS{vendor}=="JetFlash", RUN+="/bin/mount -t vfat -o sync,flush,uid=1000,gid=100 /dev/penna /mnt/penna"
ACTION=="add", KERNEL=="sd?1", ATTRS{vendor}=="JetFlash", RUN+="/home/arch/bin/cp-test"
ACTION=="remove", KERNEL=="sd?1", ENV{ID_VENDOR}=="JetFlash", RUN+="/bin/umount /mnt/penna"
ACTION=="remove", KERNEL=="sd?1", ENV{ID_VENDOR}=="JetFlash", RUN+="/bin/rmdir /mnt/penna"
SUBSYSTEM=="usb", ATTR{products}=="CIF Single Chip ", SYMLINK+="video1"
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
- smurf
- Rampante Reduce

- Messaggi: 5610
- Iscrizione: domenica 9 luglio 2006, 9:18
- Desktop: MATE con Compiz
- Distribuzione: Ubuntu 20.04.4
- Sesso: Maschile
- Località: Lima - Perú
Re: Udev o non Udev? Ma come si fa a fissare un device al boot?
beh esattamente per il dubbio sulla webcam usb io pensavo di fissare prima il device /dev/video0 alla scheda tv interna e poi la web.
queste sono le regole che ho scritto
Ma non mi funziona...
questi sono gli output dei dati di udev:
1) scheda tv
2) webcam usb
queste sono le regole che ho scritto
Il file con la regola si chiama v4l-local.rules, senza numero perché cosí dovrebbe essere eseguito come ultimo e superare qualunque altra "pre"impostazione di udev.luca@luca-desktop:~$ cat /etc/udev/rules.d/v4l-local.rules
# fissa i device per la scheda TV e la webcam
# scheda tv
SUBSYSTEM=="pci", DRIVERS=="saa7134", ATTRS{vendor}=="0x1131", ATTRS{device}=="0x7134", SYMLINK+="video0"
# web cam
SUBSYSTEMS=="usb", DRIVERS=="zc3xx", KERNELS=="4-2:1.0", SYMLINK+="video1"
luca@luca-desktop:~$
Ma non mi funziona...
questi sono gli output dei dati di udev:
1) scheda tv
Codice: Seleziona tutto
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/pci0000:00/0000:00:08.0/0000:01:08.0/video4linux/video0':
KERNEL=="video0"
SUBSYSTEM=="video4linux"
DRIVER==""
ATTR{name}=="saa7134[0] video (Kworld Plus T"
ATTR{index}=="0"
looking at parent device '/devices/pci0000:00/0000:00:08.0/0000:01:08.0':
KERNELS=="0000:01:08.0"
SUBSYSTEMS=="pci"
DRIVERS=="saa7134"
ATTRS{vendor}=="0x1131"
ATTRS{device}=="0x7134"
ATTRS{subsystem_vendor}=="0x17de"
ATTRS{subsystem_device}=="0x7128"
ATTRS{class}=="0x048000"
ATTRS{irq}=="19"
ATTRS{local_cpus}=="00000000,00000003"
ATTRS{local_cpulist}=="0-1"
ATTRS{modalias}=="pci:v00001131d00007134sv000017DEsd00007128bc04sc80i00"
ATTRS{numa_node}=="0"
ATTRS{broken_parity_status}=="0"
ATTRS{msi_bus}==""
looking at parent device '/devices/pci0000:00/0000:00:08.0':
KERNELS=="0000:00:08.0"
SUBSYSTEMS=="pci"
DRIVERS==""
ATTRS{vendor}=="0x10de"
ATTRS{device}=="0x075a"
ATTRS{subsystem_vendor}=="0x0000"
ATTRS{subsystem_device}=="0x0000"
ATTRS{class}=="0x060401"
ATTRS{irq}=="0"
ATTRS{local_cpus}=="00000000,00000003"
ATTRS{local_cpulist}=="0-1"
ATTRS{modalias}=="pci:v000010DEd0000075Asv00000000sd00000000bc06sc04i01"
ATTRS{numa_node}=="0"
ATTRS{broken_parity_status}=="0"
ATTRS{msi_bus}=="1"
looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"
SUBSYSTEMS==""
DRIVERS==""
Codice: Seleziona tutto
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/pci0000:00/0000:00:04.0/usb4/4-2/4-2:1.0/video4linux/video1':
KERNEL=="video1"
SUBSYSTEM=="video4linux"
DRIVER==""
ATTR{name}=="gspca main driver"
ATTR{index}=="0"
looking at parent device '/devices/pci0000:00/0000:00:04.0/usb4/4-2/4-2:1.0':
KERNELS=="4-2:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="zc3xx"
ATTRS{bInterfaceNumber}=="00"
ATTRS{bAlternateSetting}==" 0"
ATTRS{bNumEndpoints}=="02"
ATTRS{bInterfaceClass}=="ff"
ATTRS{bInterfaceSubClass}=="ff"
ATTRS{bInterfaceProtocol}=="ff"
ATTRS{modalias}=="usb:v046Dp08D7d0100dc00dsc00dp00icFFiscFFipFF"
ATTRS{supports_autosuspend}=="0"
looking at parent device '/devices/pci0000:00/0000:00:04.0/usb4/4-2':
KERNELS=="4-2"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{configuration}==""
ATTRS{bNumInterfaces}==" 3"
ATTRS{bConfigurationValue}=="1"
ATTRS{bmAttributes}=="a0"
ATTRS{bMaxPower}=="100mA"
ATTRS{urbnum}=="204"
ATTRS{idVendor}=="046d"
ATTRS{idProduct}=="08d7"
ATTRS{bcdDevice}=="0100"
ATTRS{bDeviceClass}=="00"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bNumConfigurations}=="1"
ATTRS{bMaxPacketSize0}=="8"
ATTRS{speed}=="12"
ATTRS{busnum}=="4"
ATTRS{devnum}=="2"
ATTRS{version}==" 1.10"
ATTRS{maxchild}=="0"
ATTRS{quirks}=="0x0"
ATTRS{authorized}=="1"
looking at parent device '/devices/pci0000:00/0000:00:04.0/usb4':
KERNELS=="usb4"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{configuration}==""
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bmAttributes}=="e0"
ATTRS{bMaxPower}==" 0mA"
ATTRS{urbnum}=="42"
ATTRS{idVendor}=="1d6b"
ATTRS{idProduct}=="0001"
ATTRS{bcdDevice}=="0206"
ATTRS{bDeviceClass}=="09"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bNumConfigurations}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{speed}=="12"
ATTRS{busnum}=="4"
ATTRS{devnum}=="1"
ATTRS{version}==" 1.10"
ATTRS{maxchild}=="6"
ATTRS{quirks}=="0x0"
ATTRS{authorized}=="1"
ATTRS{manufacturer}=="Linux 2.6.32-24-generic ohci_hcd"
ATTRS{product}=="OHCI Host Controller"
ATTRS{serial}=="0000:00:04.0"
ATTRS{authorized_default}=="1"
looking at parent device '/devices/pci0000:00/0000:00:04.0':
KERNELS=="0000:00:04.0"
SUBSYSTEMS=="pci"
DRIVERS=="ohci_hcd"
ATTRS{vendor}=="0x10de"
ATTRS{device}=="0x077d"
ATTRS{subsystem_vendor}=="0x1462"
ATTRS{subsystem_device}=="0x7508"
ATTRS{class}=="0x0c0310"
ATTRS{irq}=="23"
ATTRS{local_cpus}=="00000000,00000003"
ATTRS{local_cpulist}=="0-1"
ATTRS{modalias}=="pci:v000010DEd0000077Dsv00001462sd00007508bc0Csc03i10"
ATTRS{numa_node}=="0"
ATTRS{broken_parity_status}=="0"
ATTRS{msi_bus}==""
looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"
SUBSYSTEMS==""
DRIVERS==""
La terra non è una eredità che riceviamo dai nostri genitori, ma un prestito che ci fanno i nostri figli.
- steff
- Moderatore Globale

- Messaggi: 40351
- Iscrizione: domenica 18 febbraio 2007, 19:48
- Desktop: LXQt+labwc
- Distribuzione: Arch; Debian; Ubuntu Server
- Sesso: Maschile
- Località: Toscana
- Contatti:
Re: Udev o non Udev? Ma come si fa a fissare un device al boot?
Prova a mettere un numero e dividerli in due files, forse vengono ignorati quelli senza numero?
Ultima modifica di steff il lunedì 2 agosto 2010, 7:14, modificato 1 volta in totale.
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
- smurf
- Rampante Reduce

- Messaggi: 5610
- Iscrizione: domenica 9 luglio 2006, 9:18
- Desktop: MATE con Compiz
- Distribuzione: Ubuntu 20.04.4
- Sesso: Maschile
- Località: Lima - Perú
Re: Udev o non Udev? Ma come si fa a fissare un device al boot?
Il README presente in /etc/udev/rules.d/ dice espressamente di creare un file .rules senza numero per essere assolutamente sicuri che venga eseguito dopo tutte le regole presenti li e nel /lib/udev/rules.d/ :-\.
Stasera proveró a dividere in due e creare due regole, poi ti dico.
Grazie comunque.
Stasera proveró a dividere in due e creare due regole, poi ti dico.
Grazie comunque.
La terra non è una eredità che riceviamo dai nostri genitori, ma un prestito che ci fanno i nostri figli.
- steff
- Moderatore Globale

- Messaggi: 40351
- Iscrizione: domenica 18 febbraio 2007, 19:48
- Desktop: LXQt+labwc
- Distribuzione: Arch; Debian; Ubuntu Server
- Sesso: Maschile
- Località: Toscana
- Contatti:
Re: Udev o non Udev? Ma come si fa a fissare un device al boot?
prova magari invece di video0 e video1 "tv" "webcam" per controllare meglio in /dev
Per la webcam dovrebbe bastare inserirla per creare /dev/webcam
Per la webcam dovrebbe bastare inserirla per creare /dev/webcam
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
- smurf
- Rampante Reduce

- Messaggi: 5610
- Iscrizione: domenica 9 luglio 2006, 9:18
- Desktop: MATE con Compiz
- Distribuzione: Ubuntu 20.04.4
- Sesso: Maschile
- Località: Lima - Perú
Re: Udev o non Udev? Ma come si fa a fissare un device al boot?
sembra che ho trovato il problema.
commettevo un errore stupido, mescolavo i dati dei vari parent device di ogni device e quindi non poteva definire correttamente il device, inoltre non tutti i parent device sono adatti a creare un SYMLINK.
Dopo un certo numero di prove (usando i device fasulli /dev/webcam e /dev/tvcard) ho scopetto i giusti ATTRS da usare, adesso resta solo da sperare che effettivamente questo sorpassi (override) i device creati in automatico.
non è necessario dividere in due il file, funziona anche "tutto in uno".
commettevo un errore stupido, mescolavo i dati dei vari parent device di ogni device e quindi non poteva definire correttamente il device, inoltre non tutti i parent device sono adatti a creare un SYMLINK.
Dopo un certo numero di prove (usando i device fasulli /dev/webcam e /dev/tvcard) ho scopetto i giusti ATTRS da usare, adesso resta solo da sperare che effettivamente questo sorpassi (override) i device creati in automatico.
non è necessario dividere in due il file, funziona anche "tutto in uno".
Grazie Steff.# fissa il device per la scheda tv
KERNELS=="0000:01:08.0", ATTRS{vendor}=="0x1131", ATTRS{device}=="0x7134", SYMLINK+="video0"
# fissa il device per la webcam
SUBSYSTEMS=="usb", DRIVERS=="zc3xx", KERNELS=="4-2:1.0", SYMLINK+="video1"
Ultima modifica di smurf il lunedì 2 agosto 2010, 21:09, modificato 1 volta in totale.
La terra non è una eredità che riceviamo dai nostri genitori, ma un prestito che ci fanno i nostri figli.
- steff
- Moderatore Globale

- Messaggi: 40351
- Iscrizione: domenica 18 febbraio 2007, 19:48
- Desktop: LXQt+labwc
- Distribuzione: Arch; Debian; Ubuntu Server
- Sesso: Maschile
- Località: Toscana
- Contatti:
Re: [Risolto] Udev o non Udev? Ma come si fa a fissare un device al boot?
Prego 
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
Chi c’è in linea
Visualizzano questa sezione: Roberto Pontecorvi, tottobuono e 9 ospiti