[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Rechteproblem mit Scanner



Am Freitag, 22. April 2005 22:30 schrieb Andreas Pakulat:

> Kenn ich, nur grad bei mknod finde ich die Manpage schon recht
> OK... Aber ich weiss auch was ne Major, Minornummer ist und
> welche "Art" von Device ich wo brauche...

Damit hast du auch schon mein Problem erkannt. Ich kenn mich mit 
Major, etc. nicht aus und meine Erfahrung sagt mir, dass man bei 
grundlegenden Dingen nicht blind rumprobiert, da dann das ganze 
System nicht mehr funktionieren kann.

> > Ich habe das Modul sg in /etc/modules dazu geschrieben und
> > durch MAKEDEV sg wurde sg0 angelegt. Damit wird als root mit
> > scanimage -L auch der Scanner erkannt.
>
> Nur laden von sg reicht nicht aus?

Was meinst du mit "nur" laden?

> Dann schaetze ich mal dass 
> udev dass nicht hinbekommt (wahrscheinlich weil der Treiber nicht
> genug Infos fuer udev erzeugt)...

Fahre ich den Rechner ohne eingeschalteten Scanner hoch, dann 
fehlt /dev/sg0. Somit kann ich die Rechte "ewig" setzen. Nach einem 
Neustart gibt es also entweder kein sg0 oder ein neues.

Der Treiber zum Tekram DC395U-SCSI-Controller ist in 2.6 als 
"experimental" vorhanden. Den 2.4er-Kernel hatte ich gepatcht. 
AFAIR ist der Patch uralt und stammt aus 2002 und irgendwie scheint 
der Maintainer mit unverständlchen Problemen bei HD-SCSI 
anzustehen. MIT CDROM, Brenner und Scanner kann ich seit Jahren 
aber nicht klagen.

> > Damit es als User funktioniert musste ich
> > chown root:scanner /dev/sg0 ausführen.
>
> Ist klar...
>
> > Nach dem nächsten Neustart funktioniert es als User aber nicht.
> > Es muss wieder chown root:scanner /dev/sg0 vorher ausgeführt
> > werden. Ich vermute, dass sg0 nach jedem Neustart neu angelegt
> > wird und damit die Rechte wieder nicht so sind, wie ich möchte.
>
> ?? Das Device bleibt bestehen? Ok, kannst du mal bitte folgendes
> pruefen:
>
> ps -ef | grep udev

Scanner war beim Hochfahren nicht eingeschaltet:
ps -ef | grep udev
root      1048     1  0 14:10 ?        00:00:00 udevd

Nach einem Neustart mit eingeschaltetem Scanner:
ls -l /dev/sg0
crw-rw----  1 root root 21, 0 2005-04-23 14:16 /dev/sg0

ps -ef | grep udev
root      1048     1  0 14:15 ?        00:00:00 udevd

chown root:scanner /dev/sg0

ls -l /dev/sg0
crw-rw----  1 root scanner 21, 0 2005-04-23 14:16 /dev/sg0

Wie wäre es wenn ich die Gruppe Scanner in der Gruppe root eintrage? 
Wird das ein Sicherheitsproblem?

> Ich nehme an, dass udev laeuft und wenn er das Device korrekt
> anlegt (sprich nach einem Reboot ohne MAKEDEV das Device sg0
> existiert),

ja, existiert

> sollte es auch eine Moeglichkeit geben ihm 
> beizubringen welche Rechte auf dem Device gesetzt sein muessen.
> Aber da muss dir jemand anderes helfen (der udev-Maintainer ist
> IMHO sehr hilfsbereit), ich kenne mich nur rudimentaer mit udev
> aus.

Ich habe mich damit auch noch nie auseinandergesetzt.

> Andersrum, wenn das Device nicht neu angelegt wird, musst du eh
> ein init-Skript schreiben und dort das Device mit MAKEDEV
> anlegen. Da kannst du dann auch gleich das chown reinpacken.
> Wuerde in etwa so aussehen:
>
> #!/bin/sh
>
> case "$1" in
> 	start)
> 		MAKEDEV sg
> 		chown root:scanner /dev/sg0
> 		;;
> 	*)
> 		;;
> esac
>
> Einfach in eine Datei in /etc/init.d packen und mit
>
> update-rc.d <skriptname> start 20 2 3 4 5
> update-rc.d <skriptname> stop 20 1 6
>
> Die Symlinks anlegen (Kurzfassung: in Runlevel 2,3,4,5 wird das
> Skript gestartet in 1 gestoppt)

An so was habe ich auch schon gedacht.

Mich würde interessieren, ob nach diesem Posting nun gesagt werden 
kann, dass es ein udev-Problem ist, dann schicke ich dem Maintainer 
eine Mail.

Al



Reply to: