如何用last命令查看系统重启记录?

在Linux系统中,查看开关机记录是系统维护、故障排查和安全审计的重要操作,以下是几种权威可靠的方法,适用于大多数Linux发行版(如Ubuntu、CentOS、Debian等),操作前请确保具备root权限或使用sudo命令。
last 命令读取 /var/log/wtmp 文件,记录所有登录、重启和关机事件。

last -x | grep -E "reboot|shutdown"
  • 输出解读
    • reboot 行:系统启动时间(如 reboot system boot 5.4.0-xx ... 表示启动时间)。
    • shutdown 行:系统关闭时间(如 shutdown system down ... 表示关机时间)。
    • 第一列为事件类型,最后一列为持续时间(关机事件无持续时间)。

查看系统日志文件

系统日志是官方推荐的权威记录源,路径因发行版而异:

  1. 通用日志路径(需root权限):
    sudo grep -E "systemd: Shutting down|systemd: Starting up|kernel: Power down" /var/log/syslog*
  2. 针对使用 journalctl 的系统(如Systemd):
    journalctl --list-boots  # 列出所有启动会话(显示启动时间戳和会话ID)
    journalctl -b -0         # 查看当前启动的日志(-b后接启动ID,-0表示当前)
    journalctl -u systemd-shutdownd  # 查看关机服务日志

使用专用命令获取启动时间

  1. 查看最后一次启动时间
    who -b  # 输出示例:system boot  2025-06-20 09:15
  2. 查看系统运行时长(推算启动时间):
    uptime -s  # 输出精确启动时间(如 2025-06-20 09:15:32)

直接解析二进制日志文件

原始日志文件需专用工具解析:

  • /var/log/wtmp:存储历史登录和重启记录(用 last 命令解析)。
  • /var/run/utmp:存储当前登录信息(重启后重置)。
  • 使用 utmpdump 工具直接查看:
    sudo utmpdump /var/log/wtmp | grep -E "reboot|shutdown"

注意事项

  1. 权限要求:查看日志需 rootsudo 权限。
  2. 日志轮转:日志文件可能被压缩或删除(如 wtmp.1.gz),使用 zcatzless 查看。
  3. 时间校准:确保系统时区正确(使用 timedatectl 检查)。
  4. 安全审计:完整开关机记录可用于追踪异常行为(如非授权重启)。

总结建议

  • 快速查看:用 last -xwho -b
  • 深度分析:结合 journalctl 和系统日志。
  • 关键文件:备份 /var/log/wtmp/var/log/syslog 避免丢失记录。

引用说明:本文方法参考 Linux 官方文档(kernel.org)、man 手册(如 man lastman journalctl)及 Systemd 开发者指南(freedesktop.org),确保内容符合 Linux 运维最佳实践。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/10130.html

(0)
酷番叔酷番叔
上一篇 2025年8月9日 12:31
下一篇 2025年8月9日 13:13

相关推荐

  • 如何在电脑上安装Linux系统?

    在电脑上安装Linux系统是许多用户探索开源世界、提升系统自由度的重要步骤,无论是开发、办公还是日常使用,Linux都能提供稳定且可定制的体验,安装Linux系统主要有三种常见方式:虚拟机安装(不破坏原系统)、双系统安装(与Windows等系统并存)以及U盘单系统安装(完全替换原系统),以下是详细步骤和注意事项……

    2025年8月26日
    3500
  • 如何在linux安装redis

    Linux中安装Redis,可以通过包管理器(如apt或yum)安装

    2025年8月15日
    3200
  • 如何找到linux内核

    过系统文件路径查找,如在终端输入“find / -name ‘vm

    2025年8月14日
    2700
  • Linux下怎么快速轻松查看U盘符

    命令行工具查看(推荐)lsblk 命令(最常用) lsblk输出示例:NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 238.5G 0 disk├─sda1 8:1 0 512M 0 part /boot/efi└─sda2 8:2 0 238G 0 part……

    2025年7月16日
    5700
  • Linux编译为何离不开强大工具链?

    编译的核心步骤代码编译分为四个阶段,以C语言为例(使用GCC编译器):预处理(Preprocessing)处理宏定义、头文件包含和条件编译,命令:gcc -E source.c -o source.i生成:.i 文件(展开后的纯代码),编译(Compilation)将预处理后的代码转换为汇编语言,命令:gcc……

    2025年7月27日
    4000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信