Dateirechte: Verständnisproblem?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
GregorS
Beiträge: 3173
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Dateirechte: Verständnisproblem?

Beitrag von GregorS » 15.03.2010 23:31:34

Hallo zusammen!

Ich möchte ein „Piep-Skript“ schreiben, das drei Töne unterschiedlicher Höhe auf /dev/tty0 ausgibt. Dauer und Tonhöhe stelle ich mit entsprechenden ANSI-Sequenzen ein. Das funktioniert auch, wenn ich das Skript als root aufrufe.
Allerdings soll das auch funktionieren, wenn der User, der es aufruft, nicht eingeloggt ist (z.B. wenn per cron gestartet) und nicht root ist.

Nach meinem Verständnis der Rechte sollte es funktionieren, wenn das Skript root gehört und sowohl für Eigentümer als auch Gruppe das S-Bit gesetzt ist. Ein 'ls -a' bringt folgendes Ergebnis:

Code: Alles auswählen

-rwsr-sr-x 1 root root  705 16. Mär 00:05 piep.sh
Trotzdem meckert das Skript beim Aufruf, dass der Aufrufende keine Schreibrechte auf /dev/tty0 hat. Warum? Hab’ ich’s nicht kapiert?

TIA+Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])

Benutzeravatar
GoKi
Beiträge: 2068
Registriert: 04.07.2003 23:08:56
Lizenz eigener Beiträge: MIT Lizenz

Re: Dateirechte: Verständnisproblem?

Beitrag von GoKi » 16.03.2010 00:48:28

setuid funktioniert nicht für Shell-Scripte. Aber kannst du nicht auch Debianbeep benutzen, statt direkt auf tty0 zu schreiben? beep ist ein "normales" binary mit gesetzten setuid.
MfG GoKi
:wq

Benutzeravatar
GregorS
Beiträge: 3173
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Re: Dateirechte: Verständnisproblem?

Beitrag von GregorS » 16.03.2010 00:57:36

Danke für den Hinweis! Das war mir echt neu. Ich installiere beep gerade und werde mal gucken, ob ich damit dieselben Effekte erzeugen kann wie mit meinem Skript gewollt.

Nur interessehalber: Hat es wg. SUID-Bit und Shellskripten irgendwann eine Änderung gegeben, die ich verpasst habe? Mich wundert, dass ich davon noch nichts wusste, obwohl ich GNU/Linux seit etwa ’96 kenne.

Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])

Antworten