Pro-Linux

Pro-Linux Diskussions- und Hilfeforum
Aktuelle Zeit: 16. Nov 2018 10:17

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 22. Aug 2007 14:33 
hallo nochmal ;)

ich möchte gerne in einem shell-script auf den benutzer root wechseln, um mit den zugriffsrechten des selbigen arbeiten zu können.
problem ist jetzt nur, dass der befehl "su" eine eigene shell-instanz zu öffnen scheint. d.h. wenn ich in meinem script "su" benutze, erfolgt zunächst die passwortabfrage und danach erscheint eine blanke konsole mit dem user root. erst nachdem ich per "exit" die selbige beende, wird mein eigentliches script fortgesetzt.

das ist natürlich ziemlich blöd, da ich somit nicht innerhalb des scripts auf den user root wechseln kann.

ein weiteres problem ist, dass ich nicht bei allen usern "sudo" einsetzen kann, da einige user zugriffsrechtetechnisch nicht in der sudoers-liste enthalten sind - somit fällt die option "sudo" ja auch weg...

gibt es denn noch eine andere möglichkeit den benutzer während dem ablauf eines scripts zu wechselnß

tia.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 22. Aug 2007 15:49 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Du kannst su auch ein Kommando mitgeben, das dann ausgeführt wird. Also das Skript in zwei oder mehr Skripte aufteilen.

$ man su

Wenn man nur sicherstellen möchte, dass ein Skript immer als root läuft, kann auch einen Wrapper wie folgt bauen
Code:
#!/bin/sh
[ $UID != 0 ] && { su root -c "$0 $*" ; exit ; }

## Root-Skript
echo $UID
echo $1,$2,$3
echo $@
Ist was das Quoting der Eingabeparameter angeht noch nicht ganz perfekt, evtl reicht das aber schon.


Warum meinst du, sudo nicht einsetzen zu können? Sudo kann man sehr fein konfigurieren, man kann ganz genau festlegen, welcher Benutzer welches Programm ausführen darf.

$ man sudoers

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 23. Aug 2007 10:21 
erst einmal danke für die antwort!
Zitat:
Warum meinst du, sudo nicht einsetzen zu können? Sudo kann man sehr fein konfigurieren, man kann ganz genau festlegen, welcher Benutzer welches Programm ausführen darf.

$ man sudoers

Janka
naja, man kann zwar die sudoers bearbeiten, aber einige user sind absichtlich nicht dazu berechtigt den befehl sudo nutzen zu können. deshalb ist es bei diesen usern notwendig auf den user root zu wechseln. aufgrund dessen meinte ich, dass ich mit sudo nicht produktiv arbeiten kann, da das script für alle user gleich ablaufen soll. - und um alle user mit dem script abzudecken ist es somit nicht möglich sudo eunzusetzen.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 23. Aug 2007 13:21 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Hm. Du hast also Benutzer, die Admintätigkeiten mittels sudo ausführen, und Benutzer, die das nicht tun sollen.

Die übliche Lösung ist es, die Admin-Benutzer zusätzlich in die Gruppe "wheel" aufzunehmen und nur diese alle möglichen Kommandos als root ausführen zu lassen. Die anderen Benutzer dürfen nur das eine Skript mittels sudo als root ausführen. /etc/sudoers sieht dann so aus:
Code:
root           ALL = (ALL) ALL
%wheel         ALL = (ALL) ALL
ALL            ALL = (root) /usr/local/bin/komisches_script
Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 23. Aug 2007 13:29 
ich habe es jetzt einfach mit "su root -c" gelöst.

funktioniert problemlos. ich mache meine abfrage ob benutzer root ist oder nicht, und wenn nicht, dann wird automatisch su root -c ./script2.sh ausgeführt. :)


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de