Linux sudoers: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „Mit der /etc/sudoers Datei kann man Programme/Berechtigunen für einzelne User geben, die dann mit Root-Rechten ausgeführt werden.<br> <br> Hier zwei Beispiele. …“ |
Keine Bearbeitungszusammenfassung |
||
| Zeile 12: | Zeile 12: | ||
Um Benutzern die Eingabe zu erleichten kann man einen Linux Alias erstellen. Dieser hat allerdings das Problem, dass er keine Parameter (das Verzeichnis) annimmt. <br> | Um Benutzern die Eingabe zu erleichten kann man einen Linux Alias erstellen. Dieser hat allerdings das Problem, dass er keine Parameter (das Verzeichnis) annimmt. <br> | ||
Daher muss man auf eine function() zurückgreifen:<br> | Daher muss man auf eine function() zurückgreifen:<br> | ||
<b>function sudorm() { sudo /bin/bash -c "/bin/rm -R $1"; };</b> | <b>function sudorm() { sudo /bin/bash -c "/bin/rm -R $1"; };</b><br> | ||
diese Funktion trägt man in die Datei <i>/etc/profile.d/sudorm.sh</i> ein | |||
Aktuelle Version vom 5. März 2015, 13:05 Uhr
Mit der /etc/sudoers Datei kann man Programme/Berechtigunen für einzelne User geben, die dann mit Root-Rechten ausgeführt werden.
Hier zwei Beispiele. einmal mit dem Löschen von Dateien in Verzeichnissen und einmal mit CHMOD
Cmnd_Alias HADOOPLOGS = /bin/bash -c /bin/rm -R /root/deleteme/\*
Cmnd_Alias CHMODHADOOP = /bin/chmod -R ??? /test/ ==> die ??? erlaubt chmod -R g+w /test/ oder chmod -R 777 /test/
%hadoop ALL=HADOOPLOGS
%hadoop ALL=NOPASSWD: CHMODHADOOP
Das Löschen von Dateien funktioniert nicht ohne extra die Shell anzugeben, deswegen steht der Befehl "/bin/bash -c" dort
Um Benutzern die Eingabe zu erleichten kann man einen Linux Alias erstellen. Dieser hat allerdings das Problem, dass er keine Parameter (das Verzeichnis) annimmt.
Daher muss man auf eine function() zurückgreifen:
function sudorm() { sudo /bin/bash -c "/bin/rm -R $1"; };
diese Funktion trägt man in die Datei /etc/profile.d/sudorm.sh ein