Sie sind nicht angemeldet.

1

29.05.2009, 12:06

Acpi Skript wird mit Fn+F5 nicht ausgeführt

Hallo,

mit meinen bescheidenen Skriptfähigkeiten habe ich mir ein kleines Skript zusammengebastelt, dass BlueTooth an meinem Laptop per Fn+F5 ein- und ausschalten soll.

Hier erst mal das Skript:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/bash
INFO=/proc/acpi/ibm/bluetooth
STATE=`cat $INFO | grep status| awk '{print $2}'`
case "$STATE" in
   	enabled)
   	echo -n "disable" > $INFO
   	/etc/init.d/bluetooth stop
;;
   	disabled)
   	/etc/init.d/bluetooth start
   	echo "enable" -n > $INFO

;;
   	*)
   	echo "usage: disable, enable"
esac


Wenn ich nun mit der Konsole und als root das Skript ausführe, funktioniert das ganze recht gut. Doch wenn ich das Skript in der /etc/acpi/events/datei angebe und acpid neustarte, passiert nichts.

ein
#tail /var/log/messages ergibt dabei

Quellcode

1
2
May 29 11:58:42 localhost acpid: executing action "/etc/actions/bt_toggle.sh "
May 29 11:58:42 localhost acpid: action exited with status 127


Das Skript wird als schon von acpid aufgerufen aber kann nicht abgearbeitet werden.
Soweit ich das herausbekommen konnte bedeutet der Exit Status 127, dass Befehle nicht gefunden wurden.
Das deutet für nicht ja darauf hin, dass das Ganze irgendwie an den Berechtigungen hängt (es sind ja immer irgendwie die Berechtigungen) und acpid nicht als root läuft und acpid keinen Zugriff auf die Befehlt hat.

Wie kann ich nun rausbekommen mit welchen Benutzerberechtigungen acpid läuft und an welchen Berechtigungen ich schrauben muss um das ganze hinzubekommen.
Oder kann mir jemand noch einen anderen Ansatz aufzeigen, wie ich solch ein Skript zum laufen bekomme??

Mit freundlichen Grüßen und vielen Dank im vorraus

2

30.05.2009, 10:22

versuchs mal damit :

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Für Bluetooth die Datei /etc/acpi/events/fnf5 erstellen mit folgendem Inhalt:

event=ibm/hotkey HKEY 00000080 00001005
action=/etc/acpi/ibm_bluetooth

Die Datei /etc/acpi/ibm_bluetooth enthält:

#!/bin/bash
bluetooth=`head -n 1 /proc/acpi/ibm/bluetooth | awk '{print $2}'`
case "$bluetooth" in
    disabled)
        sh -c "echo "enable" > /proc/acpi/ibm/bluetooth"
        ;;
    enabled)
        sh -c "echo "disable" > /proc/acpi/ibm/bluetooth"
        ;;
esac
exit 0



Quelle
Intel core 2 duo E6600
XFX Geforce 7950 gt
4096 MB DDR2
Intel DP35DP