visudo 編輯sudoers文件
1.命令功能
bisudo命令是專門用來編輯/etc/sudoers文件,同時提供語法檢查等功能。/etc/sudoes文件是sudo命令的配置文件。
2.語法格式
visudo option
選項說明
visudo –c 手動執行語法檢查
3.使用范例
范例1 執行sudo 對普通用戶cxf和joe授權。
范例1 執行sudo 對普通用戶cxf和joe授權。 [root@cxf home]# visudo #編輯配置文件 相當於vim /etc/sudoers文件 .... joe ALL=(ALL) #將joe提權為root身份 cxf ALL=(ALL) /usr/sbin/useradd,/usr/sbin/userdel #授權cxf可以以root身份添加或刪除用戶權限
分別對joe和cxf做不同的授權。
sudo 以另一個用戶身份執行命令
1.命令功能
通過sudo命令,可以讓普通用戶執行指定的命令或程序,擁有超級用戶的權限。細化不能命令授權的指定權限。
2.語法格式
sudo option
選項說明
選項 |
選項說明 |
-l |
列出當前用戶可以執行的命令。只有在sudoers文件中才能使用該選項 |
-h |
列出使用方法,並退出 |
-u |
已指定用戶的身份執行命令,后面跟除了root以外的其他用戶,可以是用戶名,也可以是uid。 |
-b |
在后台執行指定的命令 |
3.使用范例
查看哪些用戶可以配置了sudo
[root@cxf ~]# tail -l /etc/sudoers chu ALL=(ALL) /usr/sbin/useradd,/usr/sbin/userdel
范例1 chu賬號通過sudo命令,添加刪除賬號
添加賬號test1賬號
[chu@cxf ~]$ sudo passwd test1 更改用戶 test1 的密碼 。 新的 密碼: 無效的密碼: 過於簡單化/系統化 無效的密碼: 過於簡單 重新輸入新的 密碼: passwd: 所有的身份驗證令牌已經成功更新。 [chu@cxf ~]$ ls -l /home ...... drwx------ 3 test1 test1 4096 5月 21 02:15 test1
刪除test1賬號
[chu@cxf ~]$ userdel -r test1 bash: /usr/sbin/userdel: 權限不夠 [chu@cxf ~]$ sudo userdel -r test1
注:對於linux系統bash的內置命令,一般無法進行sudo授權,例如cd、echo
bash內置命令如下:
[, alias, bg, bind, break, builtin, caller, cd, command, compgen, complete, com-popt, continue, declare, dirs, disown, echo, enable, eval, exec, exit, export, false, fc, fg, getopts, hash, help, history, jobs, kill, let, local, logout, mapfile, popd, printf, pushd, pwd, read, readonly, return, set, shift, shopt, source, suspend, test, times, trap, true, type,typeset, ulimit, umask, unalias, unset, wait - bash built-in commands, see bash(1)