HOME

last命令自动化脚本编写

在Linux环境中,last 命令是一个非常有用的工具,用于查看系统中登录的历史信息。为了便于日常管理和审计,可以编写一个简单的自动化脚本来定期执行 last 命令并保存结果到指定文件中。

目标

  1. 记录用户登录历史:使用 last 命令获取最近的登录记录。
  2. 定期自动更新日志:通过定时任务(如cron)确保日志文件保持最新。
  3. 数据持久化存储:将每次执行的结果写入到一个文本文件中。

使用工具

脚本示例

以下是一个简单的Shell脚本,用于自动执行 last 命令并将结果保存到指定文件:

#!/bin/bash

# 定义变量
LOG_FILE="/var/log/last_login.log"
TODAY=$(date +%Y-%m-%d)

# 执行last命令并重定向输出
echo "Login history for $TODAY:" >> $LOG_FILE
last >> $LOG_FILE

脚本解释

  1. 变量定义

  2. 执行命令并重定向输出

定期执行

为了确保脚本定期自动运行,可以使用 cron 来配置定时任务。

配置Cron Job

  1. 打开crontab编辑器:

    crontab -e
    
  2. 添加如下行以每小时执行一次脚本:

    0 * * * * /path/to/your_script.sh > /dev/null 2>&1
    

    注意将 /path/to/your_script.sh 替换为实际的脚本路径。

  3. 如果希望每天凌晨0点运行该脚本,可以使用:

    0 0 * * * /path/to/your_script.sh > /dev/null 2>&1
    

注意事项

通过上述步骤和示例脚本,可以轻松实现 last 命令的自动化记录功能。这样不仅可以方便地查看系统的登录历史,还能通过日志审计提高安全性。