
我有一個非 Root 用戶abc
,只想授予該用戶sudo
權限restart
,start
或stop
- mysqld service
。 IE sudo service mysqld restart
。我怎樣才能這樣做呢?
我也想對用戶群組做同樣的事情!
答案1
您需要在 /etc/sudoers 中新增以下行
dba01 ALL=/sbin/service mysqld 啟動 dba01 ALL=/sbin/service mysqld 停止 dba01 ALL=/sbin/service mysqld restart
此配置將允許 dba01 使用者執行所有三個命令。
現在這是輸出
[dba01@APP01 root]$ sudo /sbin/service mysqld restart [sudo] dba01 的密碼: 關閉 mysqld:[確定] 啟動mysqld:[確定]
如果您嘗試執行任何其他服務
[dba01@APP01 root]$ sudo /sbin/service ip6tables restart 抱歉,使用者 dba01 不允許在 APP01 上以 root 身分執行「/sbin/service ip6tables restart」。
答案2
授予允許該群組運行的權限sudo service
,將授予他們重新啟動任何服務的權限。我只是授予他們訪問初始化腳本的權限。
您可以透過將以下行新增至 sudoers 檔案來完成此操作
%groupName ALL=(ALL) NOPASSWD: /etc/init.d/mysql
然後群組成員應該能夠運行
sudo /etc/init.d/mysql restart
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql restart