Wie werde ich root???

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
flinkflash
Beiträge: 17
Registriert: 01.07.2003 22:56:16

Wie werde ich root???

Beitrag von flinkflash » 11.06.2004 20:56:54

Servus,

ich benötige Zugriff auf Ports der RS232 Schnittstelle. Diesen Bereich reservier ich mit ioperm(). Mit out* usw. schreib ich dann einzelne Bits. Dies geht allerdings nur als root. Jetzt meine Frage. Kann ich zu Anfang meines Progs irgendwie SuperUser Rechte erlangen??? Ich entwickle mit KDevelop3 und würde damit auch gerne debuggen.

cu+thx
flinkflash

http://www.krabbelbot.de

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 12.06.2004 15:16:28

Du musst das Programm SUID root machen (chown root Programmname && chmod 4755 Programmname), dann kann es jeder aufrufen, und es läuft als root. Du kannst auch eine Gruppe speziell dafür einrichten, die entsprechenden User in diese Gruppe packen und dann die Permission auf 4750 root:Gruppe setzen, dann können nur die Gruppenmitglieder das Programm ausführen.

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 12.06.2004 15:31:54

Allerdings wird das Setuid-Bit gelöscht, wenn du es neu kompilierst.
Du könntest aber ein Shellskript, dass die Datei aufruft, SetUID machen, das sollte dann gehen; allerdings weiss ich nicht, ob gdb (der Debugger, den auch KDevelop benutzt) das mitmacht

Antworten