「Linux命令基础」查看用户和用户组状态
用户状态查看基础
了解当前系统用户状态是Linux系统管理的基本功。当多个用户同时登录系统时,管理员需要清楚谁在系统中、他们在做什么以及他们拥有什么权限。这些信息对于系统安全审计和故障排查都至关重要。
系统提供了多种命令来获取用户信息。whoami
简单直接,告诉你当前用户的身份;id
命令更详细,显示用户UID、GID以及所属的所有组;who
和w
命令则展示当前登录系统的所有用户,包括他们的登录时间和活动状态。掌握这些命令的组合使用,可以全面了解系统用户状态。
用户身份切换实战
使用su切换用户
su
命令是切换用户身份的基本工具。
任务要求:以root用户登录进行测试运行,①创建deng用户;②切换到deng用户并加载其环境变量;③查看当前的工作目录;④登出deng用户;⑤不加载环境变量的切换到deng用户;⑥再次查看当前的工作目录
useradd deng # ①创建deng用户
su - deng # ②切换到deng用户并加载其环境变量
[deng@localhost ~]$ pwd # ③ 查看当前的工作目录
# **运行结果示例**
# /home/deng
[deng@study ~]$ exit # ④登出deng用户
su deng # ⑤不加载环境变量的切换到deng用户
[deng@study root]$ pwd
# **运行结果示例**
# /root
功能解析:
su - deng
:完整登录到用户 deng 的会话,完整登录到用户 deng 的会话,完整登录到用户 deng 的会话。su deng
:完整登录到用户 deng 的会话,只切换用户身份(UID 和 GID),不加载目标用户的配置文件和环境变量,不改变当前工作目录
使用sudo授权特定命令
sudo
机制提供了更精细的权限控制,避免直接分享root密码:
任务要求:以root用户登录进行测试运行。①创建lina用户;②授权lina用户无需密码执行useradd命令;③切换到lina用户并加载其环境变量;④添加new_user用户;⑤查看/etc/passwd文件中new_user用户的信息。
useradd lina # ①创建lina用户# ②授权lina用户无需密码执行useradd命令
visudo
# 按`i`进入编辑模式,将光标移动在文件末尾,添加:
lina ALL