用戶不在sudoers文件中的解決方法
在使用Linux系統過程中,通常情況下,我們都會使用普通用戶進行日常操作,而root用戶只有在權限分配及系統設置時才會使用,而root用戶的密碼也不可能公開。普通用戶執行到系統程序時,需要臨時提升權限,sudo就是我們常用的命令,僅需要輸入當前用戶密碼,便可以完成權限的臨時提升。在使用sudo命令的過程中,我們經常會遇到當前用戶不在sudoers文件中的提示信息,如果解決該問題呢?通過下面幾個步驟,可以很簡單的解決此問題。
1、切換到root用戶權限
Last login: Tue Sep 24 20:50:51 2013 from 192.168.30.171
[user@Compile ~]$ su root
密碼:
[root@Compile user]#
2、查看/etc/sudoers文件權限,如果只讀權限,修改為可寫權限
[root@Compile user]# ls -l /etc/sudoers
-r--r-----. 1 root root 4030 9月 25 00:57 /etc/sudoers
[root@Compile user]# chmod 777 /etc/sudoers
[root@Compile user]# ls -l /etc/sudoers
-rwxrwxrwx. 1 root root 4030 9月 25 00:57 /etc/sudoers
[root@Compile user]#
3、執行vi命令,編輯/etc/sudoers文件,添加要提升權限的用戶;在文件中找到root ALL=(ALL) ALL,在該行下添加提升權限的用戶信息,如:
root ALL=(ALL) ALL
user ALL=(ALL) ALL
說明:格式為(用戶名 網絡中的主機=(執行命令的目標用戶) 執行的命令范圍)
4、保存退出,並恢復/etc/sudoers的訪問權限為440
[root@Compile user]# chmod 440 /etc/sudoers
[root@Compile user]# ls -l /etc/sudoers
-r--r-----. 1 root root 4030 9月 25 00:57 /etc/sudoers
[root@Compile user]#
5、切換到普通用戶,測試用戶權限提升功能