You are not logged in.
Hello les gens
Voilà, j'ai un petit problème bizarre avec hotplug et mes droits sur mon scanner.
Problème confirmé ici
/etc/hotplug/usb/libusbscanner
This is a script that assigns ownership and permissions to the scanner when it is detected. The default is owned by root, group is "scanner", permissions are 660 (read write for owner and group, nothing for everyone else).
This sounded good to me so I created a scanner group (groupadd scanner), assigned myself to it. I then rebooted so hotplug could detect and assign permission to the scanner.
After rebooting, I still couldn't scan as a regular user. I looked at the permissions for /proc/bus/usb/002/003 and it was root:root and only the owner could write to the device. I manually changed the group and the permissions to root:scanner and 660, checked to see that they were applied (they were), and I was the able to scan as a regular user. I need to do more checking on what's happening here, if it's a hotplug problem, or something else. But, once the permissions are correctly applied to the usb device, iscan does work for a regular user.
Le problème étant que j'ai modifié libusbscanner comme suit:
if [ "$ACTION" = "add" -a "$TYPE" = "usb" ]; then
chown root.scanner "$DEVICE"
chmod 660 "$DEVICE"
fi
au lieu de
if [ "$ACTION" = "add" -a "$TYPE" = "usb" ]; then
chown root:scanner "$DEVICE"
chmod 0660 "$DEVICE"
fi
ça marche mais pas du premier coup. Quand je (re)boot mes droits sont en root.root sur le device du scanner mais si je fais un /etc/rc.d/rc.hotplug restart, mes droits deviennent root.scanner sur ce même device. Donc, je me dis que ma modification est bonne mais ce que je comprends pas, c'est pourquoi je n'ai pas les bons droits dès le départ.
Si qqn voit la raison, je suis toute ouïe.
Merci de l'aide
Edit
En définissant statiquement le Device du scanner, ça marche. Maintenant, je n'ai pas de le temps de modifier le script proprement, mais je le ferai et collerai ici.
En attendant, scannons abusivement
Offline
le problème vient des paramètres DEVICE et DEVPATH qui sont passés à libusbscanner. avec un kernel 2.6, DEVICE est vide et il faut calculer DEV et IF à partir de DEVPATH d'une manière correcte, pour trouver le bon DEVICE.
on peut faire une condition sur la version du kernel et ensuite modifier
IF=`echo $DEVPATH | sed 's/(bus/usb/devices/)(.*)-(.*)/2/'` DEV=`echo $DEVPATH | sed 's/(bus/usb/devices/)(.*)-(.*)/3/'`
en
IF=`echo $DEVPATH | sed 's/.*/usb(.)/(.)-(.).*/2/'` DEV=`echo $DEVPATH | sed 's/.*/usb(.)/(.)-(.).*/3/'`
et on finit par:
DEV=`expr $DEV + 1` DEVICE=`printf '/proc/bus/usb/%.03d/%.03d' $IF $DEV` if [ "$ACTION" = "add" -a "$TYPE" = "usb" ]; then chown root:scanner "$DEVICE" && chmod 0660 "$DEVICE" echo `ls -al "$DEVICE"` fi
je ne sais plus si j'ai fait d'autres modifs, j'ai pas l'original sous les yeux.
si quelqu'un a une meilleure solution, je suis preneur !
---
Slackware 10.1, kernel 2.6.11.6
Offline
Sujet à nouveau abandonné quoique résolu en partie. Il s'agit d'un bug dans hotplug comme l'a dit SpitFire. En changeant le script à la main, on arrive à avoir les droits sur le scanner.
Pour ne pas te laisser sur une question sans réponse, c'est un HP Scanjet 3300c (pleinement supporté à partir de sane 1.0.15, je précise avant que tu me parles de hp3300backend).
Mais comme SpitFire et moi (en ce moment), il suffit de modifier libusbscanner et c'est tout bon
Désolé pour le lien vers un autre forum mais ce topic l'explique bien et surtout la solution est fonctionne (perso, j'ai fait un copier/coller sasn modifier quoique ce soit et aucun problème)
Offline