• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Modul per Script und Desktopsymbol starten, SUSE11

Paul61

Newbie
Hallo,
bin ein dummuser und finde leider den Wald vor Bäumen nicht.

Ich habe einen SCSI Scanner, der erstmal auch funktioniert wenn dieser beim booten eingeschaltet ist.
Wird er allerdings erst später eingeschaltet, so funktioniert er nicht, laut dmesg oder sane-find-scanner wird das Gerät nicht gefunden.

Jetzt kann ich auf der Konsole das erforderliche Modul entfernen, wieder neu starten und der Scanner funktioniert
modprobe -r atp870u
modprobe atp870u.

Nun wollte ich diesen Vorgang mit einem Script über ein Desktopicon ausführen lassen und habe einfach folgende Datei "scanner.sh" geschrieben:
#! /bin/sh
modprobe -r atp870u
modprobe atp870u

Leider klappt das so nicht, von der Konsole aus funktioniert es aber (./scanner.sh).

Was mache ich falsch?
Oder kann man das Modul anders automatisch starten lassen wenn der Scanner eingeschaltet wird?
 

Jägerschlürfer

Moderator
Teammitglied
soweit ich weiss musst du bei der Verknüpfung noch angeben, dass das ganze in der Konsole ausgeführt werden soll.
Musst mal bei den Verknüpfungseigenschaften schauen.
 

Appleonkel

Hacker
In der Konsole als root und über das Desktopicon als User?
AFAIK funktioniert modprobe bloss als root, wenn man die Rechte nicht geändert hat.
Ich würde modprobe in die /etc/sudoers eintragen und das ganze dann mit sudo aufrufen
apple_wink.gif
 
OP
P

Paul61

Newbie
In der Konsole als root und über das Desktopicon als User?
AFAIK funktioniert modprobe bloss als root, wenn man die Rechte nicht geändert hat.
Ich würde modprobe in die /etc/sudoers eintragen und das ganze dann mit sudo aufrufen

In der Konsole als su geht es ja.
Deshalb wollte ich für normalo ja ein Script bemühen oder eine andere Lösung wäre vielleicht noch besser.
Leider habe ich noch keine Ahnung in der Scriptprogrammierung und hoffte hier einen Lösungsvorschlag oder Tip zu bekommen.
 

Appleonkel

Hacker
Der Tipp war, dass der User es als root ausführt dazu muss es in die /etc/sudoers eingetragen werden.
http://wiki.linux-club.de/opensuse/Kontrolliertes_Ausfuehren_von_Befehlen_als_root
 
→ Ist das Skript überhaupt ausführbar? ←

Eine (etwas schlichte) Möglichkeit wäre, das Ganze über 'kdesu konsole /pfad/zum/skript'¹ laufen zu lassen, d.h. die Berechtigungen für die Ausführung der Aufgabe zu belassen (von sowas bin ich eh kein Freund) und eine stinknormale root-Passwortabfrage einzubauen.

Setzt allerdings voraus, dass der user das root-pw hat.

¹Bezieht sich auf KDE.
 
OP
P

Paul61

Newbie
Der Tipp war, dass der User es als root ausführt dazu muss es in die /etc/sudoers eingetragen werden.
http://wiki.linux-club.de/opensuse/Kont ... n_als_root

Habe ich gemacht, wenn ich in der Konsole "sudo ./scanner.sh" aufrufe funktioniert es.
Wie bekomme ich jetzt die Vernüpfung auf dem Desktop hin, damit dieses Script ausgeführt wird, ohne dass ich eine Konsole öffnen muss?
Sicherlich, im Eigenschaftenfenster unter Befehl z.B. 'konsle sudo ./scanner.sh'?
Nur das funktioniert so nicht, Konsole geht zwar auf aber mehr auch nicht.
 
OP
P

Paul61

Newbie
Habe das Problem jetzt folgendermaßen gelöst:

1. Mit visudo dem User "user1" die ausführung von "modprobe" und dem Script "scanner.sh" erlaubt.

user1 ALL = (root) NOPASSWD: /sbin/modprobe,/home/user1/scripte/scanner.sh ""

2. In "scanner.sh" steht folgendes:

#!/bin/bash
sudo modprobe -r atp870u
sudo modprobe atp870u

3. für das Desktopsymbol (kooka) den Befehl folgendermaßen angepasst:
/home/user1/scripte/scanner.sh ; kooka %i %m %U



paul
 
Oben