如何在 Ubuntu 上的 Linux 中查看系统用户如何在 Ubuntu 上的 Linux 中查看系统用户如何在 Ubuntu 上的 Linux 中查看系统用户如何在 Ubuntu 上的 Linux 中查看系统用户
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 上的 Linux 中查看系统用户

介绍

系统管理的一个基本部分是配置和管理用户和组。此任务的一部分涉及监视所有系统实体的登录功能。

在本教程中,您将回顾用户管理和身份验证日志记录背后的理念。

我们将在 Ubuntu 22.04 服务器上探索这些概念,但您可以在任何现代 Linux 发行版上继续学习。您可以按照我们的 Ubuntu 22.04 初始服务器设置指南为本教程设置 Ubuntu 22.04 服务器。

第一部分将介绍如何查看系统用户并找出谁登录了系统。

如何查看可用用户

Linux 系统上的每个用户,无论是作为真实人类的帐户创建的,还是与特定服务或系统功能相关联的,都存储在名为 /etc/passwd 的文件中。

/etc/passwd 文件包含有关系统用户的信息。每行描述一个不同的用户。

使用 less 命令查看一下,这样您就可以滚动浏览整个文件:

  1. less /etc/passwd
Output
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin . . .

每行被分解成字段。这些字段由冒号 (:) 字符分隔。

您目前唯一需要的字段是第一个字段。每个都是一个独立的用户名。使用完 less 后,按 q 退出。

您可以通过使用 cut 命令以冒号分隔符 (-d :) 进行拆分,而无需遍历整个 \/etc/passwd 即可获得此列表:

  1. cut -d : -f 1 /etc/passwd
Output
root daemon bin sys sync games . . .

您可能将 root 识别为管理用户。最后,您可能会看到您登录的用户。

在此期间,您可能会看到许多其他用户,他们的用法似乎至少有些清楚。例如,www-data 被配置为 Web 服务器进程的所有者。

这样做是为了分离功能特权。这样,如果帐户遭到泄露或滥用,影响将被隔离。

您可以在本教程中阅读有关 /etc/passwd 中的字段的更多信息。

如何查看可用组

发现系统组对应的文件是/etc/group。

您可以再次使用 less 查看此文件:

  1. less /etc/group
Output
root:x:0: daemon:x:1: bin:x:2: sys:x:3: adm:x:4: tty:x:5: disk:x:6: . . .

您可能会注意到许多组名反映了您在系统上发现的用户。这是称为用户私有组 或UPG 的配置方案的一部分。

用户私有组为每个用户创建一个私有组并将该组设置为主要组。 umask 然后从 022 更改为 002。

这允许通过设置一个名为 setgid 的标志在共享目录中提供更大的灵活性,该标志为目录内的文件提供与目录本身相同的组所有者。

再一次,您可以使用 cut 命令从 /etc/group 文件中删除信息:

  1. cut -d : -f 1 /etc/group
Output
root daemon bin sys adm tty disk . . .

输出将是系统上每个组的列表,每行一个。

如何查找哪些用户已登录

很多时候,找出哪些用户在您的系统上处于活动状态会更有用。

w 命令是列出所有当前登录用户、他们的登录时间以及他们当前正在运行的命令的直接方式:

  1. w
Output
19:37:15 up 5:48, 2 users, load average: 0.33, 0.10, 0.07 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 rrcs-72-43-115-1 19:15 38.00s 0.33s 0.33s -bash demoer pts/1 rrcs-72-43-115-1 19:37 0.00s 0.47s 0.00s w

第一行包含系统正常运行时间信息。以下几行描述了谁登录了。

提供类似信息的替代方法是 who:

  1. who
Output
root pts/0 2013-09-05 19:15 (rrcs-72-43-115-186.nyc.biz.rr.com) demoer pts/1 2013-09-05 19:37 (rrcs-72-43-115-186.nyc.biz.rr.com)

结论

Linux 上的用户身份验证是系统管理中一个相对灵活的领域。使用广泛可用的工具可以通过多种方式实现相同的目标。

您现在应该知道如何找出服务器存储其用户和组信息的位置。您还可以查看谁在任何给定时间登录。

在本教程系列的下一部分中,您将了解如何限制登录访问。

©2015-2025 艾丽卡 support@alaica.com