root的權限太大,要是人人都用root那也會亂套。
所以有了sudo,sudo可以使普通用戶去執行更高權限的命令
比如,默認的zabbix不具備重啓某服務的權限,那麼又想讓這個zabbix用戶去重啓nginx服務,那該咋辦?
解決辦法(之一):
1.使用root賬戶登錄
2.執行命令visudo (其實編輯的是/etc/sudoers)
3.在【root ALL=(ALL) ALL】這一行下面添加
zabbix ALL=(ALL) NOPASSWD:/usr/bin/systemctl restart nginx,/usr/bin/systemctl restart httpd
解釋:
NOPASSWD是免密
冒號後面的是可以執行的命令,多個命令用逗號分開。
這條命令的意思是讓用戶zabbix能夠使用sudo systemctl restart nginx和sudo systemctl restart httpd兩條命令。
4.按esc + : + x + 回車。---->即(按Esc鍵後,按英文的冒號,然後輸入x並回車)退出。