說明:本文爲老男孩linux培訓某節課前考試試題及答案分享博文內容的一部分,也是獨立成題的,你可以點下面地址查看全部的內容信息。
http://oldboy.blog.51cto.com/2561410/791245
特別說明:答題的思路技巧可能比做題本身更重要,這也是老男孩特別教導學生的學習方法。
7.執行下面命令時發現提示需要輸入密碼,請問提示輸入的密碼是哪個用戶的密碼。
[test@oldboy ~]$ sudo su - oldboy
解答:
當前執行命令test帳戶的密碼。
相關說明見下表:
實際命令 |
命令說明 |
su - |
該命令是真正用戶角色轉換命令(默認是切到root),輸入的是root密碼。 |
sudo su - |
該命令是通過sudo權限進行角色轉換(默認是切到root),輸入的是執行命令當時賬號的密碼,非root密碼。 |
sudo su - oldboy |
該命令實際意思是通過sudo,以root的權限,進行su - oldboy用戶切換,因此需要輸入的是執行命令當時賬號的密碼,和sudo ls /root是一樣的。 |
案例實踐:
[root@oldboy oldboy]# useradd lifan #添加用戶lifan
[root@oldboy oldboy]# passwd lifan #設置密碼123456
Changing password for user lifan.
New UNIX password:
BAD PASSWORD: it is too simplistic/systematic
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@oldboy oldboy]# useradd oldboy #添加用戶oldboy
[root@oldboy oldboy]# passwd oldboy #設置密碼09876
Changing password for user oldboy.
New UNIX password:
BAD PASSWORD: it is too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@oldboy oldboy]# visudo #編輯sudo文件在結尾加入如下行,使得oldboy可以通過root權限執行任務(具體意思後文會詳細講。)
oldboy ALL=(ALL) ALL
[root@oldboy oldboy]# su - oldboy #切到oldboy用戶下。
[oldboy@oldboy ~]$ whoami
oldboy
[oldboy@oldboy ~]$ sudo su - lifan #本題的考試
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
Password: #先輸入lifan的密碼,123456
Sorry, try again.#提示密碼不對。
Password: #在輸入oldboy的密碼,09876,沒有在報錯。
[lifan@oldboy ~]$ whoami
lifan
sudo還可以更細粒度的控制權限,已經做了介紹,請大家自行總結。※
另外,文件及目錄權限課程中我們講解了setuid,setgid,粘滯位,也可以設置普通用戶提升權限控制。
具體細節請參考:
《老男孩linux實戰培訓教案-Linux 文件和目錄的屬性及權限教案》
《老男孩linux實戰培訓教案-su與sudo的技術詳解指南》
《老男孩linux實戰培訓教案-linux/unix系統集權分治的嚴格權限分級解決方案精華案例》