跟踪Linux用户:他们何时登录以及登录多长时间?

通过几个命令和一两个脚本,就可以很容易地了解用户登录的频率和他们在Linux服务器上花费的时间。

Linux的命令行提供用于确定用户如何频繁登录多少时间,他们花费在系统上一些优秀的工具。从拉动信息在/ var /日志/ wtmp文件维护用户的登录信息文件可以是费时,但有几个简单的命令,你可以在用户登录提取很多有用的信息。

其中一个有用的命令是去年命令。它提供了一个可以追溯到很久以前的用户登录列表。输出是这样的:

去年美元| 5 |头tr - s”“无分/ 0 192.168.0.14结婚8月14日09:44仍然登录啦pts / 0 192.168.0.14结婚8月14日09:41 - 09:41(00:00)无分/ 0 192.168.0.14结婚8月14日09:40 - 09:41 (00:00)nemo分/ 1 192.168.0.18结婚8月14日09:38仍然登录啦pts / 0 192.168.0.14星期二8月13日06:15 - 18:18 (00:24)

注意,TR -s “”上面的命令的一部分将空格字符串简化为单个空格,在本例中,它使显示的输出不会太宽,以致于无法在这个web页面上进行包装。没有TR命令,即输出应该是这样的:

$最后|头-5 SHS PTS / 0 192.168.0.14星期三年08月14 9点44仍然记录在SHS PTS / 0 192.168.0.14星期三年08月14 9时41  -  9点41分(00:00)SHS PTS / 0 192.168.0.14星期三八月14 9点40  -  9点41分(00:00)尼莫PTS / 1 192.168.0.18星期三年08月14 9点38仍然记录在SHS PTS / 0 192.168.0.14星期三年08月14 09:15  -  9时40分(0点24分)

虽然很容易产生和审查登录活动的记录,像这些与所有用户去年命令或针对某个特定用户使用最后的用户名命令,而管,这些命令通常会导致一批量数据的。在这种情况下,对所有用户的列表将有908线。

$最后|厕所-l 908

登录计数与去年

如果你并不需要所有的登录细节,您可以查看用户登录会话的登录与这样的命令对系统上的所有用户的简单计数:

$用于“ls /home”中的用户;做回声-ne “$ USER \ t” 的;最后$用户|WC -1;DONE多萝西21鲂13鳗鱼29 jadep 124 JDOE 27 42服从跳尼莫9鲨17个SHS 423试验2 waynek 201

上面的列表显示了自当前以来每个用户已登录的次数在/ var /日志/ wtmp文件文件已启动。但是请注意,该命令生成它不依赖于用户帐户被设置在缺省的/ home目录。

这取决于您当前累积了多少数据wtmp文件文件,你可能会看到很多或相对较少的登录。为了更深入地了解登录次数的相关性,您可以将此命令转换为脚本,添加一个命令来显示当前文件中的第一次登录是何时发生的,从而提供一些视角。

#!/斌/庆典回声-n “登录,因为” 谁在/ var /日志/ wtmp文件|头-1 |AWK '{打印$ 3}' 回响 “=======================” 为用户在`LS / home`做回波-ne“$用户\吨“最后$用户|厕所-l完成

当您运行脚本,行“因为登录”将让你知道如何解释显示的统计数据。

自2018年10月5日=======================多萝西21鲂13鳗鱼29 jadep 124 JDOE 27 42服从跳尼莫9鲨$ ./show_user_logins登录17SHS 423试验2 waynek 201

查看累计登录时间AC

AC命令提供用户登录时间—登录时间的报告。与去年命令,AC自上次滚动以来的用户登录报告wtmp文件文件自AC, 喜欢去年,获取其从细节在/ var /日志/ wtmp文件。该AC但是,command提供的用户活动视图与登录次数大不相同。对于单个用户,我们可能会使用这样的命令:

ac nemo总计31.61美元

这就告诉我们,尼莫已经花了近32时间内登录中要使用命令生成的登录时间为所有用户的列表,你可以使用如下命令:

$用于“ls /home”中的用户;做交流$用户|sed的 “S /总/ $用户\吨/”;多萝西9.12鲂1.67 4.32鳗鱼做...

在此命令,我们将与相关用户名每行替换单词“总”。并且,只要用户名是少于8个字符,则输出将很好地排队。要左对齐的输出,你可以修改命令如下:

$用于“ls /home”中的用户;做交流$ user | sed“s / t / / ^ \”| sed“s /总/ $ user \ t /”;多萝西9.12多莉1.67鳗鱼4.32…

第一次使用sed的在命令中的该字符串剥掉初始标签。

把这个命令到一个脚本和显示该初始日期wtmp文件文件到更多的相关补充到小时数,你可以使用一个这样的脚本:

# !/bin/bash echo - n”小时在线自“谁/var/log/wtmp | 1 |头awk{打印3美元}的回声”= = = = = = = = = = = = = = = = = = = = = = = = = = = = = "为用户在ls /家庭的交流$ user | sed“s / t / / ^ \”| sed“s /总/ $ user \ t /”

如果您运行脚本,你会看到每个用户在的寿命呆在一起的时间wtmp文件文件:

$ ./show_user_hours小时在线自2018年10月5日=============================多萝西70.34鲂4.67鳗鱼17.05 jadep 186.04 JDOE28.20 11.49服从跳尼莫11.61鲨鱼13.04 SHS 3563.60测试1.00 waynek 312.00

此示例中的用户活动级别之间的差异非常明显,一个用户自10月以来仅在系统上花费一个小时,而另一个用户在系统上占主导地位。

包起来

查看用户登录系统的频率和他们在网上花费的时间,可以让您了解系统是如何使用的,以及谁可能是最频繁的用户。当然,登录时间不一定对应于每个用户完成的工作量,但它可能是关闭和命令,如去年AC可以帮助你识别最活跃的用户。

更多的Linux建议:桑德拉·亨利 -雷竞技投注下载 斯托克介绍了如何在这2分钟的Linux提示视频使用转命令

加入对网络世界的社有个足球雷竞技app区Facebook的LinkedIn对最重要的话题发表评论。
有关:

版权所有©2019Raybet2

IT薪资调查:结果是