“ last”命令的输出


17

有人可以解释一下last命令输出的最后一列是什么意思吗?我对reboot伪用户的意义特别感兴趣。

reboot   system boot  2.6.32-28-generi Sat Feb 12 08:31 - 18:09 (9+09:37)   

9 + 09:37是什么意思?

Answers:


18

rebootshutdown分别是用于系统重新引导和关闭的伪用户。这就是将信息(内核版本记录到同一位置)而不为wtmp二进制文件创建任何特殊格式的机制。

引用自man wtmp

wtmp文件记录所有登录和注销。它的格式完全相同,utmp只是用户名为空表示在关联的终端上注销。此外,~带有用户名的终端名称shutdownreboot表示系统关闭或重新引导,并且一对终端名称| /  }date(1)更改时记录旧/新系统时间。

wtmp二进制文件不保存时间戳记,而是保存事件。例如,last计算其他内容,例如登录时间。

reboot   system boot  2.6.32-28-generi Mon Feb 21 17:02 - 18:09  (01:07)    
...
user     pts/0        :0.0             Sat Feb 12 18:52 - 18:52  (00:00)    
user     tty7         :0               Sat Feb 12 18:52 - 20:53  (02:01)    
reboot   system boot  2.6.32-28-generi Sat Feb 12 08:31 - 18:09 (9+09:37)   

最后一列(括号中)是事件的长度。对于用户而言reboot,这是正常运行时间。

最近一次重启后,时间就是当前的正常运行时间。对于较早的重新启动,时间是重新启动后的正常运行时间(因此,在我的示例的最后一行中,直到第一行为止都是正常运行时间;在此之间没有重新启动)。+之前的数字表示天数。在最后一行中,是9天9小时37分钟,在第一行中,当前正常运行时间是1小时7分钟。

但是请注意,此时间并不总是准确的-例如,在系统崩溃和异常重启序列之后。last将其计算为它与下次重新启动/关闭之间的时间。


我很好奇,last | grep -i shutdown什么也不会返回。
phunehehe 2011年

谢谢,帖子很有见识,并回答了问题。
Andrea Spadaccini 2011年

命令tuptime -t具有清晰的输出,并且等效于此目的。
Rfraile
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.