Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
scanner_scsi [Le 19/07/2009, 21:32]
213.95.41.13 BUS=="scsi", KERNEL=="sg0", MODE="0666", GROUP="saned"
scanner_scsi [Le 11/09/2022, 12:17] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>hoary matériel scanner brouillon}}+{{tag>​matériel scanner brouillon ​VÉTUSTE}}
 ---- ----
  
Ligne 5: Ligne 5:
  
 ====== Régler les problèmes avec un scanner SCSI ====== ====== Régler les problèmes avec un scanner SCSI ======
- 
-Par Gilles T. \\ 
-Article provenant de http://​debuntu.tuxfamily.org 
- 
  
 ===== Mon scanner SCSI n'est pas détecté par XSane : analyse du problème ===== ===== Mon scanner SCSI n'est pas détecté par XSane : analyse du problème =====
  
-[[:​xsane|Sane]] ne parvient pas à trouver votre scanner scsi ? Peut-être le pilote scsi ne convient-il pas (par exemple, ​moi, j'ai aic7xxx, qui ne détecte pas le scanner). +[[:​xsane|Sane]] ne parvient pas à trouver votre scanner scsi ? Peut-être le pilote scsi ne convient-il pas (par exemple, ​il peut s'agir du pilote ​aic7xxx, qui ne détecte pas le scanner). ​Vous pouvez ​alors essayer d' ​ajouter le [[:​tutoriel:​tout_savoir_sur_les_modules_linux|pilote]] générique ​**sg** en saisissant ​dans un [[:terminal]] la [[:​commande_shell|commande]] suivante ​
-On peut alors ajouter le pilote générique sg+<​code>​sudo modprobe sg</​code>​
-Pour prendre ​en compte le scsi générique taper dans un terminal : +
- +
-  $sudo modprobe sg+
  
 Cela devrait suffire à débloquer la situation. Cela devrait suffire à débloquer la situation.
  
 Pour vérifier ensuite si le scanner est bien reconnu, taper : Pour vérifier ensuite si le scanner est bien reconnu, taper :
- +<​code>​sudo scanimage -L</​code>​
-  ​sudo scanimage -L+
  
 qui doit retourner la valeur du scanner scsi détecté, par exemple, dans mon cas : qui doit retourner la valeur du scanner scsi détecté, par exemple, dans mon cas :
- +<​code>​#device `epson:/​dev/​sg0'​ is a Epson GT-7000 flatbed scanner</​code>​
-  ​#device `epson:/​dev/​sg0'​ is a Epson GT-7000 flatbed scanner+
  
 ===== Charger le périphérique sg au boot ===== ===== Charger le périphérique sg au boot =====
  
 +Pour rendre ceci permanent, [[:​tutoriel:​comment_modifier_un_fichier|ouvrez avec les droits d'​administration]] le fichier **/​etc/​modules** et ajoutez ​ la ligne suivante à la fin du fichier :
 +<​file>​sg</​file>​
  
-Pour rendre ceci permanent, ajouter au fichier /​etc/​modules la ligne suivante à la fin du fichier : +Au prochain boot, [[:udev]] crée le device sg0 correspondant au scanner (s'il est allumé). Sane, [[:XSane]] et [[:gimp|The Gimp]] utilisent tous le scanner sans problème.
- +
-  sg +
- +
-Au prochain boot, udev crée le device sg0 correspondant au scanner (s'il est allumé). Sane, XSane et The Gimp utilisent tous le scanner sans problème. +
- +
  
 ===== Rendre accessible ce périphérique à tous les utilisateurs ===== ===== Rendre accessible ce périphérique à tous les utilisateurs =====
  
-Seulement voilà, seul root peut utiliser le scanner ! Il faut modifier les permissions du device, dont le propriétaire est rootet le groupe disk +Seulement voilà, seul [[:sudo|root]] peut utiliser le scanner ! \\ 
-----+Dans ce cas il faut modifier les permissions du matériel, dont le propriétaire est root et le groupe disk.
  
-<note important>​A partir d'une certaine version de Ubuntu ​(je ne sais plus laquelle, sans doute Hardy Heron, et jusqu'​à Jaunty Jackalope inclus, le fichier "/​etc/​udev/​rules.d/​40-permissions.rules"​ n'​existe plus. Il suffit de le recréer ​et d'y incorporer les lignes concernant votre scanner,​comme indiqué ci-dessous. Si le scanner n'est ni un HP, ni un Epson, j'​imagine qu'on doit pouvoir créer une règle appropriée en imitant les lignes sur HP ou Epson. Cette méthode a été vérifiée pour un scanner Epson GT 7000 photo.</​note>​+==== Versions récentes (Ubuntu ​8.04 et suivantes) ====
  
-Pour Hardy Heron et suivanteson procède ainsi : +S'il n'​existe pas déjà[[:tutoriel:​comment_modifier_un_fichier|créez avec les droits d'​administration]] ​le fichier ​**/​etc/​udev/​rules.d/​40-permissions.rules** où vous y ajouterez un une section scsi en insérant les lignes suivantes: 
-Editer ​le fichier ​''​/​etc/​udev/​rules.d/​40-permissions.rules ​''​ et regardez la section scsi où vous devez avoir quelque chose de la forme:+<​file>​ 
 +# SCSI devices 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​1", ​               GROUP="​tape"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​3",​ ATTRS{vendor}=="​HP", ​   GROUP="​scanner",​ MODE="​0666"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​3",​ ATTRS{vendor}=="​Epson", ​   GROUP="​scanner",​ MODE="​0666"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​3",​ ATTRS{vendor}=="​EPSON", ​   GROUP="​scanner",​ MODE="​0666"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​4", ​               GROUP="​cdrom"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​5", ​               GROUP="​cdrom"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​6", ​               GROUP="​scanner",​ MODE="​0666"​ 
 +SUBSYSTEMS=="​scsi",​ ATTRS{type}=="​8", ​               GROUP="​tape"​ 
 +</​file>​
  
-  ATTRS{type}=="​6", ​                      ​GROUP="​scanner"​ +<note tip> 
-  ​ATTRS{type}=="​8", ​                      ​GROUP="​tape"​ +[[:​users-admin|Mettre l'​utilisateur dans le groupe]] ​scanner, ​ensuite vérifier que les [[:droits]] et [[:​permissions]] du fichier **/​home/​user/​.sane** sont corrects pour l'userles rétablir au besoin. FIXME ils doivent être à combien au mini ?</​note>​
-  ATTRS{type}=="​3",​ ATTRS{vendor}=="​HP", ​ GROUP="​scanner+
-  ATTRS{type}=="​3"​ATTRS{vendor}=="​Epson"​GROUP="​scanner"​ +
-  ATTRS{type}=="​3",​ ATTRS{vendor}=="​EPSON",​ GROUP="​scanner"​+
  
-modifier pour que cela resemble à ça:+<note important>​ 
 +**Rebooter scanner allumé** et tester.\\ 
 +[[#​j_ai_oublie_d_allumer_le_scanner_au_demarrage_de_l_ordinateur|Une nouvelle détection de la chaîne SCSI]] suffira la plupart du temps. 
 +</​note>​
  
-  ATTRS{type}=="​6", ​                      GROUP="​scanner",​ MODE="​0666"​ +===== J'ai oublié d'​allumer le scanner ​au démarrage de l'​ordinateur ! =====
-  ATTRS{type}=="​8", ​                      ​GROUP="​tape"​ +
-  ATTRS{type}=="​3",​ ATTRS{vendor}=="​HP", ​ GROUP="​scanner", MODE="​0666"​ +
-  ATTRS{type}=="​3",​ ATTRS{vendor}=="​Epson",​ GROUP="​scanner",​ MODE="​0666"​ +
-  ATTRS{type}=="​3",​ ATTRS{vendor}=="​EPSON",​ GROUP="​scanner",​ MODE="​0666"​+
  
 +Évidemment,​ le périphérique **/​dev/​sg0** n'​existe pas, et pas moyen de scanner. On ne va tout de même pas rebooter à chaque fois ? La manipulation suivante devrait vous tirer de ce mauvais pas. Elle n'est pas parfaite, car seul [[:​sudo|root]] peut l'​accomplir. Elle consiste à décharger le [[:​tutoriel:​tout_savoir_sur_les_modules_linux|pilote]] SCSI (le vrai pas le générique) et à le recharger pour forcer le système à relire toute la chaine SCSI des périphériques :
 +<​code>​sudo modprobe -r aic7xxx
 +sudo modprobe aic7xxx</​code>​
 + 
 +Vérifiez ensuite que les droits soient semblable à :
 +<​code>​ls -l /dev/sg*
 +crw-rw---- 1 root scanner 21, 0 2005-07-09 08:24 /​dev/​sg0''​
 +</​code>​
  
----- +Bon usage de votre scanner.
-Pour Hoary Hedgehog, on procède ainsi : +
- +
-Editer le fichier ''/​etc/​udev/​permissions.d/​udev.permissions''​ et remplacer : +
- +
-  s[gr][0-9]*:​root:​disk:​0660 +
- +
-par +
- +
-  s[gr][0-9]*:​root:​scanner:​0660 +
- +
-ou par : +
- +
-  s[gr][0-9]*:​root:​disk:​0666 +
- +
-On reboote, ou on force init à s'​exécuter d'une façon ou d'une autre, et on vérifie : +
- +
-  cd /dev +
-  ls -l sg* +
-  crw-rw---- 1 root scanner 21, 0 2005-07-08 08:20 sg0''​ +
- +
-Victoire ! ça marche : tous les utilisateurs peuvent se servir du scanner. +
- +
-Remarque : une autre solution serait d'​ajouter l'​utilisateur au groupe disk : +
- +
-  sudo usermod -G disk <nom-de-l-utilisateur>​ +
- +
-mais ceci donnerait des droits sur d'​autres périphériques que le scanner ​(tous les disques en fait) et introduirait des problèmes de sécurité ; en outre, il faudrait modifier la configuration de création des utilisateurs pour que tout nouvel ajout se fasse automatiquement,​ ce qui se règle dans le fichier /​etc/​adduser.conf (si j'ai bien compris, je n'ai pas essayé).+
  
 ---- ----
-Pour Breezy, la gestion des permissions a changé, j'ai constaté que l'on pouvait faire ceci, qui donne le même résultat que la solution précédente : +//Contributeurs:FIXME//
- +
-Editer le fichier "/​etc/​udev/​permissions.rules",​ et dans la section "#SCSI devices",​ ajouter la ligne suivante après la ligne 17 (c'​est_à-dire à la fin de la section) : +
- +
- +
-  BUS=="​scsi",​ KERNEL=="​sg0",​ MODE="​0660",​ GROUP="​scanner"​ +
- +
- +
-Remplacer sg0 par le périphérique que xscanimage -L a effectivement détecté sur votre système. +
- +
-C'est tout, on reboote, et tout fonctionne. +
- +
-Voilà, tout fonctionne. +
- +
----- +
-Pour Dapper ou Edgy, par défaut "​scanimage"​ n'est plus installé ; une simple exécution de "​xsane"​ sous Gnome nous renseignera sur le succès de nos manipulations. Si on veut scanimage, il faut installer le paquet "​sane-utils"​. +
- +
-Le fichier à modifier pour les permissions est "/​etc/​udev/​rules.d/​45-libsane.rules",​ et les nouveaux droits sont 664. La ligne de configuration est à ajouter tout à la fin du fichier (ou tout au début si on préfère, mais pas dans le corps du fichier) : +
- +
-  BUS=="​scsi",​ KERNEL=="​sg0",​ MODE="​0664",​ GROUP="​scanner"​ +
- +
-Attention, le 45 au début du nom du fichier indique que ce script s'​exécute au 45eme rang parmis une liste de niveaux pouvant aller à 99. Tout script de rang supérieur pourrait annuler les dispositions prises ici. Si cela se produit, on peut bloquer la situation en remplaçant la ligne ci-dessus par :  +
- +
-  BUS=="​scsi",​ KERNEL=="​sg0",​ MODE:​="​0660",​ GROUP:​="​scanner"​ +
- +
-On remplace "​="​ par ":​="​. C'est à éviter en l'​absence de nécessité. +
- +
- +
-Tout le reste de l'​article reste valable. +
-  +
----- +
-Pour Jaunty, dans la version Xubuntu avec un scanner HP Scanjet 5p, +
-je m'en suis sorti en créant un fichier "/​etc/​udev/​rules.d/​45-libsane.rules"​ dont la ligne active est: +
- +
-  BUS=="​scsi",​ KERNEL=="​sg0",​ MODE:​="​0666",​ GROUP:​="​saned"​ +
- +
-toutefois les fichiers créés étaient en lecture seule, et je ne pouvais les lire ni les supprimer....j'​ai modifié une des entrées du fichier ~/​.sane/​xsane/​xsane.rc,​ dans lequel j'ai trouvé +
-les deux lignes +
- +
-"image umask"​ +
-93 +
- +
-j'ai remplacé 93 par 0 et sauvegardé.....quand j'ai rouvert ce fichier j'ai trouvé 107....mais j'ai constaté que les fichiers étaient créés en mode écriture et que je pouvais les manipuler.... +
- +
- +
-===== J'ai oublié d'​allumer le scanner au démarrage de l'​ordinateur ! ===== +
- +
- +
-Evidemment, le périphérique /dev/sg0 n'​existe pas, et pas moyen de scanner. On ne va tout de même pas rebooter à chaque fois ? La manipulation suivante nous tire de ce mauvais pas. Elle n'est pas parfaite, car seul root peut l'​accomplir. Elle consiste à décharger le pilote SCSI (le vrai pas le générique) et à le recharger pour forcer le système à relire toute la chaine SCSI des périphériques : +
- +
-  sudo modprobe -r aic7xxx +
-  sudo modprobe aic7xxx +
- +
-On attend un bon moment avec Ubuntu, mais après tout fonctionne : +
- +
-  ls -l /dev/sg* +
-  crw-rw---- 1 root scanner 21, 0 2005-07-09 08:24 /dev/sg0''​ +
- +
-Bon usage de votre scanner.+
  • scanner_scsi.1248031960.txt.gz
  • Dernière modification: Le 18/04/2011, 14:53
  • (modification externe)