
Ich habe einen Nicht-Root-Benutzer abc
und möchte den Benutzern sudo
nur die Benutzerrechte erteilen restart
, start
z stop
. mysqld service
B. sudo service mysqld restart
. Wie mache ich das?
Ich würde dasselbe auch gerne mit der Benutzergruppe machen!!
Antwort1
Sie müssen die folgenden Zeilen in /etc/sudoers hinzufügen
dba01 ALL=/sbin/service mysqld start dba01 ALL=/sbin/service mysqld stop dba01 ALL=/sbin/service mysqld Neustart
Diese Konfiguration ermöglicht dem Benutzer dba01, alle drei Befehle auszuführen.
Hier ist nun die Ausgabe
[dba01@APP01 root]$ sudo /sbin/service mysqld neu starten [sudo] Passwort für dba01: mysqld wird heruntergefahren: [ OK ] mysqld wird gestartet: [ OK ]
Wenn Sie versuchen, einen anderen Dienst auszuführen
[dba01@APP01 root]$ sudo /sbin/service ip6tables neu starten Entschuldigung, Benutzer dba01 darf „/sbin/service ip6tables restart“ nicht als Root auf APP01 ausführen.
Antwort2
Wenn Sie der Gruppe die Berechtigung erteilen, auszuführen sudo service
, erhalten Sie die Berechtigung, alle Dienste neu zu starten. Ich würde ihnen einfach Zugriff auf das Init-Skript gewähren.
Sie können dies tun, indem Sie der sudoers-Datei die folgende Zeile hinzufügen
%groupName ALL=(ALL) NOPASSWD: /etc/init.d/mysql
Dann sollten die Gruppenmitglieder in der Lage sein,
sudo /etc/init.d/mysql restart
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql restart