Newsgroup: it.comp.os.linux.iniziare
Titolo: Permessi "volatili"

In questi giorni ho terminato la migrazione da Windows a Linux, e per la
prima volta dedico ai miei interessi il 99% del tempo trascorso al
computer, mentre il restante 1% è per la manutenzione del sistema
(rapporti con Windows: 20% e 80% rispettivamente).
Ecco però il primo problema che si è ripresentato oggi: lo scanner Epson
risulta inaccessibile a XSane.
All'atto dell'installazione di Ubuntu Feisty avevo cambiato i permessi con
il seguente comando, dopo essermi assicurato che l'utente yorgos facesse
parte del gruppo scanner:
sudo chgrp -R scanner /dev/sg0
Tutto ha funzionato bene.
Oggi riaccendo il mio Epson con interfaccia SCSI e di nuovo i permessi
sono cambiati, l'owner e il gruppo sono di nuovo root!
Come si fa a cambiare definitivamente il gruppo?
-- 
Bye, Yorgos
To send me an e-mail, please change anthzùya with alice

 Come si fa a cambiare definitivamente il gruppo?
Devi impostare in modo corretto la regola di udev relativa. Cerca in /etc/
udev/rules, e' immediato.
-- 
Best Regards, Jack
Linux User #264449
Powered by Debian GNU/Linux on AMD64

 udev/rules, e' immediato.
Scusa, ma sono in difficoltà e i riferimenti trovati in internet mi hanno
confuso le idee :-(
Allora, nella directory /etc/udev ho quanto segue:
libpisock9.rules  rules.d  udev.conf
Da dove inizio?
Ti sarei anche grato se mi dessi qualche riferimento facile che purtroppo
io non sono stato in grado di trovare.
Grazie mille!


 
dovrebbe essere il file /etc/udev/rules.d/xx-libsane.rules (dove xx è un
numero che non conosco)
Aprilo e cerca una linea che corrisponda al tuo modello di scanner, che
potrebbe essere qualcosa del genere:
# EPSON GT-7000U | EPSON Perfection 636U | Epson Perfection 636U
SYSFS{idVendor}=="04b8", SYSFS{idProduct}=="0101", SYMLINK+="scanner-%k"
Se c'è aggiungici in fondo , MODE="664", GROUP="scanner" (anche la virgola
iniziale)
SYSFS{idVendor}=="04b8", SYSFS{idProduct}=="0101", SYMLINK+="scanner-%k",
MODE="664", GROUP="scanner"
Se invece non c'è esegui il comando:
lsusb
nell'output dovresti trovare una riga corrispondente al tuo scanner, questa
ad esempio è la mia relativa ad un vecchio agfa
Bus 003 Device 002: ID 06bd:2091 AGFA-Gevaert NV SnapScan e20
a questo punto esegui questo comando, sostituendo a 3-2 il valori di Bus
(003) e Device (002) che identificano il tuo scanner
udevinfo -a -p /sys/bus/usb/devices/3-2
tra l'output troverai queste due righe:
    SYSFS{idProduct}=="2091"
    SYSFS{idVendor}=="06bd"
quindi modifica il file /etc/udev/rules.d/45-libsane.rules in questo modo:
prima della riga:
LABEL="libsane_rules_end"
aggiungi, sostituendo a questi i valori che hai trovato per il tuo scanner:
SYSFS{idVendor}=="06bd", SYSFS{idProduct}=="2091", MODE="664",
GROUP="scanner"
riavvia udev con /etc/init.d/udev restart

 lsusb
Il mio EPSON 1200 ha l'interfaccia SCSI.
Eseguendo "sudo scanimage -L" ottengo:
device `epson:/dev/sg0' is a Epson Perfection1200 flatbed scanner


 
giusto, non avevo letto con attenzione.
udevinfo -a -p /sys/class/scsi_generic/sg0
quindi modifica /etc/udev/rules.d/xx-udev.rules (libsane.rules è solo per
gli usb) aggiungendo
BUS="scsi", SYSFS{model}="quello_che_ti_da_udevinfo", NAME="%k",
SYMLINK="scanner", MODE="0660", GROUP="scanner"

 quindi modifica /etc/udev/rules.d/xx-udev.rules
Questo file non c'è!
Questi son quelli che ho trovato:
00-init.rules      40-permissions.rules               60-symlinks.rules            85-brltty.rules    90-modprobe.rules
05-options.rules   45-hplip.rules                     60-vboxdrv.rules             85-hdparm.rules    95-hal.rules
20-names.rules     45-libgphoto2.rules                65-persistent-input.rules    85-hplj10xx.rules  99-udevmonitor.rules
25-dmsetup.rules   45-libsane.rules                   65-persistent-storage.rules  85-hwclock.rules   README
25-iftab.rules     50-xserver-xorg-input-wacom.rules  80-programs.rules            85-ifupdown.rules
30-cdrom_id.rules  60-libpisock.rules                 85-alsa.rules                85-pcmcia.rules
-- 


Yorgos wrote:

prova con 40-permissions.rules, dovrebbe andare bene.
vado a naso, io solitamente uso Red Hat e famiglia.

 prova con 40-permissions.rules, dovrebbe andare bene.
BINGO!
Ora funziona tutto, comunque ho dovuto cambiare anche i permessi dei file
contenuti in /home/yorgos/.sane/xsane, altrimenti all'uscita da XSane
comparivano errori di scrittura.
Ti ringrazio molto per l'aiuto e la pazienza!


 prova con 40-permissions.rules, dovrebbe andare bene.
Per capire qualcosa di più di "udev", ho fatto ricerche sulla rete
imbattendomi in questo sito:
http://guide.debianizzati.org/index.php/Udev_e_Debian
dove, tra l'altro, è scritto:
E' fortemente sconsigliato di modificare i file nella directory
/etc/udev/rules.d/, perchè il sistema di gestione dei pacchetti ( APT) per
default non aggiorna i file che vengono modificati dopo l'installazione.
Per aggiungere delle regole personalizzate per un device è sufficiente
inserirle in un file /etc/udev/rules.d/00_local.rules creato da voi. Il
nome del file assicura che esso venga letto per primo, e questo ci
permette di inserire delle regole che varranno eseguite al posto di quelle
di default per lo stesso device.
Cosa devo fare, allora? Annullare le modifiche di 40-permissions.rules e
creare il nuovo file?
Grazie a tutti per l'aiuto, non vorrei fare disastri!



disastri non credo. non so come funziona con apt, ma con rpm se un file di  
configurazione viene modificato quando il pacchetto viene aggiornato il  
file modificato resta dov'è e il nuovo file standard di configurazione del  
pacchetto viene creato con estensione rpmnew, in modo da permetterti di  
confrontare le differenze.
comunque mi sembra che tu possa fare tranquillamente quanto ti viene  
suggerito in quelle istruzioni.