‘uptime’的“users”字段是如何计算的?

‘uptime’的“users”字段是如何计算的?

对我来说,uptime产生了 9 个用户,但是

ps -Af | cut -f1 -d' ' | sort | uniq | wc -l产量 14。

我不太确定 9 是从哪里来的。

在我下结论之前,请告诉我你们是否没有这样的差异。

答案1

您正在比较苹果和橙子。

ps将列出正在运行的进程。然后,您将获得拥有唯一进程的用户 ID 的计数。

uptime将报告登录的用户。通过使用 utmp.更多详情请参见https://github.com/coreutils/coreutils/blob/master/src/uptime.c#L177

因此,下面将重点介绍输出的比较。

# uptime
 16:52:37 up 30 days, 23:32,  1 user,  load average: 0.04, 0.04, 0.05
# w
 16:57:33 up 30 days, 23:37,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
steve    pts/0    cpc79909-stkp12- 16:50    5.00s  0.07s  0.28s sshd: steve [priv]
#


# ps -Af | cut -f1 -d' ' | sort | uniq | wc -l
7
# ps -Af | cut -f1 -d' ' | sort | uniq
chrony
dbus
polkitd
postfix
root
steve
UID
#

相关内容