RHCE培训课堂实验-1 RHCE8课堂环境介绍
737RHCE上课的虚拟机环境介绍
查看全文全站搜索 公开课 学习资料 未分类
红帽系统管理1-学员练习册-06管理本地用户和组.pdf—P164
在本练习中, 您将练习切换到root帐户,以及以root身份运行命令。
目标:
使用sudo切换到root, 并以root身份访问交互式shell,而不必知道超级用户的密码。
解释su和su – 可以如何通过运行或不运行登录脚本来影响shell环境。
使用sudo以root身份运行其他命令。
练习准备工作:
以student用户身份并使用student作为密码登录workstation。
在workstation上,运行lab users-sudo start脚本来开始本练习。此脚本会创建必要的用户帐户和文件,以正确设置环境。
[student@workstation ~]$ lab users-sudo start
1 从workstation, 以student用户身份打开连接servera的SSH会话。
[student@workstation ~]$ ssh student@servera
2 探索student的shell环境。查看当前的用户和组信息,并显示当前的工作目录。此外,还要查看指定用户主目录的环境变量以及用户可执行文件的位置。
2.1 运行过来查看当前的用户和组信息。
2.2 运行pwd以显示当前的工作目录。
2.3 显示HOME和PATH变量的值,以分别确定主目录和用户可执行文件的路径。
[student@servera ~]$ id
[student@servera ~]$ pwd
[student@servera ~]$ echo $HOME
[student@servera ~]$ echo $PATH
3 在非登录shell中切换到root , 并探索新的shell 环境。
3.1 在shell提示符下运行sudo su, 变为root用户。
[student@servera ~]$ sudo su
3.2 运行过来查看当前的用户和组信息。
3.3 运行pwd 以显示当前的工作目录。
3.4 显示HOME和PATH变呈的值,以分别确定主目录和用户可执行文件的路径。
3.5 从root用户的shell退出,以返回到student用户的shell 。
[root@servera ~]# id
[root@servera ~]# pwd
[root@servera ~]# echo $HOME
[root@servera ~]# echo $PATH
[root@servera ~]# exit
注意:
如果您已有一些Linux和su命令相关的经验,您可能会预计到, 不带短划线(-)选项使用su来变为root会导致您保留student的当前PATH。这并未发生。正如您在下一步中所见,这也不是root 的正常PATH 。
发生了什么情况?差别在于您没有直接运行su。相反,您使用sudo以root身份运行了su, 因为您没有学握超级用户的密码。出于安全方面的原因,sudo命令最初覆盖来自初始环境的PATH。在初次覆盖之后运行的任何命令仍然可以更新PATH变量,您会在后续步骤中看到这一点。
4 在登录shell中切换到root, 并探索新的shell环境。
4.1 在shell 提示符下运行sudo su – ,变为root用户。
注意:
shell提示符与上—步中sudo su的相比的区别。
sudo可能会提示您输入student密码,也可能不提示,这取决于sudo的超时期限。默认的超时期限是五分钟。如果您在最近五分钟内通过sudo的身份验证, sudo不会提示您输入密码。如果自您通过sudo的身份验证起已超过五分钟,您需要输入student作为密码以通过sudo的身份验证。
4.2 运行过来查看当前的用户和组信息。
4.3 运行pwd以显示当前的工作目录。
4.4 显示HOME和PATH变虽的值,以分别确定主目录和用户可执行文件的路径。
4.5 从root 用户的shell 退出,以返回到student 用户的shell 。
[student@servera ~]$ sudo su -
[root@servera ~]# id
[root@servera ~]# pwd
[root@servera ~]# echo $HOME
[root@servera ~]# echo $PATH
[root@servera ~]# exit
如前—步中所见,在sudo重置了student用户shell环境设置的PATH变量后,su – 命令运行了root的shell登录脚本,并将PATH变量设置为另一个值。如果不带短划线(-)选项,su命令不会那么做。
5 验证operator1用户是否配置为可利用sudo以任何用户身份运行任何命令。
[student@servera ~]$ sudo cat /etc/sudoers.d/operator1
6 变为 operator1 ,再查看 /var/log/messages 的内容。将 /etc/motd 复制到 /etc/motdOLD , 并将它删除(/etc/motdOLD)。这些操作需要管理权限,因此请使用sudo以超级用户身份运行这些命令。不要使用sudo su或sudo su – 切换到root。使用redhat作为operator1的密码。
6.1 切换到operator1。
[student@servera ~]$ su - operator1
6.2 尝试查看/var/log/messages的最后五行,但不使用sudo 。这应该会失败。
[student@servera ~]$ tail -n5 /var/log/messages
6.3 尝试使用sudo来查看/var/log/messages的最后五行。这应该会成功。
[student@servera ~]$ sudo tail -n5 /var/log/messages
6.4 尝试为/etc/motd制作副本/etc/motdOLD, 但不使用sudo。这应该会失败。
[student@servera ~]$ cp /etc/motd /etc/motdOLD
6.5 尝试使用sudo来为/etc/motd制作副本/etc/motdOLD。这应该会成功。
[student@servera ~]$ sudo cp /etc/motd /etc/motdOLD
6.6 尝试删除/etc/motdOLD, 但不使用sudo。这应该会失败。
[student@servera ~]$ rm /etc/motdOLD
6.7 尝试使用sudo来删除/etc/motdOLD。这应该会成功。
[student@servera ~]$ sudo rm /etc/motdOLD
[student@servera ~]$ ls !$
6.8 从operator1用户的shell退出,以返回到student用户的shell。
6.9 从servera注销。
[student@servera ~]$
[student@servera ~]$
完成
在workstation上,运行lab users-sudo finish来完成本练习。此脚本将删除在练习开始时创建的用户帐户和文件,以确保环境清理干净。
[student@workstation ~]$ lab users-sudo finish
本引导式练习到此结束。
扫码添加教务-杨老师微信号,备注“红帽”,可免费领取实验环境和完整的PDF技术资料。