![可靠地获取物理(在电脑前面)登录用户的名称!](https://linux22.com/image/33791/%E5%8F%AF%E9%9D%A0%E5%9C%B0%E8%8E%B7%E5%8F%96%E7%89%A9%E7%90%86%EF%BC%88%E5%9C%A8%E7%94%B5%E8%84%91%E5%89%8D%E9%9D%A2%EF%BC%89%E7%99%BB%E5%BD%95%E7%94%A8%E6%88%B7%E7%9A%84%E5%90%8D%E7%A7%B0%EF%BC%81.png)
w
、who
、id
和whoami
被排除,因为它们仅提供有关使用 tty 的用户的信息。有没有办法从 KDM 中可靠地提取名称?
答案1
那么命令users
和呢last
?
用户
users - print the user names of users currently logged in to the current host
使用/var/run/utmp
和/var/log/wtmp
文件。
最后的
last, lastb - show listing of last logged in users
利用/var/log/wtmp
日志文件。显示用户上次登录的历史记录。
答案2
您可以使用身份验证日志来获取此信息。
CentOS5 的示例:aureport -l
另一种可能性是使用last
命令。
答案3
所有这些命令不会跟踪不使用 TTY 的用户。
神奇的命令是loginctl
(systemd)。