Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Zugriffsberechtigungen bei Scannern

Alles rund um Hardware, die unter Linux läuft oder zum Laufen gebracht werden soll

Moderator: Moderatoren

Antworten
Benutzeravatar
scanner_freak
Hacker
Hacker
Beiträge: 300
Registriert: 19. Mai 2004, 13:12

Zugriffsberechtigungen bei Scannern

Beitrag von scanner_freak » 29. Aug 2006, 09:14

Ich werde hier mal den Versuch starten Hinweise zu geben und
zu sammeln, wie man am Besten als normaler Benutzer auf
seinen Scanner zugreifen kann, wenn YAST versagen sollte.

Bitte beachten, dass wir hier aktuell SuSE10.x haben, einige
Aussagen, bitte dahingehend zur Kenntnis nehmen. Falls
ihr zusätzliche Infos vermisst oder habt, bitte melden und/oder
ergänzen.

Generell gilt inzwischen, dass sämtliche Zugriffsberechtigungen
via udev eingestellt werden. Die ensprechenden Einstellungen
befinden sich unter /etc/udev. Hotplug spielt in diesem Zusammen-
hang eine im weniger wichtige Rolle. Ebenso sollte man sich mit
dem automatischen Laden von Modulen auch nicht mehr abmühen
sollen.

Es gilt auch, dass viele Geräte keine speziellen Kerneltreiber
mehr haben sondern über Libraries wie libusb und libieee1284
auf die entsprechenden Subsysteme wie USB und Parport
zugreifen.


USB-Geräte
-------------

Bei den USB-Geräten sollte YAST inzwischen zuverlässig arbeiten,
ansonsten:

Misiu unterhält eine ständig aktualisierte Linksammlung:
http://www.linux-club.de/ftopic17223.html

Für SuSE gilt:
http://de.opensuse.org/Spezial:Search?s ... y=0&go=Los

Hier noch ein paar weitere Tips:

1. /etc/init.d/sane-dev

Dieser "Dienst" sollte via YAST -> System -> Runleveleditor
überprüft und ggf. gestartet werden. Das sollte bei der Installation
eines Scanners automatisch passieren, aber überprüfen schadet
nix.

Als root-User kann man via

Code: Alles auswählen

rcsane-dev status
den aktuellen Zustand prüfen und via

Code: Alles auswählen

rcsane-dev start
bei angeschaltetem und eingestecktem Scanner den
Dienst starten.

2. Der Resourcenmanager

Lege unter /etc/resmgr.conf.d eine Datei mit Namen
51-scanner.conf an und fülle Sie wie folgt:

Code: Alles auswählen

# Use /usr/sbin/lsusb to create entries like: 
# add usb:vendor=0x1a2b,product=0x3c4d scanner 
# to grant access to USB scanners: 
add usb:vendor=0x04a9,product=0x220d scanner

Wobei natürlich vendor und product angepasst werden müssen.
(siehe Ausgabe von lsusb). Danach wird der resmgr neu
gestartet:

Code: Alles auswählen

rcresmgr restart

Nun sollte der Scanner auch für einen Benutzer verfügbar sein.

3. Holzhammer-Methode

In der Datei /etc/fstab sollte folgender Eintrag zu finden sein:

Code: Alles auswählen

usbfs           /proc/bus/usb   usbfs           noauto 0 0

Um nun jedem Zugriff auf die USB-Geräte zu gewähren, kann
man den Eintrag wie folgt ändern:

Code: Alles auswählen

usbfs           /proc/bus/usb   usbfs           noauto,devmode=0666 0 0

Es ist auch möglich User- und Group-IDs zu vergeben:
devuid und devgid

Seit SuSE 10.1 wird das usbfs nicht mehr genutzt, sondern via
udev und entsprechenden Regeln in /dev/bus/usb abgebildet.
Dort greift auch die libusb entsprechend hin. Um jetzt die Nodes
hier für alle nutzbar zu machen, ist eine Änderung in der Datei
/etc/udev/rules.d/50-udev-default.rules notwendig.

Der Eintrag mit der Überschrift

Code: Alles auswählen

# libusb device access

endet mit

Code: Alles auswählen

MODE="0644"

ändert man auf 666, sollte beim nächsten Einstecken der Zugriff
für alle möglich sein.


Parallelport-Geräte
--------------------

Parallelport Backends wie z.B. das Plustek_PP Backend sind
inzwischen in der Lage ohne Kernelmodul auf den Scanner
zugreifen zu können. Dummerweise verwendet das Backend
eine Library namens libieee1248, welche so schlau ist und im
Rootmodus so ziemlich alles probiert um auf den Parallelport
zugreifen zu können. Das funktioniert beim normalen Benutzer
leider nicht. Der Nebeneffekt ist der, dass YAST den Scanner
erkennt und einrichtet, leider aber vergisst das so zu machen,
dass der normale User darauf zugreifen kann.

Um als User auf den Parallelport zugreifen zu können, sollte
man dafür sorgen, dass das Modul ppdev geladen worden ist.
Am besten als Eintrag in der /etc/init.d/boot.local

Code: Alles auswählen

modprobe ppdev
Dies sorgt dafür, dass Devicenodes (Gerätedateien) wie /dev/parport0 etc.
angelegt werden. Diese sind dann entsprechend mit
Zugriffsrechten zu versehen und schon kann man als normaler
User darauf zugreifen. Das funktioniert wie folgt:

Unter SuSE10.0 gab es noch die Datei

Code: Alles auswählen

/etc/udev/static_devices.txt
über welche man die Devicenodes automatisch mit den benötigten
Zugriffsrechten anlegen konnte - diese ist seit der 10.1
verschwunden. Dort sollte man eine entsprechende udev Regel
anlegen. Dazu wechselst man in das Verzeichnis
/etc/udev/rules.d und öffnet die Datei 50-udev-default.rules

Es genügt folgende Zeile anzuhängen:

Code: Alles auswählen

KERNEL=="parport*", "NAME="%k", GROUP="lp"

Danach sollte man das Modul ppdev erneut laden und das Device
/dev/parport0 gehört root und zur Gruppe lp.

Möchte man es in einer anderen Benutzergruppe haben ändere
man den Eintrag GROUP. Soll es nur andere Zugriffsrechte
bekommen, so sieht der Eintrag zu Beispiel so aus:

Code: Alles auswählen

KERNEL=="parport*", "NAME="%k", MODE="666"


SCSI-Geräte
--------------

Sollte inzwischen automagisch funktionieren. Auch hier gilt
zunächst mal den "Dienst" /etc/init.d/sane-dev zu überprüfen.
Weiteres hierzu siehe unter USB-Geräte.

Weitere Hinweise bzgl. SCSI-Geräten sind hier zu finden.
Zuletzt geändert von scanner_freak am 2. Feb 2008, 21:31, insgesamt 5-mal geändert.

Werbung:
kohlhz
Member
Member
Beiträge: 79
Registriert: 15. Sep 2006, 16:23

Beitrag von kohlhz » 2. Okt 2006, 15:08

... wäre ja schön, wenn die Berechtigung eingerichtet würde, aber unter SuSE10.0 wird für meinen neu eingerichteten SCSI-Scanmaker nur root als berechtigt angesehen.

Und ich sehe mit Grimm, daß mein Normaluser nicht scannen darf, dafür erhalte ich beim Start unter root eine zwar schöne, leider aber nicht weiterführende und somit nutzlose Belehrung, wie gefährlich dies sei.

Phoenix66
Member
Member
Beiträge: 64
Registriert: 11. Okt 2007, 21:05
Wohnort: Gera/Thüringen

Beitrag von Phoenix66 » 22. Nov 2007, 16:33

ich möchte hier die Ausführungen des Scannerfreak noch berichtigen.
der oben angegebene Pfad: /etc/dev/rules ergibt über die Konsole aufgerufen
"NICHTS", da es den Ordner "dev" unter /etc/ garnicht gibt. Unter /etc/ sind bei mir nur die Ordner /etc/sane.d/ und der Ordner /etc/udev/ vorhanden, wo man
auch den Unterordner /rules.d/ finden kann. Die oben angeführten Scriptbefehle in der Konsole laufen bei mir alle ins Leere und ich ahne auch, warum. Auf den Befehl: /lsusb/ werden bei mir 3 erkannte Geräte angezeigt,
von denen nur der Drucker mit Ersatztreiber konfiguriert ist. Da es leider keinen Linuxtreiber für mein Gerät gibt, habe ich mir auch Ersatz besorgt,
aber diese Datei ist eine TAR.gz-Datei und kein rpm-Paket und deshalb konnte ich diese noch nicht dorthin befördern, wo sie hin soll. Zugriffs-und Schreibrechte sind freigeschaltet durch die Installation des NFS-Servers.
Nun suche ich noch Tipps und Hinweise, wie ich an mein Ziel, den Scanner zum Arbeiten zubewegen, komme. Wenn mir keiner helfen kann, so muß ich weiterhin alle Infos und Beiträge verfolgen, die neu geschrieben werden.
Mit den SANE-rpm-Paketen habe ich auch schon getestet, aber ohne Erfolg.

Gruß Phoenix66
AMD Athlon m. Duron CPU 1,1Ghz;768 MB RAM;
160 GB HDD;2 Partitionen mit Win XP Prof. und
OpenSuse 11.1 (KDE-Oberfläche);Drucker Brother DCP-135C;GraKA Nvidia GEforce2 MX/MX 400; Opera u. OPenOffice aktuell; Internet LAN
DSL 6000;weit. Details a. Anfrage

Benutzeravatar
Geier0815
Administrator
Administrator
Beiträge: 4349
Registriert: 14. Jun 2004, 09:12

Beitrag von Geier0815 » 22. Nov 2007, 17:32

http://wiki.linux-club.de/CheckInstall ist der Geheimtip um aus Sourcecodepaketen rpms zu erstellen.
Wenn Windows die Lösung ist...
kann ich dann bitte das Problem zurück haben?

Phoenix66
Member
Member
Beiträge: 64
Registriert: 11. Okt 2007, 21:05
Wohnort: Gera/Thüringen

Beitrag von Phoenix66 » 22. Nov 2007, 19:15

Geier0815 hat geschrieben:http://wiki.linux-club.de/CheckInstall ist der Geheimtip um aus Sourcecodepaketen rpms zu erstellen.
@Geier0815,

danke für deinen bekannten Hinweis. Leider bin ich erst seit Anfang Oktober
Opensuseuser und muß mich erstmal mit dem System besser vertraut machen. An diese Aktionen traue ich mich noch nicht heran. Vielleicht bekomme ich andere Hinweise zur Installation des markenbezogenen, aber
Modell unabhängigen, Entwicklerkits. Vor allem brauche ich den Systemordnerpfad, von wo der Zugriff auf die Hardware erfolgt. Sonst sagt mir die Konsole, wie so oft, Datei oder Verzeichnis nicht gefunden. Aus verschiedenen Gründen funktioniert die Befehlseingabe in der Konsole nicht.
Entweder wurde der Befehl nicht verstanden oder die gesuchten Dateien waren nicht dort, wo sie sein sollten.

Gruß ein weitersuchender Phoenix66

P.S. Ich vergaß noch hinzu zufügen, daß ich kein PC-Experte oder Programmierer bin und keine Scriptbefehle selbst erstellen kann.
AMD Athlon m. Duron CPU 1,1Ghz;768 MB RAM;
160 GB HDD;2 Partitionen mit Win XP Prof. und
OpenSuse 11.1 (KDE-Oberfläche);Drucker Brother DCP-135C;GraKA Nvidia GEforce2 MX/MX 400; Opera u. OPenOffice aktuell; Internet LAN
DSL 6000;weit. Details a. Anfrage

dduck313
Newbie
Newbie
Beiträge: 16
Registriert: 20. Apr 2005, 09:24

Re: Zugriffsberechtigungen bei Scannern

Beitrag von dduck313 » 24. Okt 2010, 16:50

Hallo,
nachdem ich mich lange Zeit geärgert habe, möchte ich hier meinen Lösungansatz kundtun: :irre:
Meinen SCSI-Scanner (HP 4c) habe ich mit YAST eingerichtet und ist in der Datei /dev/sg3 eingebunden. Man kann unter YAST einen Probescan laufen lassen und damit sicher gehen, dass SCSI-Karte und Scanner im System richtig erkannt und eingerichtet sind. Problem mit XSane ist, dass die Datei /dev/sg3 den Besitzer root/disk hat. Dadurch kann XSane nicht drauf zugreifen. Ändert man mit root-Rechten den Besitzer der Datei sg3 z.B. auf <name>/users, funktioniert der Zugriff; leider nur bis zum nächsten Neustart, bei dem das System die alten Besitzer wieder herstellt. :/

Die Lösung ging wie folgt in 2 Schritten:

1.: In YAST das Modul Benutzer öffnen und den/die Benutzer zusätzlich als Mitglied der Gruppe 'disk' eintragen.

2.: Einen Texteditor mit root-Rechten starten und die Datei /etc/udev/rules.d/50-udev.rules öffnen. Dort den Eintrag 'KERNEL=="sg*",...,MODE="600" suchen. Es kann z.B. auch 'MODE='640' drin stehen. Diese Zahl in '660' ändern, also MODE=660" . Dann die Datei abspeichern; die alte Version der Datei wird dabei als Sicherungsdatei angelegt.

Vielleicht kann jemand diese Modifikation noch entsprechend kommentieren bzw. verallgemeinern, damit das bei ähnlichen Fällen auch eine Lösung bietet.

Gruss und viel Erfolg !

th.giese
Hacker
Hacker
Beiträge: 308
Registriert: 16. Apr 2006, 13:32

Re: Zugriffsberechtigungen bei Scannern

Beitrag von th.giese » 16. Apr 2011, 12:00

Hallo,

bei der Installation von OpenSuse 11.4 mussten ich und einige andere User feststellen, dass es Probleme mit der Rechtevergabe bei SCSI-Scannern gibt. Scannen war nur als Root mögliche normale Usere hatten keine Rechte.
Nachdem ich nun ein wenig gegoogelt habe bin ich über den Befehl ls -l /dev/sg* darauf aufmerksam geworden, dass alle SCSI-Geräte entweder der Gruppe "disk" oder "cdrom" zugewiesen waren. Lediglich sg11, welches meinem Scanner zugewiesen ist, war Gruppe "root"
Ich habe dann einfach die ID des Scanners verändert und siehe da, nach dem Reboot war sg11 in der Gruppe "lp" Alle User der Mitglied in der Gruppe "lp" sind können nun problemlos scannen.
Bis dann
Thomas

Antworten