Geben Sie Nicht-Root-Benutzern Zugriff, um den mysqld-Dienst zu starten

Geben Sie Nicht-Root-Benutzern Zugriff, um den mysqld-Dienst zu starten

Ich habe einen Nicht-Root-Benutzer abcund möchte den Benutzern sudonur die Benutzerrechte erteilen restart, startz stop. mysqld serviceB. 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

verwandte Informationen