** is not in the sudoersfile. This incident will bereported.”
(用戶不在sudoers文件中……)
處理這個問題很簡單,但應該先理解其原理再操作
首先要明白root的密碼一般用戶是不應改知道的,但一般用戶有時可能要用到root的一些權限。
這裏就有了一個 /etc/sudoers文件,用來保存一些用戶,使這些用戶可以通過sudo命令來暫時獲取root的權限。這些用戶使用sudo時輸入的密碼是當前用戶密碼,而不是root密碼。還可一在sudoers文件裏限制一般用戶的權限,這樣就有了安全保證。
現在要讓jack用戶獲得sudo使用權
1.切換到超級用戶root
$su root
2.查看/etc/sudoers權限,可以看到當前權限爲440
$ ls -all /etc/sudoers
-r--r----- 1 root root744 6月 8 10:29/etc/sudoers
3.更改權限爲777
$chmod 777/etc/sudoers
4.編輯/etc/sudoers
$vi /etc/sudoers
5.在root ALL=(ALL:ALL) ALL 下面添加一行
jack ALL=(ALL)ALL
然後保存退出。
第一個ALL是指網絡中的主機,我們後面把它改成了主機名,它指明jack可以在此主機上執行後面的命令。
第二個括號裏的ALL是指目標用戶,也就是以誰的身份去執行命令。
最後一個ALL當然就是指命令名了。
具體這裏不作說明
6.把/etc/sudoers權限改回440
$chmod 440 /etc/sudoers
7.操作完成,切換到jack用戶測試一下