Quand je branche mon appareil photo sur mon PC, je dois soit utiliser
gphoto2 en tant que root, soit faire un chmod a+w sur
/proc/bus/usb/001/<le numéro du device>
Comme le numéro du device change à chaque reconnexion de l'appareil, ça
n'est pas très pratique... Quoi configurer et comment pour changer les
droits par défaut?
--
Dix grammes d'abstraction valent des tonnes de bricolage.
Loi de Booker.
Le Mon, 14 Jun 2004 09:54:09 +0200, Michel Tatoute a écrit :
met toi dans le groupe de /proc/bus/usb/001/<le numéro du device>
C'est root. Et le groupe n'a pas les droits d'écriture de toute façon, le masque par défaut est 644, or gphoto2 exige l'accès en écriture.
chez moi le groupe c'est usb et les droits sont rw-rw----
Bon, je ne connais pas les arcanes mais je pense que la 1ere question est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
Michel.
TiChou
Dans le message <news:, *Emmanuel Florac* tapota sur f.c.o.l.configuration :
Quand je branche mon appareil photo sur mon PC, je dois soit utiliser gphoto2 en tant que root, soit faire un chmod a+w sur
/proc/bus/usb/001/<le numéro du device>
Comme le numéro du device change à chaque reconnexion de l'appareil, ça n'est pas très pratique... Quoi configurer et comment pour changer les droits par défaut?
Il faut que le système de fichier usbfs du bus USB soit monté avec les bonnes options. Malheureusement la plupart des distributions Linux montent ce système de fichier sans options particulières et de ce fait le comportement par défaut est que seul root peut contrôler les périphériques attachés au bus USB. Donc selon la distribution, il faut modifier le script qui initialise l'USB ou ajouter une ligne dans le fichier /etc/fstab en mettant les options devmode et devgid.
Par exemple sur une Gentoo, dans le fichier /etc/init.d/localmount on remplace les lignes suivantes :
ebegin "Mounting USB device filesystem (${usbfs})" mount -t ${usbfs} none /proc/bus/usb &>/dev/null
par :
ebegin "Mounting USB device filesystem (${usbfs})" mount -t ${usbfs} -o devmode64,devgid none /proc/bus/usb &>/dev/null
Ou 85 est le gid numérique du groupe usb :
$ grep :85: /etc/group usb::85:
Sur une Debian, il faut modifier les scripts /etc/init.d/mountvirtfs et /etc/init.d/mountkernfs et penser à ajouter le groupe usb au système. Sur d'autres distributions, comme la Slackware, il faut modifier le script hotplug /etc/hotplug/usb.rc.
L'option remount est là dans le cas où le système de fichier usbfs aurait déjà été monté par un script d'initialisation ou par les scripts hotplug.
Ensuite, de la même manière que pour l'accès aux périphériques audio et le groupe audio, les utilisateurs qui devront utiliser les périphériques USB, devront être membre du groupe usb. Il y a d'autres options de montage pour le système de fichier usbfs, non documentées, mais que je vais expliquer brièvement :
devmode, devuid et devgid pour définir les permissions sur les devices /proc/bus/usb/XXX/YYY. busmode, busuid et busgid pour définir les permissions sur le répertoire /proc/bus/usb. listmode, listuid et listgid pour définir les permissions sur les fichiers /proc/bus/usb/{devices,drivers}.
Une autre possibilité que de monter usbfs avec des options particulières, est aussi de créer un script que l'on placera le répertoire dans /etc/hotplug/usb et qui changera les permissions du device (variable $ DEVICE) dès que l'appareil photo identifié sera branché. Mais cette solution me parait hasardeuse car il faut bien identifier le couple idVendor et idProduct des appareils photos que l'on branchera. L'avantage c'est que seul les appareils photos seront accessibles par les logiciels lancés par l'utilisateur.
-- TiChou
Dans le message <news:pan.2004.06.13.21.58.47.41196@imaginet.fr>,
*Emmanuel Florac* tapota sur f.c.o.l.configuration :
Quand je branche mon appareil photo sur mon PC, je dois soit utiliser
gphoto2 en tant que root, soit faire un chmod a+w sur
/proc/bus/usb/001/<le numéro du device>
Comme le numéro du device change à chaque reconnexion de l'appareil, ça
n'est pas très pratique... Quoi configurer et comment pour changer les
droits par défaut?
Il faut que le système de fichier usbfs du bus USB soit monté avec les
bonnes options. Malheureusement la plupart des distributions Linux montent
ce système de fichier sans options particulières et de ce fait le
comportement par défaut est que seul root peut contrôler les périphériques
attachés au bus USB.
Donc selon la distribution, il faut modifier le script qui initialise l'USB
ou ajouter une ligne dans le fichier /etc/fstab en mettant les options
devmode et devgid.
Par exemple sur une Gentoo, dans le fichier /etc/init.d/localmount on
remplace les lignes suivantes :
ebegin "Mounting USB device filesystem (${usbfs})"
mount -t ${usbfs} none /proc/bus/usb &>/dev/null
par :
ebegin "Mounting USB device filesystem (${usbfs})"
mount -t ${usbfs} -o devmode64,devgid
none /proc/bus/usb &>/dev/null
Ou 85 est le gid numérique du groupe usb :
$ grep :85: /etc/group
usb::85:
Sur une Debian, il faut modifier les scripts /etc/init.d/mountvirtfs et
/etc/init.d/mountkernfs et penser à ajouter le groupe usb au système.
Sur d'autres distributions, comme la Slackware, il faut modifier le script
hotplug /etc/hotplug/usb.rc.
L'option remount est là dans le cas où le système de fichier usbfs aurait
déjà été monté par un script d'initialisation ou par les scripts hotplug.
Ensuite, de la même manière que pour l'accès aux périphériques audio et le
groupe audio, les utilisateurs qui devront utiliser les périphériques USB,
devront être membre du groupe usb.
Il y a d'autres options de montage pour le système de fichier usbfs, non
documentées, mais que je vais expliquer brièvement :
devmode, devuid et devgid pour définir les permissions sur les devices
/proc/bus/usb/XXX/YYY.
busmode, busuid et busgid pour définir les permissions sur le répertoire
/proc/bus/usb.
listmode, listuid et listgid pour définir les permissions sur les fichiers
/proc/bus/usb/{devices,drivers}.
Une autre possibilité que de monter usbfs avec des options particulières,
est aussi de créer un script que l'on placera le répertoire dans
/etc/hotplug/usb et qui changera les permissions du device (variable $
DEVICE) dès que l'appareil photo identifié sera branché.
Mais cette solution me parait hasardeuse car il faut bien identifier le
couple idVendor et idProduct des appareils photos que l'on branchera.
L'avantage c'est que seul les appareils photos seront accessibles par les
logiciels lancés par l'utilisateur.
Dans le message <news:, *Emmanuel Florac* tapota sur f.c.o.l.configuration :
Quand je branche mon appareil photo sur mon PC, je dois soit utiliser gphoto2 en tant que root, soit faire un chmod a+w sur
/proc/bus/usb/001/<le numéro du device>
Comme le numéro du device change à chaque reconnexion de l'appareil, ça n'est pas très pratique... Quoi configurer et comment pour changer les droits par défaut?
Il faut que le système de fichier usbfs du bus USB soit monté avec les bonnes options. Malheureusement la plupart des distributions Linux montent ce système de fichier sans options particulières et de ce fait le comportement par défaut est que seul root peut contrôler les périphériques attachés au bus USB. Donc selon la distribution, il faut modifier le script qui initialise l'USB ou ajouter une ligne dans le fichier /etc/fstab en mettant les options devmode et devgid.
Par exemple sur une Gentoo, dans le fichier /etc/init.d/localmount on remplace les lignes suivantes :
ebegin "Mounting USB device filesystem (${usbfs})" mount -t ${usbfs} none /proc/bus/usb &>/dev/null
par :
ebegin "Mounting USB device filesystem (${usbfs})" mount -t ${usbfs} -o devmode64,devgid none /proc/bus/usb &>/dev/null
Ou 85 est le gid numérique du groupe usb :
$ grep :85: /etc/group usb::85:
Sur une Debian, il faut modifier les scripts /etc/init.d/mountvirtfs et /etc/init.d/mountkernfs et penser à ajouter le groupe usb au système. Sur d'autres distributions, comme la Slackware, il faut modifier le script hotplug /etc/hotplug/usb.rc.
L'option remount est là dans le cas où le système de fichier usbfs aurait déjà été monté par un script d'initialisation ou par les scripts hotplug.
Ensuite, de la même manière que pour l'accès aux périphériques audio et le groupe audio, les utilisateurs qui devront utiliser les périphériques USB, devront être membre du groupe usb. Il y a d'autres options de montage pour le système de fichier usbfs, non documentées, mais que je vais expliquer brièvement :
devmode, devuid et devgid pour définir les permissions sur les devices /proc/bus/usb/XXX/YYY. busmode, busuid et busgid pour définir les permissions sur le répertoire /proc/bus/usb. listmode, listuid et listgid pour définir les permissions sur les fichiers /proc/bus/usb/{devices,drivers}.
Une autre possibilité que de monter usbfs avec des options particulières, est aussi de créer un script que l'on placera le répertoire dans /etc/hotplug/usb et qui changera les permissions du device (variable $ DEVICE) dès que l'appareil photo identifié sera branché. Mais cette solution me parait hasardeuse car il faut bien identifier le couple idVendor et idProduct des appareils photos que l'on branchera. L'avantage c'est que seul les appareils photos seront accessibles par les logiciels lancés par l'utilisateur.
-- TiChou
Emmanuel Florac
Le Mon, 14 Jun 2004 13:04:59 +0200, Michel Tatoute a écrit :
Bon, je ne connais pas les arcanes mais je pense que la 1ere question est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
J'ai un point de montage usbdevfs, donc je suppose que j'utilise devfs... C'est une slackware current, noyau 2.4.26.
-- on passe la moitié de son temps à refaire ce que l'on n'a pas eu le temps de faire correctement. Loi de Myers.
Le Mon, 14 Jun 2004 13:04:59 +0200, Michel Tatoute a écrit :
Bon, je ne connais pas les arcanes mais je pense que la 1ere question
est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
J'ai un point de montage usbdevfs, donc je suppose que j'utilise devfs...
C'est une slackware current, noyau 2.4.26.
--
on passe la moitié de son temps à refaire ce que l'on n'a pas eu le
temps de faire correctement.
Loi de Myers.
Le Mon, 14 Jun 2004 13:04:59 +0200, Michel Tatoute a écrit :
Bon, je ne connais pas les arcanes mais je pense que la 1ere question est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
J'ai un point de montage usbdevfs, donc je suppose que j'utilise devfs... C'est une slackware current, noyau 2.4.26.
-- on passe la moitié de son temps à refaire ce que l'on n'a pas eu le temps de faire correctement. Loi de Myers.
Emmanuel Florac
Le Mon, 14 Jun 2004 15:27:04 +0200, TiChou a écrit :
Il faut que le système de fichier usbfs du bus USB soit monté avec les bonnes options.
Aaaah, merci, je pense que là ça va me dépanner :)
-- Le commissaire : Comment vous appelez-vous? Garance : Moi je ne m'appelle jamais, je suis toujours là. J'ai pas besoin de m'appeler. Mais les autres m'appellent Garance, si ça peut vous intéresser. Prévert,"les enfants du Paradis".
Le Mon, 14 Jun 2004 15:27:04 +0200, TiChou a écrit :
Il faut que le système de fichier usbfs du bus USB soit monté avec les
bonnes options.
Aaaah, merci, je pense que là ça va me dépanner :)
--
Le commissaire : Comment vous appelez-vous?
Garance : Moi je ne m'appelle jamais, je suis toujours là. J'ai pas
besoin de m'appeler. Mais les autres m'appellent Garance, si ça peut
vous intéresser.
Prévert,"les enfants du Paradis".
Le Mon, 14 Jun 2004 15:27:04 +0200, TiChou a écrit :
Il faut que le système de fichier usbfs du bus USB soit monté avec les bonnes options.
Aaaah, merci, je pense que là ça va me dépanner :)
-- Le commissaire : Comment vous appelez-vous? Garance : Moi je ne m'appelle jamais, je suis toujours là. J'ai pas besoin de m'appeler. Mais les autres m'appellent Garance, si ça peut vous intéresser. Prévert,"les enfants du Paradis".
Emmanuel Florac
Le Mon, 14 Jun 2004 15:27:04 +0200, TiChou a écrit :
L'option remount est là dans le cas où le système de fichier usbfs aurait déjà été monté par un script d'initialisation ou par les scripts hotplug.
Sur la Slack l'option remount ne fonctionne pas... Et j'ai cnagé le gid, rien à faire, toujours root.root comme user et 644 comme mode! Si je change à la main en direct, ça ne marche pas non plus (chgrp usb /proc/bus/usb n'a aucun effet!)
-- Toutes les organisations ont leur règles, et les Femmes Algériennes doivent avoir aussi leurs règles. Kaid Ahmed.
Le Mon, 14 Jun 2004 15:27:04 +0200, TiChou a écrit :
L'option remount est là dans le cas où le système de fichier usbfs aurait
déjà été monté par un script d'initialisation ou par les scripts
hotplug.
Sur la Slack l'option remount ne fonctionne pas... Et j'ai cnagé le gid,
rien à faire, toujours root.root comme user et 644 comme mode! Si je
change à la main en direct, ça ne marche pas non plus (chgrp usb
/proc/bus/usb n'a aucun effet!)
--
Toutes les organisations ont leur règles, et les Femmes Algériennes
doivent avoir aussi leurs règles.
Kaid Ahmed.
L'option remount est là dans le cas où le système de fichier usbfs aurait déjà été monté par un script d'initialisation ou par les scripts hotplug.
Sur la Slack l'option remount ne fonctionne pas... Et j'ai cnagé le gid, rien à faire, toujours root.root comme user et 644 comme mode! Si je change à la main en direct, ça ne marche pas non plus (chgrp usb /proc/bus/usb n'a aucun effet!)
-- Toutes les organisations ont leur règles, et les Femmes Algériennes doivent avoir aussi leurs règles. Kaid Ahmed.
TiChou
Dans le message <news:, *Emmanuel Florac* tapota sur f.c.o.l.configuration :
L'option remount est là dans le cas où le système de fichier usbfs aurait déjà été monté par un script d'initialisation ou par les scripts hotplug.
Sur la Slack l'option remount ne fonctionne pas...
Non, c'est moi qui est certainement fait une erreur. En y réfléchissant je doute que l'option remount soit prise en compte quand elle est placée dans le fichier /etc/fstab.
Et j'ai cnagé le gid, rien à faire, toujours root.root comme user et 644 comme mode!
Tu as procédé comment ?
Si je change à la main en direct, ça ne marche pas non plus (chgrp usb /proc/bus/usb n'a aucun effet!)
Est-ce que la commande suivante fait bien effet :
mount -o remount,devmode64,devgid /proc/bus/usb
En principe tu devrais avoir les permissions sur tes devices /proc/bus/usb/XXX/YYY à -rw-rw-r-- et root.nobody.
Si c'est bien le cas, sur ta Slackware, la ligne suivante dans ton /etc/fstab devrait suffir pour que usbfs soit correctement monté au démarrage :
none /proc/bus/usb usbfs devmode64,devgid=XX 0 0
où XX est à remplacer par le gid numérique du groupe usb que tu auras créé vu qu'il n'existe pas par défaut sous Slackware.
-- TiChou
Dans le message <news:pan.2004.06.14.20.06.50.656647@imaginet.fr>,
*Emmanuel Florac* tapota sur f.c.o.l.configuration :
L'option remount est là dans le cas où le système de fichier usbfs aurait
déjà été monté par un script d'initialisation ou par les scripts
hotplug.
Sur la Slack l'option remount ne fonctionne pas...
Non, c'est moi qui est certainement fait une erreur. En y réfléchissant je
doute que l'option remount soit prise en compte quand elle est placée dans
le fichier /etc/fstab.
Et j'ai cnagé le gid, rien à faire, toujours root.root comme user et 644
comme mode!
Tu as procédé comment ?
Si je change à la main en direct, ça ne marche pas non plus (chgrp
usb /proc/bus/usb n'a aucun effet!)
Est-ce que la commande suivante fait bien effet :
mount -o remount,devmode64,devgid /proc/bus/usb
En principe tu devrais avoir les permissions sur tes devices
/proc/bus/usb/XXX/YYY à -rw-rw-r-- et root.nobody.
Si c'est bien le cas, sur ta Slackware, la ligne suivante dans ton
/etc/fstab devrait suffir pour que usbfs soit correctement monté au
démarrage :
none /proc/bus/usb usbfs devmode64,devgid=XX 0 0
où XX est à remplacer par le gid numérique du groupe usb que tu auras créé
vu qu'il n'existe pas par défaut sous Slackware.
L'option remount est là dans le cas où le système de fichier usbfs aurait déjà été monté par un script d'initialisation ou par les scripts hotplug.
Sur la Slack l'option remount ne fonctionne pas...
Non, c'est moi qui est certainement fait une erreur. En y réfléchissant je doute que l'option remount soit prise en compte quand elle est placée dans le fichier /etc/fstab.
Et j'ai cnagé le gid, rien à faire, toujours root.root comme user et 644 comme mode!
Tu as procédé comment ?
Si je change à la main en direct, ça ne marche pas non plus (chgrp usb /proc/bus/usb n'a aucun effet!)
Est-ce que la commande suivante fait bien effet :
mount -o remount,devmode64,devgid /proc/bus/usb
En principe tu devrais avoir les permissions sur tes devices /proc/bus/usb/XXX/YYY à -rw-rw-r-- et root.nobody.
Si c'est bien le cas, sur ta Slackware, la ligne suivante dans ton /etc/fstab devrait suffir pour que usbfs soit correctement monté au démarrage :
none /proc/bus/usb usbfs devmode64,devgid=XX 0 0
où XX est à remplacer par le gid numérique du groupe usb que tu auras créé vu qu'il n'existe pas par défaut sous Slackware.
-- TiChou
no_spam
On Mon, 14 Jun 2004 21:42:54 +0200, Emmanuel Florac wrote:
Le Mon, 14 Jun 2004 13:04:59 +0200, Michel Tatoute a écrit :
Bon, je ne connais pas les arcanes mais je pense que la 1ere question est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
J'ai un point de montage usbdevfs, donc je suppose que j'utilise devfs...
Petite précision: usbdevfs est un filesystem propre à la couche USB et n'a aucun rapport avec devfs. Ils sont parfaitement indépendants l'un de l'autre.
On Mon, 14 Jun 2004 21:42:54 +0200, Emmanuel Florac wrote:
Le Mon, 14 Jun 2004 13:04:59 +0200, Michel Tatoute a écrit :
Bon, je ne connais pas les arcanes mais je pense que la 1ere question
est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
J'ai un point de montage usbdevfs, donc je suppose que j'utilise devfs...
Petite précision: usbdevfs est un filesystem propre à la couche USB et
n'a aucun rapport avec devfs. Ils sont parfaitement indépendants l'un
de l'autre.
On Mon, 14 Jun 2004 21:42:54 +0200, Emmanuel Florac wrote:
Le Mon, 14 Jun 2004 13:04:59 +0200, Michel Tatoute a écrit :
Bon, je ne connais pas les arcanes mais je pense que la 1ere question est: tu utilises devfs? Quelle version du noyau? Quelle distrib?
J'ai un point de montage usbdevfs, donc je suppose que j'utilise devfs...
Petite précision: usbdevfs est un filesystem propre à la couche USB et n'a aucun rapport avec devfs. Ils sont parfaitement indépendants l'un de l'autre.
Emmanuel Florac
Le Tue, 15 Jun 2004 00:12:40 +0200, no_spam a écrit :
Petite précision: usbdevfs est un filesystem propre à la couche USB et n'a aucun rapport avec devfs. Ils sont parfaitement indépendants l'un de l'autre.
Ah d'accord. Quoi qu'il en soit j'ai changé les options dans fstab, j'ai essayé de démonter, remoonter etc, rien n'y fait : toujours root.root/644, grrrrr.
-- Le travail est la malédiction des classes qui boivent. O. Wilde.
Le Tue, 15 Jun 2004 00:12:40 +0200, no_spam a écrit :
Petite précision: usbdevfs est un filesystem propre à la couche USB et
n'a aucun rapport avec devfs. Ils sont parfaitement indépendants l'un
de l'autre.
Ah d'accord. Quoi qu'il en soit j'ai changé les options dans fstab, j'ai
essayé de démonter, remoonter etc, rien n'y fait : toujours
root.root/644, grrrrr.
--
Le travail est la malédiction des classes qui boivent.
O. Wilde.
Le Tue, 15 Jun 2004 00:12:40 +0200, no_spam a écrit :
Petite précision: usbdevfs est un filesystem propre à la couche USB et n'a aucun rapport avec devfs. Ils sont parfaitement indépendants l'un de l'autre.
Ah d'accord. Quoi qu'il en soit j'ai changé les options dans fstab, j'ai essayé de démonter, remoonter etc, rien n'y fait : toujours root.root/644, grrrrr.
-- Le travail est la malédiction des classes qui boivent. O. Wilde.