PDA

View Full Version : KDE non conserva le opzioni del mouse al riavvio


Johnn
24-04-2006, 21:01
Ho un logitech mx310 che kde riconosce: ciò non vuol dire che hanno funzionato tutti i tasti da subito, ma che andando in Centro di controllo->Periferiche-> Mouse e poi sull'ultimo tab chiamato "MX310 Optical Mouse" posso scegliere a quale risoluzione farlo lavorare tra 400 dpi (di default) e 800. Premetto che xorg.conf è già stato (pesantemente :p ) modificato. Quindi ad ogni riavvio sono costretto a cambiare manualmente la risoluzione.

Come posso cambiarla una volta per tutte?

P.S. Il tutto da root, perchè da utente quel tab è immodificabile per i permessi.

P.P.S. La stessa cosa mi succedeva con kde 3.4 ed ora con kde 3.5.

Johnn
27-04-2006, 15:13
UP!

Johnn
09-05-2006, 14:52
UP!

Cobra78
09-05-2006, 14:56
Hai provato a inserire la risoluzione del mouse direttamente nello xorg.conf?

Johnn
09-05-2006, 15:00
Sì, ma kde sembra bypassarla.

Cobra78
09-05-2006, 15:03
Ok allora passo, tra l'altro conosco poco Kde preferendo Gnome, mseglio se risponde qualcuno più competente di me :(

Johnn
22-09-2006, 21:47
Fatti passi avanti:

rileggendo ciò che dice la guida di kde riguardo ai problemi di permessi dei mouse logitech, ho capito che il problema risiede nei permessi del file /proc/bus/usb/002/002: se cambio o i permessi o l'owner posso cambiare l'opzione da utente.

Il problema però è che ogni volta che attacco il mouse, o all'avvio, quel file viene creato da hotplug, quindi la modifica dei permessi non è permanente. La soluzione proposta dal manuale di kde, cioè aggiungere uno script che cambia i permessi, sembra cambiare solo i permessi della cartella /proc/bus/usb/002.

Lo script è:

#!/bin/bash
#
# /etc/hotplug/usb/consoleUserPerms
#
# Imposta un device USB appena inserito così che l'utente che possiede
# la console secondo pam_console possa accedervi dallo spazio utente
#
# Nota che affinché questo script funzioni, dovrai avere le seguenti cose:
# a) una linea nel file /etc/hotplug/usb.usermap o un altro file usermap
# in /etc/hotplub/usb/ che corrisponda al dispositivo che stai utilizzando.
# b) un impostazione che utilizzi pam_console che crei i rispettivi file di lock
# che contengano i nome dei rispettivi utenti. Puoi verificarlo
# eseguendo "echo `cat /var/{run,lock}/console.lock`" e
# verificando che l'utente appropriato e sia menzionato.
# c) un kernel Linux che supporti hotplug e usbdevfs
# d) il pacchetto hotplug (http://linux-hotplug.sourceforge.net/)
#
# Nel file usermap, il primo campo "usb module" dovrebbe chiamarsi
# "consoleUserPerms" per richiamare questo script.
#

if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ]
then
# Nuovo codice che utilizza i file di lock invece che copiare i permessi di /dev/console
# Ciò funziona anche con login non-kdm (ad esempio su un terminale virtuale)
# Idea e codice di Nalin Dahyabhai <nalin@redhat.com>
if [ -f /var/run/console.lock ]
then
CONSOLEOWNER=`cat /var/run/console.lock`
elif [ -f /var/lock/console.lock ]
then
CONSOLEOWNER=`cat /var/lock/console.lock`
else
CONSOLEOWNER=
fi
if [ -n "$CONSOLEOWNER" ]
then
chmod 0000 "${DEVICE}"
chown "$CONSOLEOWNER" "${DEVICE}"
chmod 0600 "${DEVICE}"
fi
fi

Cobra78
22-09-2006, 23:48
Mmmh, potresti provare con mknod (o mkdev non ricordo quale) a fare in modo dhe il device venga creato permanentemente, in modo che una volta cambiati i permessi questi restano, penso che funzioni perchè ho fatto così con la scheda firewire per poter acquisire da Kino senza essere root :P

Johnn
07-12-2006, 19:55
Ancora un passettino in avanti!

Basta aggiungere tra apici il nome dell'utente a cui si volgiono dari i permessi dove ho messo NOME UTENTE:

#!/bin/bash
#
# /etc/hotplug/usb/consoleUserPerms
#
# Imposta un device USB appena inserito così che l'utente che possiede
# la console secondo pam_console possa accedervi dallo spazio utente
#
# Nota che affinché questo script funzioni, dovrai avere le seguenti cose:
# a) una linea nel file /etc/hotplug/usb.usermap o un altro file usermap
# in /etc/hotplub/usb/ che corrisponda al dispositivo che stai utilizzando.
# b) un impostazione che utilizzi pam_console che crei i rispettivi file di lock
# che contengano i nome dei rispettivi utenti. Puoi verificarlo
# eseguendo "echo `cat /var/{run,lock}/console.lock`" e
# verificando che l'utente appropriato e sia menzionato.
# c) un kernel Linux che supporti hotplug e usbdevfs
# d) il pacchetto hotplug (http://linux-hotplug.sourceforge.net/)
#
# Nel file usermap, il primo campo "usb module" dovrebbe chiamarsi
# "consoleUserPerms" per richiamare questo script.
#

if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ]
then
# Nuovo codice che utilizza i file di lock invece che copiare i permessi di /dev/console
# Ciò funziona anche con login non-kdm (ad esempio su un terminale virtuale)
# Idea e codice di Nalin Dahyabhai <nalin@redhat.com>
if [ -f /var/run/console.lock ]
then
CONSOLEOWNER=`cat /var/run/console.lock`
elif [ -f /var/lock/console.lock ]
then
CONSOLEOWNER=`cat /var/lock/console.lock`
else
CONSOLEOWNER='NOME UTENTE'
fi
if [ -n "$CONSOLEOWNER" ]
then
chmod 0000 "${DEVICE}"
chown "$CONSOLEOWNER" "${DEVICE}"
chmod 0600 "${DEVICE}"
fi
fi

Rimane il fatto che la risoluzione del mouse deve essere impostata ad ogni riavvio. Non capisco kde cosa va a modificare quando si cambiano i dpi da centro di controllo. :muro:

Johnn
08-12-2006, 11:05
Passo indietro! :(

Al riavvio non ha funzionato. Tutto come prima, cioè senza permessi da utente.

Però ho capito che non viene lanciato lo script di modifica dei permessi, cioè consoleUserPerms. Se lo lancio a mano funziona.


P.S. In realtà se il mouse lo inserisco a caldo, lo script viene lanciato correttamente e ho i permessi, mentre se riavvio il pc e il mouse è inserito no. :eek: