iT邦幫忙

2026 iThome 鐵人賽

DAY 11
0
IT Operation

從零開始的 Linux 維運與 Bash 自動化實戰 30 天系列 第 11

Day 11:日誌分析與問題排查 (Log Analysis)

  • 分享至 

  • xImage
  •  

伺服器就像飛機一樣,裡面有一個「黑盒子」(/var/log)。當網站出現 500 錯誤,或是有人嘗試暴力破解你的 SSH 密碼時,第一時間絕對不是盲目猜測,而是打開 Log 尋找蛛絲馬跡。

必備日誌排查工具與路徑

  1. 關鍵日誌檔案路徑
日誌檔路徑 記錄內容 適用情境
/var/log/syslog 系統綜合日誌 系統服務出錯、硬體或核心訊息排查
/var/log/auth.log 身份驗證日誌 查看 SSH 登入成功/失敗紀錄、sudo 指令使用紀錄
/var/log/nginx/access.log Nginx 存取日誌 紀錄哪些 IP 在什麼時間存取了什麼網頁
/var/log/nginx/error.log Nginx 錯誤日誌 網頁開不起來、500 Internal Server Error 排查
  1. 日誌閱讀必備指令
  • tail(看最新紀錄):日誌檔案通常非常大,我們只想看最後幾行。
  • tail -f(即時監控):最常用的指令。它會保持開啟,當有新日誌寫入時會即時印在畫面上。
  • grep(關鍵字過濾):從成千上萬行日誌中精準找出關鍵字(例如 Failed 或 404)。

實作
https://ithelp.ithome.com.tw/upload/images/20260912/20183847AFLOJHaALV.png

  • 搜尋身份驗證與授權紀錄
    執行指令:sudo grep "accepted" /var/log/auth.log
    操作目的:從系統安全日誌中篩選出成功驗證(如 SSH 登入或 sudo 提權)的紀錄。
    解析:系統會詳細紀錄發起動作的帳號、時間點以及所使用的終端機編號(TTY)。

  • 即時監控網站造訪日誌
    執行指令:tail -f /var/log/nginx/access.log
    操作目的:即時捕捉來訪者的 IP、請求時間、造訪路徑與 HTTP 回應狀態碼(如 200 正常存取、304 調用快取、404 找不到頁面)。
    結束方式:按下 Ctrl + C 即可中斷即時監控並返回終端機。

  • 查看網站伺服器錯誤紀錄
    執行指令:sudo tail -n 10 /var/log/nginx/error.log
    操作目的:只讀取錯誤日誌檔案的最後 10 行,快速排查網站是否有發生 500 錯誤或服務異常。
    解析:若僅顯示 [notice] 級別訊息且無 [error],代表網頁伺服器目前狀態正常無虞。


上一篇
Day 10:資源監控與服務排查 (Monitoring & Diagnostics)
下一篇
Day 12: UFW 防火牆設定與埠號控管
系列文
從零開始的 Linux 維運與 Bash 自動化實戰 30 天18
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言