说明:本文为老男孩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系统集权分治的严格权限分级解决方案精华案例》