如何查询上次 Ubuntu 重启的日期和时间?

举报
wljslmz 发表于 2025/10/22 10:55:17 2025/10/22
【摘要】 在 Ubuntu 系统中,有时我们需要了解系统上次重启的日期和时间。这在系统管理、故障排除和日志审计中尤为重要。本文将详细介绍多种方法来查询上次 Ubuntu 重启的时间,并解释每种方法的背后原理。 1. 通过 uptime 命令查询系统运行时间uptime 命令可以显示系统已经运行的时间。这是最快速且最简单的方法之一。uptimeuptime 命令的输出通常如下所示: 12:34:56 u...

在 Ubuntu 系统中,有时我们需要了解系统上次重启的日期和时间。这在系统管理、故障排除和日志审计中尤为重要。本文将详细介绍多种方法来查询上次 Ubuntu 重启的时间,并解释每种方法的背后原理。

1. 通过 uptime 命令查询系统运行时间

uptime 命令可以显示系统已经运行的时间。这是最快速且最简单的方法之一。

uptime

uptime 命令的输出通常如下所示:

 12:34:56 up 5 days,  4:23,  3 users,  load average: 0.03, 0.02, 0.00
  • 12:34:56:当前时间
  • up 5 days, 4:23:系统已经运行的时间,具体为5天4小时23分钟
  • 3 users:当前登录的用户数量
  • load average: 0.03, 0.02, 0.00:系统的负载平均值

通过减去系统运行时间,可以推算出系统的重启时间。

假设当前时间为 2024-05-21 12:34:56,系统已经运行 5 days, 4:23

重启时间为:2024-05-21 12:34:56 - 5 days 4:23

使用 Python 脚本计算:

from datetime import datetime, timedelta

current_time = datetime.strptime("2024-05-21 12:34:56", "%Y-%m-%d %H:%M:%S")
uptime = timedelta(days=5, hours=4, minutes=23)

reboot_time = current_time - uptime
print("Reboot time:", reboot_time)

输出结果:

Reboot time: 2024-05-16 08:11:56

2. 使用 last 命令查看系统重启日志

last 命令可以显示最近的登录和重启事件。

last reboot
reboot   system boot  5.4.0-104-generic Fri May 16 08:11 - 12:34  (5+04:23)
  • reboot:事件类型
  • system boot:系统启动
  • 5.4.0-104-generic:内核版本
  • Fri May 16 08:11:重启时间
  • 12:34:当前时间
  • (5+04:23):系统运行时间

3. 通过 who 命令检查系统启动时间

who 命令带有 -b 选项可以显示系统的启动时间。

who -b
system boot  2024-05-16 08:11
  • system boot:系统启动
  • 2024-05-16 08:11:系统启动时间

4. 查看系统日志文件获取重启时间

系统日志文件中也记录了系统的启动和重启信息。

journalctl --boot
-- Logs begin at Fri 2024-05-16 08:11:34 UTC, end at Fri 2024-05-21 12:34:56 UTC. --
May 16 08:11:34 hostname kernel: Linux version 5.4.0-104-generic (buildd@lgw01-amd64-058) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #117-Ubuntu SMP Fri Apr 16 02:36:12 UTC 2024 (Ubuntu 5.4.0-104.117-generic 5.4.105)

5. 使用 systemd 工具查询重启时间

systemd-analyze 命令可以显示系统的启动时间。

systemd-analyze
Startup finished in 1.234s (kernel) + 2.345s (userspace) = 3.579s 
graphical.target reached after 2.456s in userspace
  • 1.234s (kernel):内核启动时间
  • 2.345s (userspace):用户空间启动时间
  • 3.579s:总启动时间

6. 编写脚本自动记录和查询重启时间

可以编写脚本自动记录重启时间,便于查询。

#!/bin/bash

logfile="/var/log/reboot_time.log"
if [[ ! -f $logfile ]]; then
  sudo touch $logfile
  sudo chmod 666 $logfile
fi

reboot_time=$(who -b | awk '{print $3, $4}')
echo "Last reboot time: $reboot_time" | sudo tee -a $logfile

7. 使用图形界面工具查询重启时间

对于不习惯使用命令行的用户,可以使用图形界面工具。

  1. 打开 GNOME 系统监视器。
  2. 导航到“资源”选项卡。
  3. 在“系统”部分查看“启动时间”。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。