溫馨提示×

CentOS readdir如何實現日志記錄

小樊
50
2025-03-27 20:28:47
欄目: 智能運維

在 CentOS 系統中,要實現目錄(例如 /var/log)的 readdir 操作的日志記錄,可以通過以下幾種方法:

方法一:使用 inotify

inotify 是 Linux 內核提供的一種文件系統事件監控機制。你可以使用 inotifywait 工具來監控目錄的變化,并將變化記錄到日志文件中。

  1. 安裝 inotify-tools

    sudo yum install inotify-tools
    
  2. 創建一個腳本來監控目錄并記錄日志

    創建一個腳本文件,例如 monitor_directory.sh

    #!/bin/bash
    
    LOG_FILE="/var/log/directory_monitor.log"
    MONITOR_DIR="/var/log"
    
    inotifywait -m -r -e create,delete,modify --format '%w%f %e' "$MONITOR_DIR" |
    while read FILE EVENT; do
        echo "$(date '+%Y-%m-%d %H:%M:%S') - $FILE - $EVENT" >> "$LOG_FILE"
    done
    
  3. 賦予腳本執行權限并運行

    chmod +x monitor_directory.sh
    ./monitor_directory.sh
    

方法二:使用 auditd

auditd 是 Linux 審計守護進程,可以用來監控和記錄系統調用和文件系統事件。

  1. 安裝 auditd

    sudo yum install audit
    
  2. 配置 auditd 規則

    編輯 /etc/audit/audit.rules 文件,添加以下規則來監控 /var/log 目錄:

    -a exit,always -F path=/var/log -F perm=wa -k directory_monitor
    

    這條規則的意思是:監控 /var/log 目錄下的所有寫操作(perm=wa),并在每次操作完成后記錄日志(-a exit,always),使用 directory_monitor 作為關鍵字。

  3. 重啟 auditd 服務

    sudo systemctl restart auditd
    
  4. 查看審計日志

    審計日志通常位于 /var/log/audit/audit.log。你可以使用 ausearchaureport 工具來查詢和分析日志。

    sudo ausearch -k directory_monitor
    sudo aureport -k directory_monitor
    

方法三:使用 rsyslog 和自定義腳本

你也可以結合 rsyslog 和自定義腳本來實現日志記錄。

  1. 編輯 rsyslog 配置文件

    編輯 /etc/rsyslog.conf/etc/rsyslog.d/50-default.conf 文件,添加以下內容:

    if $programname == 'custom_script' then /var/log/custom_script.log
    & stop
    
  2. 創建自定義腳本

    創建一個腳本文件,例如 custom_script.sh

    #!/bin/bash
    
    LOG_FILE="/var/log/custom_script.log"
    MONITOR_DIR="/var/log"
    
    inotifywait -m -r -e create,delete,modify --format '%w%f %e' "$MONITOR_DIR" |
    while read FILE EVENT; do
        logger -t custom_script "$FILE - $EVENT"
    done
    
  3. 賦予腳本執行權限并運行

    chmod +x custom_script.sh
    ./custom_script.sh
    

通過以上方法,你可以在 CentOS 系統中實現對目錄 readdir 操作的日志記錄。選擇適合你需求的方法進行配置即可。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女